Hätte beinahe einen „schwerwiegenden“ Bug wegen 100 Milliarden Wei gemeldet … der Mock hat gelogen
In meinem neuesten Bug-Bounty-Protokoll stieß ich auf einen vermeintlich kritischen Rundungsfehler in einem tranchierten Renditeprodukt: 100.000.000.000 Wei Verlust pro Redeem. Kumulierte Abrundungen über zwei Umrechnungsebenen. Ein Entwurf mit dem Schweregrad „Hoch“, bereit zum Einreichen. Aber meine Validierungsregel lautet: erst auf einem Mainnet-Fork reproduzieren, bevor ich einer Zahl glaube. Der Clou: Der Mock-Pool ging von 18 Dezimalstellen und einem Divisor von 1e30 aus. Der echte Token hat 6 Dezimalstellen und einen Divisor von 1e18. Diese Abweichung im Maßstab um den Faktor 1e12 sorgte dafür, dass der Mock bei jedem Redeem null zurückgab – der Verlust entsprach also dem angeforderten Betrag. Es war kein Protokollfehler – mein Test-Harness war kaputt. Auf dem Mainnet betrug der tatsächliche Verlust etwa 2–3 Wei pro Redeem und lag damit innerhalb des Rundungsbudgets von 100 Wei, das der Entwickler bereits eingeplant hatte. Absichtlich. Die wichtigsten Erkenntnisse:
Ich begeistere mich für Kryptowährungen, Blockchain und Web3. Ich freue mich darauf, dieser Community beizutreten und mein Wissen und meine Erfahrungen mit euch allen zu teilen.
Besonders interessiert mich, mehr über die neuesten Trends im Bereich der Kryptowährungen zu erfahren. Ich glaube, dass diese Technologien das Potenzial haben, die Welt zu revolutionieren, und kann es kaum erwarten, Teil dieses Wandels zu sein.
Außerdem möchte ich mich mit anderen Krypto-Enthusiasten austauschen. Ich hoffe, Menschen zu finden, die meine Interessen teilen und bereit sind, gemeinsam zu lernen und zu wachsen.
Anmelden und weiter Inhalte entdecken
Krypto-Nutzer weltweit auf Binance Square kennenlernen
⚡️ Bleib in Sachen Krypto stets am Puls.
💬 Die weltgrößte Kryptobörse vertraut darauf.
👍 Erhalte verlässliche Einblicke von verifizierten Creators.