Іноді ми просто хочемо безпечно надіслати ETH. Увійдіть у новий «safeMoveETH» від Solady. Існує багато способів відправити ETH на смарт-контракт: - «ДЗВІНОК»: Відкривається для газового горя, атак повторного входу. - "трансфер": Це фактично "ДЗВІНОК" зі стипендією на газ у розмірі 3000 газу під капотом. Якщо ціна на газ змінюється (наприклад, L2 з індивідуальними витратами на газ), або якщо метою є контракт з резервною функцією, це розривається. - 'WETH': Немає канонічного контракту WETH для всіх L2. Ніхто не має простору для байт-коду для жорсткого кодування всіх різних адрес). Крім того, ви витратите 20 тисяч газу на свіжий SSTORE, 5 тисяч газу на оновлення SSTORE. Дуже дорого. - «САМОЗНИЩЕННЯ»: Ми можемо приготувати щось з його допомогою. Після EIP-6780 цим можна зловживати для досить ефективної передачі сили. 'safeMoveETH' використовує канонічне мінімальне 'САМОЗНИЩЕННЯ' для переміщення ETH без спрацьовування 'запасного варіанту' ніколи. Якщо "SELFDESTRUCT" коли-небудь буде заблокований у майбутньому (розробники ядра, будь ласка, цього не роблять), він витончено деградує до сховища за адресою "just-in-time-create2", щоб накопичувати ETH незалежним від ланцюжка способом. В принципі, що б не трапилося, ETH ніколи не застрягне.
21,44K