거버넌스를 통해 OKRW 발행하기
명령줄을 사용하여 새로운 민터 주소를 승인하고 OKRW 토큰을 발행하는 방법에 대한 전체 튜토리얼입니다.
학습 목표
- ✓`x/okrw` 모듈 파라미터 쿼리 방법.
- ✓민터 주소를 설정하기 위한 거버넌스 제안 생성 및 제출 방법.
- ✓거버넌스 제안에 투표하는 방법.
- ✓새로 승인된 주소를 사용하여 OKRW 토큰을 발행하는 방법.
사전 요구사항
- 실행 중인 마루 로컬 테스트넷 또는 공개 테스트넷 접근 권한.
- 거버넌스 제안 보증금을 제출할 만큼 충분한 `aokrw`를 가진 계정 (예: 검증인 계정).
필요 도구
marood (Maroo node CLI)
x/okrw 모듈은 승인된 단일 주소만이 새로운 OKRW를 발행할 수 있도록 보장합니다. 기본적으로 이 주소는 설정되어 있지 않습니다. 이 튜토리얼에서는 거버넌스 주도 프로세스를 통해 민터 주소를 설정하고, 이를 사용하여 새로운 토큰을 발행하는 전체 과정을 안내합니다. 1
1. 초기 파라미터 확인
먼저,
x/okrw 모듈의 초기 상태를 확인합니다. minter_address는 비어 있어야 합니다. terminal bash
marood query okrw params
# 예상 출력:
# params:
# minter_address: ""
# mint_denom: aokrw 2
2. 민터 계정 생성
민터 역할을 할 전용 계정이 필요합니다. 이 목적을 위해 새로운 키를 생성해 보겠습니다.
terminal bash
marood keys add okrw-minter
# 주소가 출력되며, 다음 단계를 위해 저장해야 합니다.
# 예: maroo1zaq9j8k4g8q8w8... (이 주소 저장) 3
3. 거버넌스 제안서 작성
이제 제안을 정의하는 JSON 파일을 생성합니다. 제안의 메시지는
x/okrw 모듈에 대한 MsgUpdateParams 트랜잭션이 될 것입니다. maroo1...을 방금 생성한 주소로 바꾸는 것을 잊지 마세요. terminal bash
MINTER_ADDRESS=$(marood keys show okrw-minter -a)
GOV_MODULE_ADDRESS="maroo10d07y265gmmuvt4z0w9aw880jnsr700j8k2m34"
cat <<EOF > proposal.json
{
"title": "Set OKRW Minter Address",
"summary": "Authorize the address $MINTER_ADDRESS to mint OKRW tokens.",
"messages": [
{
"@type": "/maroo.okrw.v1.MsgUpdateParams",
"authority": "$GOV_MODULE_ADDRESS",
"params": {
"minter_address": "$MINTER_ADDRESS",
"mint_denom": "aokrw"
}
}
],
"deposit": "10000000aokrw"
}
EOF 참고: `authority`는 `x/gov` 모듈의 주소입니다. `marood debug addr gov` 명령어로 찾을 수 있습니다.
4
4. 제안 제출 및 투표
보증금을 낼 자금이 있는 계정을 사용하여 제안을 제출한 다음, 'yes'로 투표합니다. 로컬 테스트넷에서는 투표 기간이 매우 짧습니다.
terminal bash
# 검증인 또는 다른 자금 있는 계정을 사용하여 제출
marood tx gov submit-proposal proposal.json --from validator1 --chain-id maroo-local-1 -y --gas auto --gas-adjustment 1.5
# 제안 ID 가져오기 (아마 1일 것입니다)
PROPOSAL_ID=1
# 제안에 투표하기
marood tx gov vote $PROPOSAL_ID yes --from validator1 --chain-id maroo-local-1 -y 5
5. 파라미터 변경 확인
투표 기간이 끝나고 제안이 통과되면 파라미터를 다시 쿼리합니다.
minter_address는 이제 새 계정의 주소로 설정되어 있어야 합니다. terminal bash
# 투표 기간이 지날 때까지 기다립니다 (로컬넷에서 약 15초)
marood query okrw params
# 예상 출력:
# params:
# minter_address: maroo1zaq9j8k4g8q8w8...
# mint_denom: aokrw 6
6. 새로운 OKRW 토큰 발행
민터 주소가 설정되었으므로 이제 토큰을 발행할 수 있습니다. 먼저, 가스비를 지불하기 위해 새 민터 계정에 약간의 자금을 보내야 합니다. 그런 다음 발행 명령을 실행합니다.
terminal bash
# 민터 계정에 가스비 보내기
MINTER_ADDRESS=$(marood keys show okrw-minter -a)
marood tx bank send validator1 $MINTER_ADDRESS 1000000aokrw --from validator1 --chain-id maroo-local-1 -y
# 수신자 계정 생성
marood keys add recipient1
RECIPIENT_ADDRESS=$(marood keys show recipient1 -a)
# 승인된 민터 계정에서 500 OKRW 발행 (500 OKRW = 500 * 10^18 aokrw)
marood tx okrw mint $RECIPIENT_ADDRESS 500000000000000000000aokrw --from okrw-minter --chain-id maroo-local-1 -y
# 수신자의 잔액 확인
marood query bank balances $RECIPIENT_ADDRESS 마무리
축하합니다! 온체인 거버넌스 시스템을 성공적으로 사용하여 민터를 승인하고 새로운 OKRW 토큰을 생성했습니다. 이 과정은
x/okrw 모듈의 핵심 보안 모델을 보여주며, 토큰 공급에 대한 통제가 탈중앙화되고 투명하게 유지되도록 보장합니다.