본문 바로가기

IT/블록체인 Blockchain

[Corda] R3cev - 분산원장 플랫폼 Corda 공개

반응형

얼마 전 R3cev에서 분산원장기술 (Distributed Ledger Technology) 플랫폼 "Corda" (코다) 를 오픈소스로 공개 했습니다.

기존의 블록체인기술 기반 플랫폼 (대표적으로 비트코인, 이더리움) 들과는 상당히 다른 개념과 철학을 가지고 설계했다고 하는데요, 본 포스팅을 시작으로 몇 개의 글에서 코다와 그 기반이 되는 기술에 대해서 정리해 보도록 하겠습니다. 

 


블록체인 BlockChain

 

블록체인은 블록(Block) 과 체인 (Chain)이 합쳐진 단어입니다.

비트코인에서 블록은 트랜잭션 (코인의 거래내역) 과 헤더로 이루어져 있고, (마이닝은 바로 이 블록을 쓰는 작업이죠) 헤더에는 PoW에 사용되는 nonce와 이전 블록의 해쉬값이 포함되어 있습니다.

이전블록의 해쉬값이 다음블록에 포함되어 있기 때문에, 블록간의 연결구조가 생성되고 하나의 블록의 작은 변화도 이후 블록의 모든 값을 변경하게 됩니다.

따라서 블록체인은 Tamper-proof 즉 임의로 수정하는 것이 (실질적으로)불가능한 성질을 가지게 됩니다.

분산원장기술 Distributed Ledger Technology

 

비트코인의 블록체인은 파일 형식으로 비트코인 네트워크에 참여하는 모든 클라이언트에 저장되고, 모든 클라이언트는 블록체인에서 같은 정보를 보게 됩니다.

이렇게 참여자가 원장을 공유하는 기술을 분산원장이라고 부르지만, 분산원장을 구현하기 위해서 반드시 블록체인을 사용해야 하는것은 아닙니다.

 

그리고 분산원장은 크게 Open형태 (비트코인, 이더리움처럼 누구나 참여할 수 있는 형식) 과 Closed 형태 (특정한 entity만 참여할 수 있는 형식)으로 나눌 수 있습니다.

코다는 Closed형식의 분산원장기술 플랫폼입니다.

Corda 개요 

 

코다는 미국의 스타트업 R3cev 에서 개발하고 Open Source로 공개한 분산원장 플랫폼입니다.

홈페이지 : https://www.corda.net/

포럼 : http://discourse.corda.net/

 

코다의 핵심 설계 사상은 여름에 미리 공개된 백서에서 설명하고 있습니다.

http://r3cev.com/s/corda-introductory-whitepaper-final.pdf

가능하면 한 번 읽어보시기 바랍니다.

 

코다는 누구나 참여할 수 있는 블록체인 네트워크를 표방하는 비트코인이나 이더리움과 다르게, 제도권에서 운영되는 (따라서 감독기관에 의해 규제되는) 금융기관들 간의 거래를 당사자간에 투명하게 공유할 수 있는 플랫폼입니다.

개발 목적이 다르기 때문에 개발 방향이나 구성 요소도 서로 다른데요, 조금 더 상세하게 설명해 보면 아래와 같습니다.

  • 비트코인 : 누구나 참여할 수 있는 암호화 화폐의 제공. 본인이 소유한 화폐를 사용하는 것은 누구도 막을 수 없고 한번 일어난 거래는 절대로 되돌릴 수 없다.
  • 이더리움 : 어디에서나 실행할 수 있는 World-Computer의 제공. 암호화 화폐를 이용해서 World-computer에서 참여자간의 계약을 실행하는 코드 (Smart contract code) 를 실행할 수 있다.
  •  코다 : 제도권 내의 금융기관간의 거래내용을 계약 당사자들간에 서로 투명하게 공유하고 관련된 Transaction을 자동화 할 수 있는 코드를 실행할 수 있는 기반을 제공

 기존의 블록체인 기반 플랫폼과 차별화되는 코다만의 특징을 좀 더 알아보면 다음과 같습니다.

  • Public에게 공개되는 블록체인 원장은 존재하지 않으며 계약 당사자들만 거래내역을 볼 수 있음
  • 컨센서스를 위해 PoW를 필요로 하지 않는다. 즉 마이닝이 존재하지 않으며 Notary (공증인) node가 거래의 정합성 및 완결성을 확인하는 역할을 수행함.
  • JVM (Java Virtual Machine) 에서 실행되는 바이트코드로 작성되어 있음. JVM Bytecode생성을 지원하는 어떤 언어로도 Smart Contract를 작성할 수 있으며, Corda에서 권장하는 언어는 Kotlin 임.

 

더 상세한 내용은 코다 기술 백서와 Documentation을 참조하시기 바랍니다.

https://docs.corda.net/_static/corda-technical-whitepaper.pdf

https://docs.corda.net/index.html

 

 

다음 번 포스팅에서는 실제로 코다를 PC에서 테스트 해 보도록 하겠습니다.

 

반응형