티스토리 뷰
[Hyperledger Fabric v1.0] 4. OPREATION GUIDE(운영가이드): Endorsement policies(승인 정책)
miiingo 2018. 1. 19. 14:43해당 글은 Hyperledger Fabric 페이지의 게시글을 번역 및 정리한 자료입니다.
원본 사이트 : http://hyperledger-fabric.readthedocs.io/en/release/endorsement-policies.html
Endorsement policies(승인 정책)
승인 정책은 거래가 제대로 승인되었는지 여부를 결정하는 방법을 동료에게 지시하는 데 사용됩니다. 피어가 트랜잭션을 수신하면 트랜잭션 유효성 검증 플로우의 일부로 트랜잭션의 체인 코드와 연관된 VSCC (유효성 검증 시스템 체인 코드)를 호출하여 트랜잭션의 유효성을 판별합니다. 거래가 많은지지하는 피어로부터 하나 이상의 추천을 포함한다는 것을 상기하십시오. VSCC는 다음과 같은 결정을해야합니다. - 모든 보증 항목이 유효합니다. 즉, 예상 메시지에 대한 유효한 인증서의 유효한 서명입니다. - 적절한 수의 보증이 있습니다. 예상 소스에서 보증을받습니다.
승인 정책은 두 번째 및 세 번째 사항을 지정하는 방법입니다.
Endorsement policy design(추천 정책 설계)
승인 정책에는 두 가지 주요 구성 요소가 있습니다. - 주체 - 임계 게이트
principal P
는 서명이 예상되는 엔티티를 식별합니다.
임계 게이트 T
는 두 개의 입력, 즉 정수 t
(임계 값) 및 n
주체 또는 게이트의리스트를 취한다. 이 게이트는 근본적으로 그 n
주체나 게이트에서 t
가 만족 될 것을 요구 받는다는 기대를 포착한다.
예를 들면 다음과 같습니다. -T(2, 'A', 'B', 'C')
는 'A', 'B'또는 'C'중 두 명의 주체로부터 서명을 요청합니다. - T(1, 'A', T(2, 'B', 'C'))
는 주된 A
로부터 하나의 서명을 요구하거나 B
와 C
로부터 각각 하나의 서명을 요구한다.
Endorsement policy syntax in the CLI(CLI의 승인 정책 구문)
CLI에서는 간단한 언어를 사용하여 원칙에 대한 부울 표현에 대한 정책을 표현합니다.
주체는 서명자의 신원을 확인하고 서명자가 해당 MSP
내에서 갖는 역할을 확인하는 임무가있는 MSP와 관련하여 설명됩니다. 현재 member와 admin이라는 두 가지 역할이 지원됩니다. 주체는 MSP
.ROLE
, 로 설명됩니다. 여기서 MSP는 필수 MSP ID이고 ROLE
은 두 개의 문자열 member
와 admin
중 하나입니다. 유효한 주체의 예로는 'Org0.admin'
(Org0
MSP의 관리자) 또는 'Org1.member'
(Org1
MSP의 모든 구성원)가 있습니다.
언어 구문은 다음과 같습니다.
EXPR(E[, E...])
EXPR
은 두 개의 부울 표현식을 나타내는 AND
또는 OR
이고 E는 프린시 펄 (위에 설명 을 참고) 또는 EXPR
에 대한 다른 중첩 호출입니다.
예를 들면 다음과 같습니다. - AND ( 'Org1.member', 'Org2.member', 'Org3.member')는 세 가지 주체 각각에서 1 개의 서명을 요청합니다. - OR ( 'Org1.member', 'Org2.member') 요청 1 OR ( 'Org1.member', AND ( 'Org2.member', 'Org3.member'))는 Org1 MSP의 멤버로부터 하나의 서명을 요구하거나 또는 Org1 MSP의 멤버로부터 하나의 서명을 요청합니다. Org2 MSP 및 Org3 MSP 구성원의 서명 1 개.
Specifying endorsement policies for a chaincode(체인 코드에 대한 보증 정책 지정)
체인 코드 배포자는이 언어를 사용하여 지정된 정책에 대해 체인 코드의 인증을 확인하도록 요청할 수 있습니다. 참고 - 기본 정책에는 DEFAULT
MSP 구성원의 서명이 하나 필요합니다. 이 정책은 CLI에서 정책을 지정하지 않은 경우에 사용됩니다.
정책은 배포시 -P
스위치를 사용하여 정책을 지정한 다음 지정할 수 있습니다.
예를 들면,
peer chaincode deploy -C testchainid -n mycc -p github.com/hyperledger/fabric/examples/chaincode/go/chaincode_example02 -c '{"Args":["init","a","100","b","200"]}' -P "AND('Org1.member', 'Org2.member')"
이 명령은 AND('Org1.member', 'Org2.member')
정책으로 체인 testchainid
에 체인코드 mycc
를 배포합니다.
Future enhancements(향후 개선 사항)
이 섹션에서 우리는 승인 정책에 대한 향후 개선 사항을 목록 : -에는 MSP와의 관계에서 사용자를 식별하는 기존의 방법과 함께, 우리는 자신의 인증서에서 예상되는 조직 단위 (OU)의 측면에서 사용자를 식별 할 계획; 이는 주체 정의에서 요청한 것과 일치하는 OU를 가진 유효한 인증서를 표시하는 ID의 서명을 요청하는 정책을 표현할 때 유용합니다. - AND(., .)
구문 대신에 더 직관적 인 구문으로 이동할 계획입니다. AND .
- 우리는 일반화된 임계값 게이트를 AND
(n
-out-of-n
gate) 및 OR (1
-out-of-n
gate)와 함께 언어로 노출할 계획입니다.
'Blockchain > Hyperledger Fabric' 카테고리의 다른 글
- Total
- Today
- Yesterday
- 코딜리티
- Private Data
- 어서와 데이터는 처음이지
- ambrosus
- 하이퍼레저 패브릭
- 직딩잇템
- 코테
- 하이퍼레저 페브릭
- 빅데이터
- codility
- 블록 체인
- 하이퍼레저 인디
- ubuntu
- 빅데이터 교육
- DOCs
- Hyperledger Fabric v1.1
- docker
- 기초 of 기초 데이터 개념
- javascript
- Blockchain
- 코딩테스트
- 암브로셔스
- 블록체인
- 빅데이터 기초
- Hyperledger Indy
- Hyperledger Fabric v1.2
- 문제풀이
- 빅데이터 강의
- Hyperledger Fabric
- 알고리즘
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |