하이퍼레저 패브릭 네트워크
하이퍼레저의 구성 요소를 바탕으로 네트워크 구축하는 과정을 단계별로 알아보자!
위의 그림은 3개의 조직이 속해 있는 네트워크이다. 여기서 Org1과 Org2만 공유할 수 있는 원장을 만들기 위한 채널을 생성하기 위한 과정을 살펴본다.
Org1과 Org2가 서로 협의하여 오더링 서비스 노드를 구축한다.
이후 orderer는 채널에 참여하는 조직 및 노드에 대한 정보와 블록 생성 방법 및 블록 당 트랜잭션 허용 정보등을 바탕으로 제네시스 블록을 생성하여 채널을 구축한다.
채널이 구축되고 나면 각 조직에서는 Leader peer를 채널에 참여시키고, 채널 1에서 공유할 수 있는 원장을 보유하게 된다.
채널 1에서 공유하는 원장에 접근하기 위해 체인코드를 설치(execution을 수항하는 endorsing peer에 설치)하고 사용자들도 참여할 수 있도록 dapp도 함께 설치한다.
- DAPP(Decentralized Application) : 탈중앙화된 어플리케이션으로, 이더리움이나 퀀텀 등의 플랫폼 위에서 동작하는 어플리케이션을 말한다.
더 나아가 목적에 맞게 채널들을 여러 조직과 이어 나갈 수 있다.
하이퍼레저 패브릭 동작 흐름
- 클라이언트 어플리케이션이 피어에 연결한다.
- 연결이 되면 트랜잭션을 생성해서 피어의 endorser에 보낸다.
- 피어는 받은 트랜잭션에 대해 체인코드를 확인한다.
- 체인코드는 원장에 대한 쿼리 거래의 경우 즉시 결과를 반환한ㄷ.
- update와 같은 원장에 대한 변경이 있는 트랜잭션일 경우 피어는 받은 트랜잭션에 대해 응답을 한다.
- 응답을 받은 클라이언트는 해당 거래 제안을 orderer에 보낸다.
- 오더러는 합의 알고리즘에 의거해 블록을 생성하고 이를 피어로 보낸다.
- 피어의 앵커(anchor)는 오더러로 부터 트랜잭션 블록을 받고 committer가 트랜잭션을 검증하여 확정한다. 또한 이를 이용해 피어는 원장을 업데이트 한다. 이후 클라이언트에게 업데이트 이벤트를 보낸다.
- 클라이언트는 업데이트 이벤트를 받게되고 트랜잭션 과정이 끝난다.
'블록체인 > Hyperledger' 카테고리의 다른 글
하이퍼레저 패브릭(Hyperledger Fabric) Ⅰ (0) | 2021.03.15 |
---|---|
하이퍼레저(Hyperledger), 이 친구에 대해서 알아보자 (0) | 2021.03.15 |