본문 바로가기

IT/Block Chain(Hyperledger)

어떻게 하이퍼레저에서 node.js를 활용해서 개발 앱을 사용할 수 있을까?

개요 - 두개의 기둥

스마트 컨트렉트와 클라이언트 애플리케이션

 

가이드라인

가이드라인

 

 

인증 된 Hyperledger Fabric 개발자 기준

CHFD - Domain & competencies

 

 

체인코드 구조

 

 

node.js를 사용하여 원장에 액세스하는 방법.(client application)

application-javascript의 구조를 보면 확인이 가능. 여기선 저자가 직접 만든 내용을 요약.

 

시작에 앞서, npm을 이용해서 fabric-ca-client, fabric-network 디펜더시를 등록해줘야 함 

## 어드민 등록

$ node caActions.js admin

#  CAclient 빌드하고, Admin을 등록, wallet에 해당 인증서(admin.id)와 필요한 내용을 저장

## ronald라는 유저 등록

$ node caActions.js user ronald

 

## ledgerActions.js에서 애플리케이션에서 자산정보 읽고 쓰기 테스트 진행. 

ledgerActions.js

0. 유저이름, 채널명, 체인코드 선언 (LINE 13~16)

1. 커넥션 프로파일 읽기(ccp) cf. 이는 connection-org1.json에서 생성되는것 과 유사. (LINE 21)

커넥션 프로파일 내부 내용

2. 월렛 생성(fabric-network에 인클루드 된) (LINE 24)

3. 게이트웨이 선언(fabric-network에 인클루드 된) (LINE 29)

4. 게이트웨이 연결 (LINE 35)

cf. 흐름만 보면, DB연동이랑 비슷하다. 

5. 이제 컨트랙정보를 가져오고 스마트 컨트랙 펑션에 접근해서 처리 가능하다. (LINE 45,  47이하)

6. gateway disconnect 해주기

 

cd fabric-samples/test-network

./network.sh up createChannel -c channel1 -ca

cd ../asset-transfer-basic/chaincode-javascript
npm install
cd ../../test-network

export FABRIC_CFG_PATH=$PWD/../config/

peer lifecycle chaincode package basic.tar.gz --path ../asset-transfer-basic/ chaincode-javascript/ --lang node --label basic_1.0

// 코드 치다가 걍 말음... 궁금하면 영상으로 확인!

 

자세한 내용과 소스 출처: www.youtube.com/watch?v=KFf1qzYP-bA