「ブロックチェーンは耐改竄性が高く、一度ブロックに取り込まれたら元に戻せない」的なことを様々な記事で書かれています。 ブロックチェーン初学者である私はそれを鵜呑みにした結果ふと疑問が浮かびました。「スマートコントラクトのstorageってブロックチェーンに永久に刻まれるのになんで更新できるの??」https://mirror.xyz/0x221E25Ad7373Fbaf33C7078B8666816586222A09/0YK76_OJ5bkyH-RiFsiAiwFYD0yLxllKwIUPMocMaoo storageについてこの記事で説明していますが、storageはブロックチェーン上に永久に保存される変数です。 ブロックチェーンは改竄できないという認識だったのでブロックチェーン上にあるstorageを更新できることに違和感を覚えていました。 しかし、この違和感の原因は「ブロックチェーンは不変である」という先入観にありました。 確かにブロックチェーンは不変ではありますが、その対象はブロックやトランザクションそれ自体です。 Bitcoinであれば取引金額を変えることはできません。...