LogoLogo
Japanese
Japanese
  • Yabumi
    • 機能
      • Yabumi NFTの機能
      • Yabumiの機能(送金を例に)
    • 背景・課題
    • 設計・仕組み
      • 前提
      • Yabumi コントラクデプロイ
      • Yabumi NFT ミント
      • Yabumi NFT バーン
      • その他
      • システム概要図(仮)
      • コントラクトアドレス
    • 使用方法
      • ウォレット接続方法
      • SNS連携方法
      • Yabumi NFTのミント方法
      • トークン等を個別に送る方法
      • トークン等を一括で送る方法(送金先情報を個別に追加)
      • トークン等を一括で送る方法(送金先情報をCSVで一括インポート)
      • メッセージを送る方法
      • Yabumi NFTの転送方法
      • Yabumi NFTのバーン方法
    • YBM(Yabumi DAO Token)
    • よくある質問とその回答
    • 今後の展望
      • ロードマップ
GitBook提供
このページ内
  • 1.Yabumi NFTのミント時に必要なもの
  • 2.署名データ作成
  • 3.署名アドレスを検証
  • 4.アドレスのエラー処理
  • 5.ミント済みのエラー処理
  • 6.インデックス割り当て
  • 7.Jointed IDを保存
  • 8.Token IDとの紐づけ
  • 9.ミントしたウォレットアドレスの保存
  • 10.ミント処理
  • 11.イベントの発火
  1. Yabumi
  2. 設計・仕組み

Yabumi NFT ミント

コントラクトでのミント処理手順

1.Yabumi NFTのミント時に必要なもの

Yabumi NFTをミントする際、コントラクトはフロントエンドから以下を受け取ります。

  • JointedID

  • バックエンドで行った署名(r)

  • バックエンドで行った署名(s)

  • バックエンドで行った署名(v)

2.署名データ作成

以下の情報を元に、コントラクトでバックエンド同様の署名データ作成します。

  • JointedID

  • ミントアドレス(msg.sender)

3.署名アドレスを検証

以下情報を元に、コントラクトでバックエンド署名アドレスを検証します。

  • 2.で作成した署名データ

  • バックエンドで行った署名(r)

  • バックエンドで行った署名(s)

  • バックエンドで行った署名(v)

4.アドレスのエラー処理

2つのアドレスが一致しなかった場合はエラーとして処理します。

  • 3.で検証したバックエンド署名アドレス

  • コントラクトデプロイ時に受け取った署名アドレス

5.ミント済みのエラー処理

引数で受けったJointed IDが過去にミントされたものと一致した場合はエラーとして処理します。

6.インデックス割り当て

上記4,5のチェックをパスできたら、tokenIDを1~からミントされた順番に採番します。

7.Jointed IDを保存

「JointedID」をミント済みとして変数へ保存します。

これで同一IDで複数ミントされることを防ぎます。

8.Token IDとの紐づけ

「JointedID」とToken ID紐付け情報を変数へ保存します。

9.ミントしたウォレットアドレスの保存

Token IDに対応したウォレットアドレスを変数へ保存します。

これでYabumi NFTのToken IDからウォレットアドレスを割り出せます。

10.ミント処理

ミントしたウォレットアドレスと採番したToken IDでミント処理を実行じます。

11.イベントの発火

Token IDと「JointedID」をイベントへ保存し、emitを使用してイベントを発火させます。

前へYabumi コントラクデプロイ次へYabumi NFT バーン

最終更新 2 か月前