CLIでNFTを発行する¶
注意
現時点でNFTの発行まで確認が取れていません。
参考資料としてご参照ください。
1. ポリシー鍵の作成¶
1-1. ポリシー鍵を作成する¶
cd $NODE_HOME/nft
cardano-cli address key-gen \
--verification-key-file policy/policy.vkey \
--signing-key-file policy/policy.skey
2. ポリシースクリプトを作成する¶
2-1. キーハッシュを取得する¶
KEYHASH=$(cardano-cli address key-hash --payment-verification-key-file policy/policy.vkey)
echo $KEYHASH
2-2. 現在のスロットを取得する¶
2-3. 締め切りを設定 (例:+600000スロット)¶
2-4. ポリシーファイルを作成する¶
cat > policy/policy.script <<EOF
{
"type": "all",
"scripts": [
{ "type": "before", "slot": ${SLOT_BEFORE} },
{ "type": "sig", "keyHash": "${KEYHASH}" }
]
}
EOF
2-5. ポリシーIDを生成する¶
2-6. ポリシーIDを確認¶
3. メタデータを作成¶
3-1. トークン名を設定する¶
(32バイト以内)。日本語など非ASCIIはHEX化が安全
3-2. CIDを設定する¶
3-3. メタデータを作成する¶
cat > metadata.json <<EOF
{
"721": {
"${POLICY_ID}": {
"${TOKEN_NAME_TEXT}": {
"name": "${TOKEN_NAME_TEXT}",
"image": "ipfs://${CID}",
"mediaType": "image/png",
"description": "Hello Cardano Mainnet NFT!"
}
},
"version": "1.0"
}
}
EOF
4. ミント¶
4-1. 送信元アドレスを設定する¶
4-2. 送信先アドレスを設定する¶
4-2. 残高UTxOを確認¶
4-3. 使用するTxInを選択¶
1点ものNFT¶
トランザクションをビルド¶
cardano-cli conway transaction build \
--mainnet \
--tx-in ${TX_IN} \
--tx-out "$TXOUT" \
--mint "1 ${ASSET_UNIT}" \
--minting-script-file policy/policy.script \
--required-signer-hash "${POLICY_KEYHASH}" \
--metadata-json-file metadata.json \
--change-address "${FROM_ADDR}" \
--out-file tx.raw
署名¶
cardano-cli conway transaction sign \
--mainnet \
--tx-body-file tx.raw \
--signing-key-file payment.skey \
--signing-key-file policy.skey \
--out-file tx.signed