Warum besteht der Bibliotheksvertrag noch, nachdem er am 6. November von devs99 getötet wurde?

alle. Ich bin neu bei Ethereum, hier ist eine kleine Frage zum Paritäts-Wallet-Hacking am 6. November.

Das Sicherheitsproblem der Parity Wallet ist erneut aufgetreten. Wir alle wissen, dass dies daran liegt, dass er die Kill-Funktion aufgerufen hat, um den Bibliotheksvertrag zu beenden. Aber nachdem ich diese Transaktion auf Etherscan überprüft habe, wird nicht angezeigt, dass dies die letzte Transaktion für diesen Vertrag ist. Ich bin verwirrt darüber, warum der Bibliotheksvertrag seine Transaktion mit anderen Konten, die auch wieder initWallet() aufgerufen haben, behalten kann. Ich denke, der Bibliotheksvertrag wurde beendet, was bedeutet, dass er für immer aus der Blockchain entfernt wurde und nicht mehr verwendet werden kann....

Bibliotheksvertragsadresse : 0x863DF6BFa4469f3ead0bE8f9F2AAE51c91A907b4

Transaktion auf Etherscan https://etherscan.io/address/0x863df6bfa4469f3ead0be8f9f2aae51c91a907b4Geben Sie hier die Bildbeschreibung ein

Hackeradresse : 0xae7168deb52586 ... (nur zwei TXs)

immer noch verwirrt, hilfe bitte :(
Dieser Kommentar eines Entwicklers kann helfen, github.com/ethereum/EIPs/pull/42#issuecomment-160237928 zu verstehen . Eine Selbstzerstörung entfernt nur den Vertragscode aus dem Weltstaat, aber die Vertragsadresse existiert immer noch, sie kann Ether und Token empfangen. Wenn Sie die Vertragsadresse anrufen, wird diese ignoriert, wie jede andere Adresse ohne Code.
danke für den Link zu diesem Kommentar, es ist hilfreich. Ich möchte fragen, was "Adresse ohne Code" ist? Kannst du mir ein Beispiel geben? Danke
In Ethereum gibt es zwei Arten von Konten: „externe Konten“ und „Verträge“. Der einzige Unterschied besteht darin, dass Verträge einen „Code“ mit dem Bytecode des Vertrags haben.

Antworten (1)

Sie werden feststellen, dass er auf der Registerkarte „Vertragscode“ als „Selbstmord“ gekennzeichnet ist.

Die Geschichte eines selbstzerstörten Vertrags verschwindet nicht, weil er sich auf der Blockchain befindet. Stattdessen wird der im Status gespeicherte Bytecode des Vertrags entfernt, sodass nicht archivierte Knoten Speicherplatz freigeben können.