<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Selfdestruct on Debimate</title><link>https://debimate.jp/tags/selfdestruct/</link><description>Recent content in Selfdestruct on Debimate</description><image><title>Debimate</title><url>https://debimate.jp/images/default-ogp.webp</url><link>https://debimate.jp/images/default-ogp.webp</link></image><generator>Hugo -- 0.166.0</generator><language>ja-JP</language><lastBuildDate>Thu, 12 Nov 2026 22:53:40 +0900</lastBuildDate><atom:link href="https://debimate.jp/tags/selfdestruct/index.xml" rel="self" type="application/rss+xml"/><item><title>Metamorphic Contract - 同じアドレスでのコードの置き直し</title><link>https://debimate.jp/notes/blockchain-systems/metamorphic-contract/</link><pubDate>Wed, 11 Nov 2026 00:00:00 +0000</pubDate><guid>https://debimate.jp/notes/blockchain-systems/metamorphic-contract/</guid><description>&lt;p&gt;Ethereum の&lt;a href="../smart-contract/"&gt;スマートコントラクト&lt;/a&gt;（チェーン上で動くプログラム。以下、コントラクト）には、一度置いたコードを書き換える命令がありません。そのため、利用者は、あるアドレスのコードを読んだり監査の結果を確認したりしてから、そのアドレスに資産を預けたり権限を与えたりします。後からコードが変わらないことが前提です。&lt;/p&gt;
&lt;p&gt;metamorphic contract は、この前提を崩す手法です。コントラクトを消す命令 &lt;code&gt;SELFDESTRUCT&lt;/code&gt; で消してから作り直し、同じアドレスに別のコードを置きます。2024 年 3 月の Ethereum の仕様の更新（Cancun）より前は、この手法が使えました。&lt;/p&gt;</description></item></channel></rss>