[HyperLedger] 네트워크, MSP, Peer
·
개발/HyperLedger
1. 네트워크 블록체인 네트워크는 애플리케이션에 원장, 스마트컨트랙트 서비스를 제공 채널이 구성될때 정책을 만든다. 정책에 따라 권한이 결정되는 채널을 형성한다. 인증기관(CA)는 X.509 인증서 제공 X.509 : 공개키 - 개인키 CC1 형성 - C1 생성 - 피어(원장), 오더러(원장) - 피어 SC 설치 - 어플리케이션과 소통 2. MSP 인증 기관에서 생성된 ID를 역할로 바꾼다. 권한, 역할을 식별하기 위해 사용 실제로 아무것도 제공하지 않음 3. Peer 채널의 원장을 가지고 있다. 권한이 있다면 스마트 컨트랙트를 설치하여 트랜잭션을 제안, 거래할 수 있다. 피어 트랜잭션 제안 - 게이트웨이 다른 피어에게 뿌려서 확인 - 다른 피어에서 스마트 컨트랙트 실행값 받음 - 게이트웨이에서 오더러로..
[BlockChain] 블록체인의 트릴레마
·
개발/BlockChain
1. 블록체인의 트릴레마란? 트릴레마란 세가지 목표 가운데 두가지 목표는 동시에 해결할 수 있지만 세가지 목표를 한꺼번에 해결할 수 없는 문제를 뜻한다. 블록체인 트릴레마라고 했을때는 확장성, 탈중앙화, 보안성이라는 블록체인의 세 가지 근본 가치를 동시에 달성하기 매우 어려움을 뜻한다. 확장성이란 블록체인이 얼마나 많은 트랜잭션을 얼마나 빠르게 처리하는지, 탈중앙화는 특정 집단이 통제하는것이 아닌 서로 다른 개별 참여자들이 합의를 통해 네트워크를 운영 및 관리할수 있는지, 보안성은 네트워크에 대한 공격으로부터 블록체인에 기록된 정보 및 자산을 안전하게 지킬수 있는지이다. 2. 각 요소의 장단점 (1) 확장성 장점 단점 네트워크가 많은 양의 트랜잭션을 지원할 수 있도록 함 보안을 희생해야 함 보안이 주요 ..
[HyperLedger] The odering service
·
개발/HyperLedger
1. Orderer 기본 비트나 이더리움은 아무 node나 transaction의 순서를 정하고, block으로 묶는다. 비트나 이더리움은 높은 확률로 ledger의 일관성을 보장하는 "확률론적 알고리즘"을 채택하기 때문이다. ledger가 fork가 되면 참여자들이 서로다른 trnasaction 순서를 가질수도 있다. fabric은 orderer가 transaction의 순서를 관리하는것이 기존 비트, 이더와의 차이점이다. 이는 orderer가 결정하는 결정론적 알고리즘이다. 그렇기 때문에 peer가 검증한 모든 블록은 최종적이고 정확함을 보장한다. => fork되지 않는다. 이외에도 순서화와 체인코드의 실행을 orderer와 peer로 분산시켰기 때문에 성능과 확장성 측면에서 이점을 얻을수 있다. 피..
[HyperLedger] Fabric 네트워크의 구성 방식
·
개발/HyperLedger
1. 블록체인 네트워크란? 블록체인 네트워크는 애플리케이션에 원장(Ledger) 및 스마트 계약(Smart Contract) 서비스를 제공하는 기술 인프라이다. 주로 스마트 계약은 원장 사본에 불변하게 기록되는 트랜잭션을 생성하는 데 사용된다. 대부분의 경우 여러 조직이 체인코드에서 트랜잭션이 호출되고 채널이 원래 구성될 때 동의한 일련의 정책에 따라 권한이 결정되는 채널을 형성한다. 정책은 조직의 동의에 따라 변경될 수 있다. 네트워크의 예시는 위와 같다. 2. 네트워크 생성 네트워크 또는 채널 생성의 첫 번째 단계는 구성에 동의하고 정의하는 것이다. "구성 블록"으로 알려진 블록에 채널 구성(channel configuration)은 조직 R1, R2 및 R0에서 동의했다는 것이 포함된다. 구성 블록..