Могут ли майнеры Blockchain видеть конфиденциальную информацию о транзакциях? Поскольку у них есть открытый ключ, они расшифровывают транзакцию с целью проверки. Поэтому, если я занимаюсь майнингом в Ethereum, я могу настроить код узла, чтобы регистрировать детали транзакции на своем жестком диске. Блокчейн не подходит там, где важна конфиденциальность?
Транзакции Ethereum не зашифрованы, поэтому расшифровка не требуется. Регистрация всех транзакций на диск является частью работы узла (майнера или любого полного узла), поэтому никаких настроек не требуется. Вы можете увидеть каждую историческую транзакцию в открытом виде на таких сайтах, как Etherscan .
Таким образом, в публичном блокчейне Ethereum нет конфиденциальности транзакций.
Это может измениться в будущем, если/когда технология ZK Snark будет реализована. Существуют варианты Ethereum (например, Quorum) с механизмами для частных транзакций, но они не переносятся в общедоступную цепочку блоков Ethereum.
Все, что транслируется в сеть, включая все транзакции, является общедоступным для всех узлов . Вопрос только в том, находится ли эта информация в открытом виде или нет. Вы не определили "конфиденциальную информацию о транзакции". Если вы имеете в виду, что транзакция вообще имела место (которую некоторые люди могут считать конфиденциальной), то нет. Если вы имеете в виду такие вещи, как получатель или сумма, введение zkSNARK в Metropolis — это начало добавления конфиденциальности для них. Если вы используете пользовательский токен (в настоящее время не совместимый с ERC), то zkSNARKs должен разрешить добавление такого типа конфиденциальности к токену.
Если вы имеете в виду некоторые другие данные, которые вы хотите использовать в своей транзакции, относящиеся к контракту, который вы пишете, вы можете использовать стандартные методы шифрования (с достаточным количеством газа) или даже гомоморфное шифрование , если это необходимо. Это можно сделать в настоящее время.
Техники запутывания, такие как переворачивание , также могут удовлетворить ваши потребности.
Точно так же, как объяснялось другими в этой ветке, невозможно скрыть транзакции в Ethereum с помощью доступных там примитивных инструментов.
Однако через два года после того, как был опубликован этот вопрос, был запущен протокол AZTEC , и я опубликовал «Как закодировать свой собственный конфиденциальный токен в Ethereum» — статью, в которой описывается, как связать обычный токен ERC20 с конфиденциальной версией.
Отказ от ответственности: я работаю в AZTEC штатным инженером по блокчейну.
Спрашивающий