개발/HyperLedger

    [Hyperledger] express와 fabric 연결 (gateway구축)

    Hyperledger fabric 에서 express에 허가를 해줘 구축된 fabric-chaincode에 접근할 수 있도록 목표를 세웠다. Hyperledger 예제를 통해 체인코드 배포, 테스트 네트워크 구축 등을 해봤지만 실질적으로 fabric 네트워크를 어떻게 접근 해야될지 막막했다. 그래서 일단 test-network의 코드를 통해 gateway를 구축하고 연결해 봤다. 1. 필요한 코드들 분류 먼저 fabric-samples 폴더를 설치해야한다. GitHub - hyperledger/fabric-samples: Samples for Hyperledger Fabric Samples for Hyperledger Fabric. Contribute to hyperledger/fabric-samples..

    [HyperLedger] 네트워크, MSP, Peer

    1. 네트워크 블록체인 네트워크는 애플리케이션에 원장, 스마트컨트랙트 서비스를 제공 채널이 구성될때 정책을 만든다. 정책에 따라 권한이 결정되는 채널을 형성한다. 인증기관(CA)는 X.509 인증서 제공 X.509 : 공개키 - 개인키 CC1 형성 - C1 생성 - 피어(원장), 오더러(원장) - 피어 SC 설치 - 어플리케이션과 소통 2. MSP 인증 기관에서 생성된 ID를 역할로 바꾼다. 권한, 역할을 식별하기 위해 사용 실제로 아무것도 제공하지 않음 3. Peer 채널의 원장을 가지고 있다. 권한이 있다면 스마트 컨트랙트를 설치하여 트랜잭션을 제안, 거래할 수 있다. 피어 트랜잭션 제안 - 게이트웨이 다른 피어에게 뿌려서 확인 - 다른 피어에서 스마트 컨트랙트 실행값 받음 - 게이트웨이에서 오더러로..

    [HyperLedger] The odering service

    1. Orderer 기본 비트나 이더리움은 아무 node나 transaction의 순서를 정하고, block으로 묶는다. 비트나 이더리움은 높은 확률로 ledger의 일관성을 보장하는 "확률론적 알고리즘"을 채택하기 때문이다. ledger가 fork가 되면 참여자들이 서로다른 trnasaction 순서를 가질수도 있다. fabric은 orderer가 transaction의 순서를 관리하는것이 기존 비트, 이더와의 차이점이다. 이는 orderer가 결정하는 결정론적 알고리즘이다. 그렇기 때문에 peer가 검증한 모든 블록은 최종적이고 정확함을 보장한다. => fork되지 않는다. 이외에도 순서화와 체인코드의 실행을 orderer와 peer로 분산시켰기 때문에 성능과 확장성 측면에서 이점을 얻을수 있다. 피..

    [HyperLedger] Fabric 네트워크의 구성 방식

    1. 블록체인 네트워크란? 블록체인 네트워크는 애플리케이션에 원장(Ledger) 및 스마트 계약(Smart Contract) 서비스를 제공하는 기술 인프라이다. 주로 스마트 계약은 원장 사본에 불변하게 기록되는 트랜잭션을 생성하는 데 사용된다. 대부분의 경우 여러 조직이 체인코드에서 트랜잭션이 호출되고 채널이 원래 구성될 때 동의한 일련의 정책에 따라 권한이 결정되는 채널을 형성한다. 정책은 조직의 동의에 따라 변경될 수 있다. 네트워크의 예시는 위와 같다. 2. 네트워크 생성 네트워크 또는 채널 생성의 첫 번째 단계는 구성에 동의하고 정의하는 것이다. "구성 블록"으로 알려진 블록에 채널 구성(channel configuration)은 조직 R1, R2 및 R0에서 동의했다는 것이 포함된다. 구성 블록..