Celestiphony / Labs

WEB3 / LOCAL EVM

NFT証明書の、
発行から失効まで。

証明書を発行し、持ち主を変え、必要なら失効する。画面の表示とコントラクトの状態が、どうつながるかを試せます。

自主制作・架空データ
実際のSolidityバイトコードを、このタブ内のEVMで実行します。ウォレット接続・秘密鍵・実送金・外部RPCは使いません。再読み込みすると初期状態へ戻ります。

ブラウザ内EVMを準備しています…

01 / OPERATE

役を選んで、操作する。

公開の学習用アカウントです。本人認証やウォレット署名ではありません。所有者以外の譲渡や、発行者以外の発行も試せます。

入力本文は送信しません。SHA-256ハッシュだけをタブ内コントラクトへ記録します。本名や機密情報は不要です。


02 / VERIFY

コントラクト上の状態

NFT
未発行
有効性
—
所有者
—
記録されたSHA-256
—

03 / OBSERVE

実行結果とイベント

最新の操作を先頭に表示します。拒否された操作は成功イベントを作りません。

  1. まだ操作していません。
まず試す流れ・技術構成・制約
  1. 「発行者」で、はなへ発行。
  2. 「そら」に切り替えて譲渡すると、所有権の検査で拒否される。
  3. 「はな」に切り替えて、そらへ譲渡。所有者とTransferイベントを確認。
  4. 「発行者」に戻して失効。有効性が変わり、以後の譲渡が拒否される。
  5. 文書を1文字変えて照合。ハッシュが一致しなくなる。

viemでABIをエンコードし、EthereumJSのrunCallでSolidityを実行。ERC-721と発行権限はOpenZeppelin Contractsを使っています。コントラクトはPrague向けにコンパイルし、同じルールのEVMで動かします。

ここで確かめるのはバイトコード・状態・権限・revert・イベントです。署名済みトランザクション、ネットワーク合意、手数料、インデクサー、スマートコントラクト監査を実証するものではありません。表示するガスはメッセージ実行分だけです。ハッシュの一致も、文書の真実性や発行者の本人性を保証しません。

参照:viemのABI処理 · OpenZeppelin ERC-721 · EthereumJS EVM

Web3を、使える画面と検証へ。

コントラクトの操作画面、権限、エラー処理、既存Webアプリとの接続など、必要な範囲からご相談ください。

Webアプリ開発を相談する