В заявлении zkSync говорится что «средства в безопасности» и что компания «обнаружила элегантный способ разблокировать замороженный контракт».
В четверг Иден Ау, директор по исследованиям в The Block, первым отметил что проект привлек 921 ETH (1,7 миллиона долларов) за счет продажи токенов в основной сети zkSync Era, но средства оказались в ловушке смарт-контракта. Средства в контракте были заблокированы из-за проблемы с использованием функции .transfer() что привело к жесткой зависимости от стоимости газа.
Когда функция .transfer() используется для отправки эфира в смарт-контракт, срабатывает функция fallback(). Если для функции fallback() требуется больше выделенных 2300 газа, транзакция может завершиться неудачей, и средства застрянут.
Чтобы смягчить эти проблемы с газом, zkSync выдает предупреждение о функции .transfer() непосредственно в компилятор, что, вероятно, было проигнорировано командой Gemholic. Команда zkSync также заявила что Gemholic развернула контракты в основной сети Era без тестирования в тестовой сети или на локальном узле.
zkSync работает над решением проблемы с незначительным изменением уровня протокола, чтобы полностью восстановить средства, и планирует предоставить подробности в ближайшее время.
«Мы определили элегантное решение, способное решить более широкий класс проблем, связанных с газом. Оно потребует минимальных изменений протокола учета газа, но позволит полностью вернуть средства», заявили в команде zkSync В ответ на усилия zkSync Gemholic публично поблагодарил проект, добавив что они «искренне извиняются» за свои действия.
В четверг Иден Ау, директор по исследованиям в The Block, первым отметил что проект привлек 921 ETH (1,7 миллиона долларов) за счет продажи токенов в основной сети zkSync Era, но средства оказались в ловушке смарт-контракта. Средства в контракте были заблокированы из-за проблемы с использованием функции .transfer() что привело к жесткой зависимости от стоимости газа.
Когда функция .transfer() используется для отправки эфира в смарт-контракт, срабатывает функция fallback(). Если для функции fallback() требуется больше выделенных 2300 газа, транзакция может завершиться неудачей, и средства застрянут.
Чтобы смягчить эти проблемы с газом, zkSync выдает предупреждение о функции .transfer() непосредственно в компилятор, что, вероятно, было проигнорировано командой Gemholic. Команда zkSync также заявила что Gemholic развернула контракты в основной сети Era без тестирования в тестовой сети или на локальном узле.
zkSync работает над решением проблемы с незначительным изменением уровня протокола, чтобы полностью восстановить средства, и планирует предоставить подробности в ближайшее время.
«Мы определили элегантное решение, способное решить более широкий класс проблем, связанных с газом. Оно потребует минимальных изменений протокола учета газа, но позволит полностью вернуть средства», заявили в команде zkSync В ответ на усилия zkSync Gemholic публично поблагодарил проект, добавив что они «искренне извиняются» за свои действия.
ZkSync develops 'solution' to unfreeze $1.7 million stuck in smart contract
zkSync has found a solution to release the 921 ETH ($1.7 million) locked in Gemholic's smart contract on the Ethereum Layer 2 network, it claimed.
www.theblock.co