Можно ли идентифицировать смарт-контракт, зная его байт-код?

В настоящее время я пишу магистерскую диссертацию об Ethereum. В диссертации я разрабатываю систему для отправки данных и выполнения расчетов с данными на блокчейне ethereum со смарт-контрактом. Система, которую я создаю, состоит из трех акторов. Генератор данных, актор, который получает эфириум на основе данных, и третья сторона, покупающая данные, созданные генератором данных. Генератор данных отправляет данные в смарт-контракт, развернутый субъектом, который получает эфириум на основе данных. Я хочу защитить эти данные, чтобы третья сторона не могла получить данные, которые отправляются в смарт-контракт. Шифрование данных перед их отправкой в ​​смарт-контракт невозможно, потому что контракт должен будет расшифровать данные для отправки эфира на основе данных. При этом я хочу скрыть данные от третьего лица.

Это модель системы:

введите описание изображения здесь

Важно, чтобы третья сторона не могла легко просматривать транзакции и находить данные, отправленные в смарт-контракт.

Может ли третья сторона использовать смарт-контракт один раз, получить байт-код контракта и выполнить поиск в блокчейне, чтобы найти адрес контракта, а затем просмотреть все транзакции, сделанные в контракте и из контракта?

И после этого получить все данные, отправленные в смарт-контракт? Есть ли другой способ получить данные, отправленные в смарт-контракт?

Ответы (2)

Если третья сторона использует контракт, то она уже знает его адрес, и да, они могут тривиально просмотреть все транзакции, связанные с этим адресом, и прочитать все данные в них.

РЕДАКТИРОВАТЬ

И чтобы ответить на вопрос в заголовке, да, вы можете найти смарт-контракты по их байт-коду. (Поэтому, если вы знаете байт-код, вы можете найти все развернутые контракты с таким же байт-кодом.)

Спасибо за ваш ответ. Что касается отредактированной части, это тривиальный процесс? Есть ли способ смягчить это?
Все в Ethereum полностью общедоступно. Любой, кто управляет узлом, имеет все контракты и все транзакции на своем жестком диске. Невозможно запретить им просматривать эти данные. (А онлайн-инструменты упрощают такой поиск/добычу.)
  1. Простая схема ZKP, которую я использовал, была вдохновлена ​​этим файлом .
  2. Если они используют смарт-контракт, они знают его адрес.
  3. Учитывая, что заинтересованная часть знает версию компилятора и адрес, используемый для компиляции, да
Спасибо за ваш ответ. Я видел вашу схему ZKP, части вашей системы централизованы?
@Herligetider Вовсе нет.