Metamorphic Contract - 同じアドレスでのコードの置き直し
Ethereum のスマートコントラクト(チェーン上で動くプログラム。以下、コントラクト)には、一度置いたコードを書き換える命令がありません。そのため、利用者は、あるアドレスのコードを読んだり監査の結果を確認したりしてから、そのアドレスに資産を預けたり権限を与えたりします。後からコードが変わらないことが前提です。 metamorphic contract は、この前提を崩す手法です。コントラクトを消す命令 SELFDESTRUCT で消してから作り直し、同じアドレスに別のコードを置きます。2024 年 3 月の Ethereum の仕様の更新(Cancun)より前は、この手法が使えました。 ...