Говорят, что процедура является re-entrant, если ее выполнение может быть прервано в середине, инициировано заново, и оба запуска могут завершиться без каких-либо ошибок при выполнении. В контексте смарт-контрактов Ethereum повторный вход может привести к серьезным уязвимостям. Самым известным примером этого был взлом DAO, в ходе которого был выведен эфир на сумму 70 миллионов долларов. Так что же такое уязвимость повторного входа? Как это работает и как это предотвратить? Механизм Примером повторно входящего…