citylabs-study

10일차 study(Membership Service Provider (MSP))

seongjin08 2022. 1. 21. 16:27

Membership Service Provider (MSP)

 

MSP는 왜 필요한가?

 

Fabric 은 허가형 네트워크이기 때문에 블록체인 참가자는 네트워크 거래하기 위해서는

나머지 네트워크 에서 자신의 신원을 증명 할 방법이 필요합니다.

ID에 대한 문서를 읽으며 PKI(공개키 인프라)가 신뢰 체인을 통해 확인 가능한 

ID를 제공하는 방법을 알 수 있습니다.

 

인증기관은 ID를 증명하는 데 사용할수 있는 키싸을 형성하는 공개,개인키를 생성하는 ID를 발급합니다.

개인키는 공개적으로 공유될 수 없기 때문에 MSP 가 들어오는 증명을 가능하게 하는 매커니즘이 필요

예를 들어, peer는 개인 키를 사용하여 트랜잭션을 디지털 서명 하거나 보증한다.

주문 서비스에 MSP에는 거래에 첨부된 서명이 유효한지 확인하는 데 사용되는 peer의

공개 키가 포함되있다. 개인 키는 MSP의 일부인 햐당 공개 키만 일치시킬 수 있는 트랜잭션의 서명을 생성하는데 사용됨

따라서 MSP는 구성원의 개인 키를 공개하지 않고도 해당 ID를 신뢰하고 나머지 네트워크에서 인식 할 수있도록 하는 매커니즘입니다.

 

인증기관은 다양한 유형의 검증 가능한 ID를 제공 합니다. 반면 MSP는 상점에서 사용할수있는 신용 카드 제공업체를 결정 합니다.

이런식으로 MSP는 신원(신용카드)을 역할(가게에서 물건을 살 수 있는 능력)으로 바꿉니다.

 

확인 가능한 ID를 역할로 바꾸는 이 기능은 조직, 노드 및 채널 누가 무엇을 할 수 있는지 결정하는 MSP를 설정 할 수 있는게

패브릭 네트워크  작동 방식의 기본입니다.

 

ID는 지불 가능 여부를 증명하는 데 사용되는 신용 카드와 유사합니다. MSP는 허용되는 신용 카드 목록과 유사합니다.

 

MSP는 네트워크 구성원이 신뢰하는 조직을 정의 하는 데 사용됩니다.

구성원에게 네트워크 내에서 역할 및 권한을 제공하는 메커니즘이다.

 

MSP는 허가형 블록체인 네트워크에 참여할 수 있도록 하는 매커니즘입니다.

Fabric 네트워크에서 거래 하려면 구성원이 다음과 같이 수행야한다.

 

1.네트워크에서 신뢰하는 CA에서 발급한 ID가 있어야 합니다.

2. 네트워크 회원들이 이넞ㅇ하고 승인 하는 조직 의 회원이 되야한다.

MSP는 ID 가 조직의 구성원 자격에 연결되는 방식이입니다.

구성원의 공개키 (인증성,서명 )를 조직의 MSP에 추가하면 구성원이 됩니다.

3.MSP를 네트워크 또는 채널의 컨소시엄에  추가합니다.

4.MSP가 네트워크의 정책 정의에 포함되어 있는지 확인하십시오.

 

MSP 란 무엇인가?

Membership Service Provider (멤버십 서비스 제공자) 은 이름 과 달리 실제로 제공하는 것이 없다.

MSP 요구사항의 구현은 네ㅡ워크 구성에 추가되고 조직을 내부적으로 (조직의 관리자가 누구인지 결정함) 및

외부적으로(다른 조직이 해당 객체의 유효성을 검사할수 있도록 함) 정의하는데  사용되는 폴더.

인증기관은 ID를 나타내는 인증서를 생성하고 MSP에는 허가된 ID 목록이 포함 되어 있다.

 

MSP는 구성원의 ID를 나열하거나 구성원에 대해 유효한 ID를 발급할 권한이 있는 CA를 식별하여 신뢰 도메인의 구성원을 정의하는 데 허용되는 루트 CA 및 중간 CA를 식별합니다.

 

 

액터가 노드 또는 채널에 대해 갖는 특정 권한을 식별 하여 ID를 역할 로 바꾸는 것은 MSP.

사용자가 Fabric CA에 등록되면 관리자, 피어, 클라이언트, 주문자 또는 구성원의 역할이 사용자와 연결되어야 합니다

 

MSP 도메인

MSP는 블록체인 네트워크의 두 도메인에서 발생합니다.

- Locally on an actor’s node (local MSP) -로컬 MSP

- In channel configuration (channel MSP) - 채널 MSP

 

두개의 주요 차이점은 범위 . 각 MSP는 특정 관리 수준에서 역할과 권한을 나열합니다.

 

로컬 MSP

로컬 MSP는 클라이언트와 노드(피어 및 주문자)에 대해 정의 합니다.

 

모든 노드에는 해당 수준에서 관리 또는 참여 권한이 있는 사람을 정의하는 로컬 MSP가 

정의 되어야 합니다.

조직,조직의 관리자,노드의 관리자,노드 모두 동일한 신뢰 루트를 가져야 합니다.

채널  MSP

이와 대조적으로 채널 MSP는 채널 수준에서 관리 및 참여 권한을 정의합니다

애플리케이션 채널의 피어 및 순서 지정 노드는 채널 MSP의 동일한 보기를 공유하므로 채널 참가자를 올바르게 인증할 수 있습니다

두 개의 조직 MSP를 포함하는 채널 config.json 파일의 스니펫.

채널 MSP는 채널 수준에서 권한이 있는 사람을 식별합니다 .

채널 MSP는 채널 구성원(자신이 MSP임)의 ID와 채널 수준 정책 시행 간의 관계 를 정의합니다.

 채널 MSP에는 채널 구성원 조직의 MSP가 포함됩니다.

 

채널에 참여하는 모든 조직에는 해당 채널에 대해 정의된 MSP가 있어야 합니다 

 

시스템 채널 MSP에는 주문 서비스에 참여하는 모든 조직의 MSP가 포함됩니다. 

 

로컬 MSP는 적용되는 노드 또는 사용자의 파일 시스템에서만 정의 됩니다. 

 

organization  은 MSP 에서 어떤 역할 ??

organization 은 논리적으로 관리되는 구성원 그룹이다.

organization 에서 가장 중요한 것은 단일 MPS에서  구성원을 관리한다는 것입니다.

MSP를 사용하면 ID를 organizaion 에 연결할 수 있습니다.