取引を読む
Ethereum のテストネットに記録された取引を1本読み、何が平文で残り、何が暗号化され、何が載っていないのかを仕分けます。
このページは読むだけです
- ウォレットの接続は要りません
- 秘密鍵を入力する欄はありません
- 対象は Sepolia テストネットのみです
本書で扱う取引:
- 0x2b699f1d67904dc675…③ DDO の公開(publish 画面の3段目)
- 0x2d29cc0626971b6c71…① トークンと価格の作成(publish 画面の1段目)
この取引そのものの情報
「誰が・どこへ・いくら払って送ったか」という、封筒に書いてあるような情報です。中身が何であっても必ず記録されます。中身にあたる記録は、下の「イベントの全記録」です。
0xa60ef4e6e8f821f3bd5d42f8067bd5d4a96e0cefpublish を実行した人。ポータルでウォレット接続していたアドレス
取引を送れるのは鍵を持つアカウントだけです。契約は自分から送れません。
0x04ecc497632847529fc431ba780ffc573fe4ac47この publish で作られた Data NFT。資産そのもの。DID はこのアドレスから計算される
この取引が呼び出した相手です。1本目は「工場」、3本目は「作られた NFT 自身」——宛先が変わることに注目してください。
その取引が入ったブロックの通し番号です。Sepolia は約12秒に1つ進みます。番号が取引の順序を決めます。
ガス量は計算と保存の重さ、単価はそのときの混み具合で決まります。
ガス量 × 単価。データを登録するだけで、公開者の ETH が減ります。
ポータルがチェーンに送った中身です。暗号化済みの DDO もここに載っています。
1本の取引から、いくつでも記録が出ます。内部で次々に別の契約が呼ばれるためです。
DDO(資産を記述する文書)を見る
チェーンに載っているのは暗号化された塊だけです。中身を見るには、記録された復号担当ノードに問い合わせるしかありません。このカードは、その依存関係をそのまま示します。
did:op:89e6023a8609bdfc1f28e99b65955683d7d4ddd07fc783de1549a9b8112befb1NFT のアドレスとチェーン ID から機械的に決まります。誰かが採番したものではありません。
0x04ecc497632847529fc431ba780ffc573fe4ac47この publish で作られた Data NFT。資産そのもの。DID はこのアドレスから計算される
http://16.192.66.21:8001送ったデータの中身
ポータルがチェーンに送った引数です。バイト列としては誰でも読めますが、送る前に暗号化されていれば中身までは読めません。同じ「送ったデータ」でも、①はすべて平文、③は大半が暗号化された DDO です。
setMetaDataAndTokenURI0http://16.192.66.21:80010x020x04009ab5bfa68348330fb182c0e8a8eb859ffdc6… ← 2,872 バイト。中身は読めません0xc717a9eb053d7b23db3da5b30a26ba4c57a19939e697fc52c10691b055d5d78b1data:application/json;base64,eyJuYW1lIjoiUFggRGF0YSBORlQiLCJzeW1ib2wiOiJQWC1ORlQiLCJkZXNjcmlwdGlvbiI6IkRhdGEgTkZUcyBhcmUgdW5pcXVlIGRpZ2l0YWwgYXNzZXRzIHRoYXQgcmVwcmVzZW50IHRoZSBpbnRlbGxlY3R1YWwgcHJvcGVydHkgb2YgeW91ciBkaWdpdGFsIHNlcnZpY2VzLiIsImV4dGVybmFsX3VybCI6Imh0dHBzOi8vY2xpb3gub3JnL2Fzc2V0L2RpZDpvcDo4OWU2MDIzYTg2MDliZGZjMWYyOGU5OWI2NTk1NTY4M2Q3ZDRkZGQwN2ZjNzgzZGUxNTQ5YTliODExMmJlZmIxIiwiYmFja2dyb3VuZF9jb2xvciI6ImZmZmZmZiIsImltYWdlIjoiL2ltYWdlcy9jbGlveF90ZXh0LnN2ZyJ9[]この取引の送ったデータには、暗号化された塊が含まれています。
もし保管領域に書いていたら
この取引で最も大きいデータは、契約の保管領域ではなくイベントログに置かれています。同じ量を保管領域に書いた場合と比べます。
| 書き方 | 単価 | ガス |
|---|---|---|
| イベントログ(実際の方式) | 8 gas / byte | 24,101 |
| 保管領域 | 20,000 gas / 32 bytes | 1,989,000 |
2,872 バイトを保管領域に書くと、ログの約 82.5 倍かかります。
単価の出典: Ethereum Yellow Paper / EIP-2929。SSTORE はゼロ→非ゼロの場合。
tokenURI の中身
data:application/json;base64,eyJuYW1lIjoiUFggRGF0YSBORlQiLCJzeW1ib2wiOiJQWC1ORlQiLCJkZXNjcmlwdGlvbiI6IkRhdGEgTkZUcyBhcmUgdW5pcXVlIGRpZ2l0YWwgYXNzZXRzIHRoYXQgcmV…外部を指していません。JSON そのものがチェーン上に埋め込まれています。
{
"name": "PX Data NFT",
"symbol": "PX-NFT",
"description": "Data NFTs are unique digital assets that represent the intellectual property of your digital services.",
"external_url": "https://cliox.org/asset/did:op:89e6023a8609bdfc1f28e99b65955683d7d4ddd07fc783de1549a9b8112befb1",
"background_color": "ffffff",
"image": "/images/cliox_text.svg"
}何が残ったかの仕分け
① 平文で誰でも読めるもの
- MetadataCreated.createdBy = 0xa60eF4E6E8F821F3bd5D42f8067BD5d4a96e0CEf
- MetadataCreated.state = 0
- MetadataCreated.decryptorUrl = http://16.192.66.21:8001
- MetadataCreated.flags = 0x02
- MetadataCreated.metaDataHash = 0xc717a9eb053d7b23db3da5b30a26ba4c57a19939e697fc52c10691b055d5d78b
- TokenURIUpdate.updatedBy = 0xa60eF4E6E8F821F3bd5D42f8067BD5d4a96e0CEf
- TokenURIUpdate.tokenID = 1
- calldata.metaDataDecryptorUrl = http://16.192.66.21:8001
- calldata.flags = 0x02
- calldata.metaDataHash = 0xc717a9eb053d7b23db3da5b30a26ba4c57a19939e697fc52c10691b055
- calldata.tokenId = 1
- calldata.metadataProofs = []
② 載っているが読めないもの
MetadataCreated.data— 2,872 バイトcalldata.data— 2,872 バイト
③ そもそも載っていないもの
データ本体はチェーンに載りません。上の②が復号できれば題名や URL が現れますが、復号できるのは指定されたサーバだけです。チェーンだけを見ても、これが何の資料なのかは分かりません。
イベントの全記録
1 個の契約が関わっています。
0x04ecc497632847529fc431ba780ffc573fe4ac47この publish で作られた Data NFT。資産そのもの。DID はこのアドレスから計算される
- createdBy
0xa60eF4E6E8F821F3bd5D42f8067BD5d4a96e0CEf鍵を持つアカウント(人)publish を実行した人。ポータルでウォレット接続していたアドレス
- state
0- decryptorUrl
http://16.192.66.21:8001- flags
0x02- data
0x04009ab5bfa68348330fb182c0e8a8eb859ffdc6…← 2,872 バイト。中身は読めません- metaDataHash
0xc717a9eb053d7b23db3da5b30a26ba4c57a19939e697fc52c10691b055d5d78b- timestamp
1786650612- blockNumber
11482339
0x04ecc497632847529fc431ba780ffc573fe4ac47この publish で作られた Data NFT。資産そのもの。DID はこのアドレスから計算される
- updatedBy
0xa60eF4E6E8F821F3bd5D42f8067BD5d4a96e0CEf鍵を持つアカウント(人)publish を実行した人。ポータルでウォレット接続していたアドレス
- tokenURI
data:application/json;base64,eyJuYW1lIjoiUFggRGF0YSBORlQiLCJzeW1ib2wiOiJQWC1ORlQiLCJkZXNjcmlwdGlvbiI6IkRhdGEgTkZUcyBhcmUgdW5pcXVlIGRpZ2l0YWwgYXNzZXRzIHRoYXQgcmVwcmVzZW50IHRoZSBpbnRlbGxlY3R1YWwgcHJvcGVydHkgb2YgeW91ciBkaWdpdGFsIHNlcnZpY2VzLiIsImV4dGVybmFsX3VybCI6Imh0dHBzOi8vY2xpb3gub3JnL2Fzc2V0L2RpZDpvcDo4OWU2MDIzYTg2MDliZGZjMWYyOGU5OWI2NTk1NTY4M2Q3ZDRkZGQwN2ZjNzgzZGUxNTQ5YTliODExMmJlZmIxIiwiYmFja2dyb3VuZF9jb2xvciI6ImZmZmZmZiIsImltYWdlIjoiL2ltYWdlcy9jbGlveF90ZXh0LnN2ZyJ9- tokenID
1- timestamp
1786650612- blockNumber
11482339