코딩공부/블록체인 & 하이퍼레저 패브릭

5. 하이퍼레저 패브릭 구성요소(2)

에반셀린 2023. 8. 14. 14:49

https://product.kyobobook.co.kr/detail/S000001916918

 

하이퍼레저 패브릭으로 배우는 블록체인 | 윤대근 - 교보문고

하이퍼레저 패브릭으로 배우는 블록체인 | 프라이빗 블록체인 플랫폼 전문가를 위한 첫걸음! 국내 최초의 하이퍼레저 패브릭 입문서!국내외 많은 기업들이 블록체인 서비스 개발에 하이퍼레저

product.kyobobook.co.kr


1. DApp(분산 애플리케이션)

블록체인 참여자는 체인코드를 통해서 분산원장에 데이터를 기록하거나 읽어올 수 있다.

이러한 체인코드는 그 자체로도 사용될 수 있지만, 대부분의 경우 비즈니스 모델에 맞는 분산 애플리케이션(DApp)과 함께 개발되어 사용된다.

 

모바일 환경에서 사용되는 애플리케이션은 모바일 애플리케이션이고, 기존 인터넷에서 사용되는 애플리케이션을 인터넷 애플리케이션이라고 부르는 것처럼, 분산 애플리케이션은 말 그대로 사용자가 분산 환경에서 비즈니스 거래등을 편리하게 해주기 위해 사용되는 애플리케이션을 통칭하는 단어이다.

 

하이퍼레저 패브릭에서는 분산 애플리케이션 개발을 위해 다양한 종류의 SDK(Software Development Kit)를 제공하고 있고, 개발자는 SDK를 통해서 트랜잭션을 생성하고 체인코드 함수를 불러오는 등의 여러 기능을 좀 더 쉽게 개발할 수 있다.

2. Endorsement Policy(보증 정책)

보증 정책은 트랜잭션을 생성하는 클라이언트(분산 애플리케이션)와 Peer간에 작용한다.

트랜잭션이 블록에 포함되기 위해서는 보증 정책에 지정된 Peer의 허가를 받아야만 하는 데, 만약 트랜잭션이 보증 정책을 충족시키지 못한다면 Peer가 블록을 검증하는 과정에서 해당 트랜잭션을 블록에 포함하지 않는다.

3. Channel(채널)

Peer간의 통신은 채널을 통해서만 이루어진다. 모든 조직이 채널을 통해 정보를 공유할 수도 있고 또는 비즈니스 이해관계가 맞는 일부 조직들 간에만 추가로 채널을 생성하여 정보를 공유할 수도 있다. 그리고 각 채널마다 하나씩 분산원장이 존재하게 되는데, 이더리움등 모든 블록체인 구성원이 분산원장에 접근할 수 있는 퍼블릭 블록체인과는 달리 하이퍼레저 패브릭에서는 채널에 참여한 조직의 구성원만이 해당 채널의 분산원장에 접근할 수 있다. 즉, 기존의 퍼블릭 블록체인에서 제공할 수 없었던 데이터의 기밀성을 채널을 통해 제공할 수 있는 것이다.

 

채널 생성은 CSCC(Configuration System Chaincode)를 호출하여 생성할 수 있다.

채널 생성 시 해당 채널에서 사용될 분산원장의 genesis block이 생성된다. genesis block에는 채널의 구성원, 채널 정책, 각 Peer의 역할 등과 같은 설정이 포함되어 있다. 채널 정책에 의해 지정된 Peer와 사용자는 해당 채널의 분산원장을 이용해 데이터를 공유할 수 있다.