Hyperledger indy-cli 파이썬으로 사용해보기
python으로 hyperledger indy 명령어 사용하기Permalink
지난 게시글을 통해 indy-cli를 통해 indy의 명령어들을 사용해보았다. 그러나 개발을 위해서는 언어를 통해 indy를 제어할 필요가 있고, 이번 게시글에서는 python을 통해 그 방법을 알아보도록 한다.
우선 indy-sdk를 깃 클론해온다.
git clone https://github.com/GyuSeon-Jo/indy-sdk.git
cd indy-sdk/docs/how-tos/write-did-and-query-verkey/python
본 디렉토리에 접근하면 did를 생성하고 등록하는 python코드를 확인할 수 있다.
template.py
>는 디렉토리의 예제를 실행해보기 위해 미리 작성된 코드이다. 각각 step2-5에 작성돼 있는 함수를 작성하여 예제를 실습해볼 수 있다.
step2.py
는 pool에 연결한 뒤 해당 풀에 접속하여 wallet을 생성하는 함수이다.
pool.create_pool_ledger_config(config_name="pool_name", config="pool_config")
: pool을 생성한다pool.open_pool_ledger(config_name="pool_name", config="None")
: pool에 접속한다wallet.create_wallet(wallet_config, wallet_credentials)
: wallet을 생성한다wallet.open_wallet(wallet_config, wallet_credentials)
: wallet을 연다
step3.py
는 Steward와 Trust anchor의 DID를 생성하는 함수이다.
did.create_and_store_my_did("wallet_handle", "seed_json")
: 설정한 seed를 기반으로 did를 생성한다
step4.py
는 생성된 Trust anchor의 did를 ledger에 nym tx로 발생시키는 함수이다
ledger.build_nym_request("submitter_did=steward_did", "target_did=trust_anchor_did","ver_key=trust_anchor_verkey","alias=None","role='TRUST_ANCHOR')
: nym tx을 구성한다ledger.sign_and_submit_request("pool_handle=pool_handle","wallet_handle=wallet_handle","submitter_did=steward_did","request_json=nym_transaction_request")
: nym tx를 발생한다
step5.py
는 사용자의 did를 생성하고 Trust anchor가 Steward로부터 확인 받은 후 nym tx를 발생 시키는 함수이다.
해당 코드를 비롯한 다양한 라이브러리를 통해 indy-cli의 명령어를 python을 이용하여 제어할 수 있다.
또한 python 외에도 다양한 언어 역시 지원한다.