Title: извлечение смарт контрактов из блокчейна Post by: Rubg on September 30, 2017, 09:40:53 PM Здравствуйте
Интересует такой момент, можно ли извлечь все смарт контракты из блокчейна эфира и декомпилировать их ? поясните подробно этот момент. Необходимы консультации, можно и платно. Title: Re: извлечение смарт контрактов из блокчейн Post by: aleks_raiden on October 01, 2017, 08:33:19 AM Не так все просто, но есть возможности - вот на Реддите целый топик, может что-то подскажет вам - https://www.reddit.com/r/ethereum/comments/3gpefj/decompiler/ (https://www.reddit.com/r/ethereum/comments/3gpefj/decompiler/)
Title: Re: извлечение смарт контрактов из блокчейн Post by: KostiaSA on October 02, 2017, 10:59:16 AM https://github.com/comaeio/porosity
Title: Re: извлечение смарт контрактов из блокчейн Post by: Rubg on December 06, 2017, 09:30:26 PM Так есть у кого готовое решение ? Если есть пишите в пм.
договоримся Title: Re: извлечение смарт контрактов из блокчейн Post by: yokotoka on December 11, 2017, 12:12:03 PM Если только из etherscan.io вытащить все заверифицированные контракты.
Декомпиляция в solidity из лапши опкодов - вряд ли на этом этапе возможна на практике. Title: Re: извлечение смарт контрактов из блокчейн Post by: Jaga-Jaga on December 11, 2017, 09:58:17 PM Если только из etherscan.io вытащить все заверифицированные контракты. Скорее всего это возможно, только код будет не очень читабельный. По аналогии с Java могу сказать что байткод декомпилируется и с ним вобщем можно работать.Декомпиляция в solidity из лапши опкодов - вряд ли на этом этапе возможна на практике. А зачем декомпилировать смарт контракты если в большинстве ICO смарт контракты можно итак прочитать? Title: Re: извлечение смарт контрактов из блокчейн Post by: amaclin1 on December 12, 2017, 03:46:19 AM Если только из etherscan.io вытащить все заверифицированные контракты. Декомпиляция в solidity из лапши опкодов - вряд ли на этом этапе возможна на практике. В целом, вариант по-моему только один - брать верифицированные контракты кстати, я бы не стал доверять эзерскану на 100%, может быть стоит самостоятельно перекомпилировать и перепроверять. Были вроде еще пара-тройка мест, где можно встретить код в исходном виде. Декомпилировать во что-то читаемое у меня лично не вышло, да в целом я и не особо старался, когда осознал масштаб задачи. Title: Re: извлечение смарт контрактов из блокчейн Post by: ShDenis on December 12, 2017, 07:39:20 AM Если только из etherscan.io вытащить все заверифицированные контракты. Скорее всего это возможно, только код будет не очень читабельный. По аналогии с Java могу сказать что байткод декомпилируется и с ним вобщем можно работать.Декомпиляция в solidity из лапши опкодов - вряд ли на этом этапе возможна на практике. А зачем декомпилировать смарт контракты если в большинстве ICO смарт контракты можно итак прочитать? Встречный вопрос - а как убедиться, что в блокчейн был залит именно заявленный смарт контракт без изменений? Или можно скомпилировать и сравнить коды? Title: Re: извлечение смарт контрактов из блокчейн Post by: amaclin1 on December 12, 2017, 07:59:14 AM Встречный вопрос - а как убедиться, что в блокчейн был залит именно заявленный В блокчейн заливается в виде байткода.смарт контракт без изменений? Или можно скомпилировать и сравнить коды? То есть проверка контракта сводится к тому, что надо с помощью компилятора определенной версии получить байткод и он должен полностью совпадать. Поэтому в текстах контрактов и указывают всегда - каким компилятором это собиралось для создания контракта. Title: Re: извлечение смарт контрактов из блокчейн Post by: Robhayes on December 12, 2017, 09:43:32 AM Один вопрос, компиляторы имеют открытый код? И кто их пишет?
Title: Re: извлечение смарт контрактов из блокчейн Post by: amaclin1 on December 12, 2017, 09:47:25 AM Один вопрос, компиляторы имеют открытый код? И кто их пишет? Это два вопроса. Думаю, что на оба из них вы сможете ответить самостоятельно, проявив немного усердия и сообразительности. (ответов я сам не знаю, но уверен что найти их несложно) Title: Re: извлечение смарт контрактов из блокчейн Post by: yokotoka on December 12, 2017, 01:02:12 PM Один вопрос, компиляторы имеют открытый код? И кто их пишет? Да, открытый. Пишет команда ethereum и сообщество. Вот здесь исходники: https://github.com/ethereum/solidity См. solc и его импорты. Title: Re: извлечение смарт контрактов из блокчейн Post by: Xtc on December 13, 2017, 10:05:19 PM Интересует такой момент, можно ли извлечь все смарт контракты из блокчейна эфира и декомпилировать их ? Они и так лежат у тебя на диске, вместе с блокчейном. Получить читаемый код из байт-кода невозможно, имена переменных и так далее пропадают после компиляции.Более-менее читаемый можно, уверен что в привате есть. У меня нету, так как не надо. Quote Декомпилировать во что-то читаемое у меня лично не вышло, да в целом я и не особо старался, когда осознал масштаб задачи. Для байткода питоновских .pyc файлов есть ведь платные сервисы, здесь проблемы и решения точно такие же.Title: Re: извлечение смарт контрактов из блокчейн Post by: amaclin1 on December 14, 2017, 03:55:59 AM Для байткода питоновских .pyc файлов есть ведь платные сервисы, здесь проблемы и решения точно такие же. Я в целом понимаю. В конце концов не первый год замужем.У меня курсовая работа на 4-ом курсе была "Эмулятор команд контроллера массовой памяти Электроники СС-БИС" вы думаете с тех пор я не научился байткоды разные парсить? Эх, молодежь. Да что вы вообще знаете о том, как делать реверс-инжиниринг байткода с помощью sourcer? Ну ладно. Контрольный вопрос. На что надо поменять E6 61 и зачем? |