Man sagt, dass Verträge nach ihrer Bereitstellung nicht mehr geändert werden können. Warum lassen sich manche Projekte trotzdem aktualisieren?
Nach der Bereitstellung auf Ethereum kann der Bytecode eines Vertrags selbst nicht geändert werden. Projekte, die aktualisierbar sind, verwenden in der Regel ein Proxy-Muster. Der Proxy-Vertrag führt den Code des Logikvertrags per delegatecall aus. Dabei läuft der Code im Speicher-Kontext des Proxy-Vertrags.
Viele Protokolle übertragen die Upgrade-Berechtigung an Multisig-Wallets oder verwalten sie über Governance-Abstimmungen. Zusätzlich richten sie eine Zeitsperre ein: Ein Upgrade wird erst nach einigen Tagen öffentlicher Ankündigung wirksam, sodass Nutzer Zeit haben, ihre Gelder abzuziehen.
Zum Vergleich mit den Marktdaten: $ETH aktueller Kurs 2415.64, 24 Std. -3.77%.
Nach der Bereitstellung auf Ethereum kann der Bytecode eines Vertrags selbst nicht geändert werden. Projekte, die aktualisierbar sind, verwenden in der Regel ein Proxy-Muster. Der Proxy-Vertrag führt den Code des Logikvertrags per delegatecall aus. Dabei läuft der Code im Speicher-Kontext des Proxy-Vertrags.
Viele Protokolle übertragen die Upgrade-Berechtigung an Multisig-Wallets oder verwalten sie über Governance-Abstimmungen. Zusätzlich richten sie eine Zeitsperre ein: Ein Upgrade wird erst nach einigen Tagen öffentlicher Ankündigung wirksam, sodass Nutzer Zeit haben, ihre Gelder abzuziehen.
Zum Vergleich mit den Marktdaten: $ETH aktueller Kurs 2415.64, 24 Std. -3.77%.