원서 : https://hyperledger-fabric.readthedocs.io/en/release-1.4/channels.html

  • Hyperledger Fabric의 channel은 network에 몇몇 member간 통신을하는 private한 subnet이다.
  • channel에는 "organization 및 member", "각 member당 anchor-peer", "공유 ledger", "chaincode", "orderer" 등이 정의 됩니다.
  • network의 각 transaction은 channel에서 실행이 되고, 각자 처리기 될수있도록 인증 및 인가 됩니다.
  • 각각에 peer는 MSP기반으로 주어진 identity가 있습니다.
  • 새로운 channel을 만들기 위해선, SDK으로 system-chaincode를 호출하면 됩니다.
  • 이러한 호출을 통해서, 한 channel의 ledger를 위한 genesis-block이 생성되어 집니다.
  • 즉, 이 genesis-block에 channel의 정책 및 member 및 anchor-peer 등의 정보가 기록 됩니다.
  • 새로운 member가 추가되면, genesis-block을 재설정 하여서~ 모두에게 다시 공유합니다.
  • channel의 member들에 leading-peer를 선출하는 것은, orderer와 통신할 대표 peer를 정하는것 입니다.
  • 즉, consensus으로 transaction을 순서화하고 전달되는 과정에서~ leading-peer가 gossip을 통해 channel 전체적으로 block을 분배하는것 입니다.
  • anchor-peer는 복수의 channel에 속할수있고, 복수의 ledger를 관리할수 있지만~ 그렇다고 특정 ledger에 데이터를 다른 channel으로 할수는 없습니다.
  • channel에 의해 분리된 ledger는 "configuration-chaincode" 및 "MSP identity" 및 "gossip" 으로 정의되고 구현됩니다.
  • channel에 데이터를 공유하는 일은 검증된 MSP identity의 peer만 할수있습니다.
  • 어렇게 peer와 ledger를 channel별로 고립화 시킴으로서, 같은 blockchain network상에서도 member별 기밀 및 개인정보가 보호되고~ 서로 공존할수 있는것 입니다.

-끝-

'hyperledger > fabDoc.Arch-Ref' 카테고리의 다른 글

10) Read-Write set semantics  (0) 2019.08.18
9) Private Data  (0) 2019.08.18
8) Peer channel-based event services  (0) 2019.08.18
5) Service Discovery  (0) 2019.08.18
1) Architecture Origins  (0) 2019.05.15

+ Recent posts