Hyperledger Composer의 주요 개념
Hyperledger Composer는 모델링 언어와 API 집합을 포함하는 프로그래밍 모델로, 참가자가 자산을 교환하는 트랜잭션을 보낼 수있게 해주는 비즈니스 네트워크와 응용 프로그램을 빠르게 정의하고 배포합니다.
Hyperledger Composer의 구성 요소(Hyperledger Composer Components)
Hyperledger Composer Playground라는 브라우저 기반 UI를 사용하여 Hyperledger Composer를 경험할 수 있습니다. 놀이터는 호스팅 버전 (설치 필요 없음) 또는 로컬 설치 (오프라인 샘플 비즈니스 네트워크 편집 및 테스트에 적합)로 사용할 수 있습니다.
Hyperledger Composer의 전체 응용 프로그램 개발 기능을 사용하려는 개발자는 개발자 도구를 설치해야합니다.
Hyperledger Composer의 주요 개념(Key Concepts in Hyperledger Composer)
블록 체인 상태 저장소(Blockchain State Storage)
비즈니스 네트워크를 통해 제출된 모든 트랜잭션은 블록 체인 원장에 저장되며 현재 자산 및 참가자 상태는 블록 체인 상태 데이터베이스에 저장됩니다. 블록 체인은 원장과 상태 데이터베이스를 피어 집합에 분산시키고 원장 및 상태 데이터베이스에 대한 업데이트가 합의 알고리즘을 사용하여 모든 피어간에 일관성있게 유지되도록 합니다.
연결 프로필(Connection Profiles)
Hyperledger Composer는 Connection Profile을 사용하여 런타임에 연결합니다. Connection Profile은 사용자의 홈 디렉토리에 있거나 환경 변수에서 올 수 있는 JSON 문서이며 Composer API 또는 명령 행 도구를 사용할 때 이름으로 참조됩니다. 연결 프로파일을 사용하면 코드와 스크립트를 하나의 런타임 인스턴스에서 다른 런타임 인스턴스로 쉽게 이식 할 수 있습니다. 참조 섹션에서 연결 프로파일에 대한 자세한 내용을 볼 수 있습니다.
자산(Assets)
자산은 유형 또는 무형의 재화, 서비스 또는 자산이며 레지스트리에 저장됩니다. 자산은 비즈니스 네트워크의 거의 모든 것을 나타낼 수 있습니다. 예를 들어 판매 집, 판매 목록, 해당 주택에 대한 토지 레지스트리 인증서 및 그 집에 대한 보험 서류는 모두 하나 이상의 비즈니스 네트워크에있는 자산 일 수 있습니다.
자산에는 고유한 식별자가 있어야하지만 그 이외에 정의한 속성을 포함 할 수 있습니다. 자산은 다른 자산이나 참가자와 관련될 수 있습니다 .
참가자(Participants)
참가자는 비즈니스 네트워크의 구성원입니다. 그들은 자산을 소유하고 거래를 제출할 수 있습니다. 참여자 유형은 모델화되며 자산과 마찬가지로 식별자가 있어야하며 필요에 따라 다른 속성을 가질 수 있습니다.
신분증 및 신분증(Identities and ID cards)
비즈니스 네트워크 내에서 참가자는 신원과 연관 될 수 있습니다. ID 카드는 ID, 연결 프로필 및 메타 데이터의 조합입니다. ID 카드는 비즈니스 네트워크에 연결하는 프로세스를 단순화하고 비즈니스 네트워크 외부의 ID 개념을 특정 비즈니스 네트워크 및 연결 프로필과 연관된 ID의 '지갑'으로 확장합니다.
거래(Transactions)
거래는 참가자가 자산과 상호 작용하는 메커니즘입니다. 이는 참가자가 경매에 있는 자산에 입찰을하거나 경매인이 경매를 종결로 표시하여 자산의 소유권을 최고 입찰자에게 자동으로 이전하는 것처럼 간단 할 수 있습니다.
검색어(Queries)
쿼리는 세계 상태의 블록 체인에 대한 데이터를 반환하는 데 사용됩니다. 쿼리는 비즈니스 네트워크 내에서 정의되며 간단한 사용자 정의를위한 변수 매개 변수를 포함 할 수 있습니다. 쿼리를 사용하여 블록 체인 네트워크에서 데이터를 쉽게 추출 할 수 있습니다. 쿼리는 Hyperledger Composer API를 사용하여 전송됩니다.
이벤트(Events)
이벤트는 자산 또는 참여자와 동일한 방식으로 비즈니스 네트워크 정의에 정의됩니다. 이벤트가 정의되면 거래 프로세서 기능에 의해 이벤트를 발생시켜 외부 시스템에 중요한 일이 장부에 발생했음을 알릴 수 있습니다. 애플리케이션은 composer-clientAPI를 통해 방출된 이벤트에 가입 할 수 있습니다 .
액세스 제어(Access Control)
비즈니스 네트워크에는 일련의 액세스 제어 규칙이 포함될 수 있습니다. 액세스 제어 규칙을 사용하면 참가자가 비즈니스 네트워크의 자산 및 어떤 조건에 액세스 할 수 있는지를 세밀하게 제어 할 수 있습니다. 액세스 제어 언어는 "차량 소유자만 차량 소유권을 이전 할 수 있습니다"와 같이 정교한 조건을 선언적으로 파악하기에 충분할만큼 풍부합니다. 트랜잭션 프로세서 함수 논리에서 액세스 제어를 외부화하면 검사, 디버그, 개발 및 유지 관리가 더 쉬워집니다.
히스토리안 등록(Historian registry)
히스토리안은 참가자 및 제출 한 신원을 포함하여 성공적인 거래를 기록하는 전문화 된 레지스트리입니다. 히스토리안은 HistorianRecord 트랜잭션을 자산으로 저장하며 Hyperledger Composer 시스템 네임 스페이스에 정의되어 있습니다.