本次測試的合約地址:
https://rinkeby.etherscan.io/address/0x376f029b4ed9096c845453306731d14e9886d79a
本次實踐課考察點:
1,如何在合約未開源情況下 Mint NFT 和交易複製
2,如何破除 mint 的數量限制
3,如何直接通過 HEX Data 進行鏈上交互
Q1. 指出此次合約因為缺乏什麼的部件無法直接在 ethscan 交互:#
A
Q2: 寫出你進行交互時使用的 HEX DATA(16 進制數據),要求:按照參數的順序排列,一個參數一行。#
A:
mint:
0x1b2ef1ca (Method ID)
0000000000000000000000000000000000000000000000000000000000000000 (uint256 id)
0000000000000000000000000000000000000000000000000000000000000001 (uint256 amount)
原型為 mint(uint256 id, uint256 amount)
使用 keccak256(“mint(uint256,uint256)”)
可以得到函數的 hash 值 (1b2ef1ca104ec753c817f038e7e2a0c7cb28cc3c0877c7c2b78e5a14a407a623) , 取前四個字節即可得到函數的 ID 0x1b2ef1ca 。
safeTransferFrom:
0xf242432a (Method ID)
address from
address to
0000000000000000000000000000000000000000000000000000000000000000 (uint256 id)
0000000000000000000000000000000000000000000000000000000000000001 (uint256 amount)
`000000000000000000000000000000000000000000000000000000000000