* 본 포스팅은 하이퍼레저 패브릭 docs를 번역한 내용으로, 번역 과정에서 잘못된 부분이 있을 수 있습니다.
상세 내용은 하단 링크를 참조 부탁드리며, 잘못된 내용에 대한 피드백은 언제든 환영합니다 : )
https://hyperledger.github.io/composer/latest/introduction/key-concepts
Hyperledger Composer는 모델링 언어와 API 집합을 포함하는 프로그래밍 모델로, 참가자가 자산을 교환하는 트랜잭션을 보낼 수 있도록 비즈니스 네트워크 및 애플리케이션을 빠르게 정의하고 배포합니다.
Hyperledger Composer Playground라는 브라우저 기반 UI를 사용하여 Hyperledger Composer를 사용해볼 수 있습니다. Playground는 hosted version (설치 불필요) 또는 local install (비즈니스 네트워크 편집 및 테스트에 적합) 버전으로 사용할 수 있습니다.
Hyperledger composer의 전체 개발 애플리케이션 기능을 사용하고자 하는 개발자는 개발자 도구를 설치해야 합니다.
[Blockchain State Storage]
비즈니스 네트워크를 통해 제출된 모든 트랜잭션은 블록체인 원장에 저장되며, 현재 자산 및 참가자의 상태는 블록체인 상태 데이터베이스에 저장됩니다. 블록체인은 원장과 상태 데이터베이스를 피어 집합에 분산시키고, 합의 알고리즘을 사용하여 모든 피어 간 원장 및 상태 데이터베이스에 대한 업데이트가 일관성있게 유지되도록 합니다.
[Connection Profiles]
Hyperledger Composer는 연결 프로파일을 사용하여 연결할 시스템을 정의합니다. 연결 프로파일은 비즈니스 네트워크 카드의 일부인 JSON 문서입니다. 이러한 프로파일은 일반적으로 해당 시스템을 만든 사람에 의해 작성되며, 해당 시스템에 연결하기위해 비즈니스 네트워크 카드를 생성하는데 사용되어야 합니다.
[Assets]
자산은 유형 또는 무형의 상품, 서비스, 보유자산이며 레지스트리에 저장됩니다. 자산은 비즈니스 네트워크의 거의 모든 것을 나타낼 수 있습니다. 예를 들어, 판매를 위한 주택, 판매 목록, 해당 주택의 토지에 대한 레지스트리 인증서, 보험 서류는 모두 하나 이상의 비즈니스 네트워크 자산일 수 있습니다.
자산에는 고유한 식별자가 있어야 하지만 그 외에는 정의한 모든 속성을 포함할 수 있습니다. 자산은 다른 자산 혹은 참가자와 연결되어 있을 수 있습니다.
[Participants]
참가자는 비즈니스 네트워크의 구성원입니다. 그들은 자산을 소유하고 거래를 제출할 수 있습니다. 참가자 유형은 모델화되며 자산과 마찬가지로 식별자가 있어야 하며, 필요에 따라 다른 속성을 가질 수 있습니다. 참가자는 하나 이상의 ID에 매핑될 수 있습니다.
[Identities]
Identity는 디지털 인증서 및 개인키입니다. Id는 비즈니스 네트워크에서 거래하는데 사용되며 비즈니스 네트워크의 참가자에게 매핑되어야 합니다. 단일 Id는 비즈니스 네트워크 카드에 저장되며 해당 Id가 참가자에게 매핑된 경우 해당 비즈니스 네트워크 카드의 사용자는 참가자로서 비즈니스 네트워크에서 거래할 수 있습니다.
[Business Network Cards]
비즈니스 네트워크 카드는 신원확인, 연결 프로파일, 메타데이터 (연결할 비즈니스 네트워크의 이름을 포함하기도 함)의 조합입니다. 비즈니스 네트워크 카드는 비즈니스 네트워크에 연결하는 프로세스를 단순화하고 비즈니스 네트워크 외부의 Id 개념을 특정 비즈니스 네트워크 및 연결 프로파일과 연관된 id의 '지갑'으로 확장합니다.
[Transactions]
트랜잭션은 참가자가 자산과 상호작용하는 매커니즘입니다. 이것은 참가자가 경매에 있는 자산에 입찰을 하거나 경매인이 경매를 종결로 표시하고 자산의 소유권을 최고 입찰자에게 자동으로 이전하는 것처럼 간단히 이뤄질 수 있습니다.
[Queries]
쿼리는 블록체인 world-state에 대한 데이터를 반환하는 데 사용됩니다. 쿼리는 비즈니스 네트워크에서 정의되며 간단히 사용자가 정의할 수 있는 파라미터 변수를 포함하 ㄹ수도 있습니다. 쿼리를 사용하면 블록체인 네트워크에서 데이터를 쉽게 추출할 수 있습니다. 쿼리는 Hyperledger Composer API를 사용하여 전송됩니다.
[Events]
이벤트는 자산 또는 참가자와 동일한 방식으로 비즈니스 네트워크 정의에 정의됩니다. 이벤트가 정의되면 트랜잭션 처리 함수에 의해 이벤트가 발생되어 외부 시스템에게 원장에 중요한 일이 발생했음을 알립니다. 애플리케이션은 발생한 이벤트를 "composer-client" API를 통해 확인할 수 있습니다.
[Access Control]
비즈니스 네트워크에는 일련의 엑세스 제어 규칙이 포함될 수 있습니다. 엑세스 제어 규칙을 사용하면 참가자가 비즈니스 네트워크의 자산 및 어떤 조건에 액세스할 수 있는지에 대한 세밀한 제어가 가능합니다. 엑세스 제어 언어는 예를 들어 "차량 소유주만 차량의 소유권을 이전할 수 있습니다."와 같이 정교한 조건을 명시적으로 파악하기에 충분할 정도로 풍부합니다. 트랜잭션 처리 함수 로직에서 엑세스 제어를 외부화하면 검사, 디버그, 개발 및 유지관리가 더 쉬워집니다.
[Historian registry]
Historian은 제출된 참가자 및 신원을 포함하여 성공적인 거래를 기록하는 특수한 레지스트리입니다. Historian은 Hyperledger Composer 시스템 네임 스페이스에 정의된 HistorianRecord자산으로 트랜잭션을 저장합니다.
'● STUDY ● > Hyperledger' 카테고리의 다른 글
Composer Playground Tutorial (0) | 2019.07.11 |
---|---|
Composer Installing (0) | 2019.07.10 |
Composer Introduction (0) | 2019.07.08 |
Fabric New Approach (0) | 2019.07.07 |
Fabric Smart Contracts (0) | 2019.07.06 |