Хорошо, я знаю, что блокчейн является общеизвестным. Но есть такие эксперименты, как Zcash, которые шифруют информацию об отправителе, получателе и сумме, и они все еще работают.
Я обдумываю, возможна ли служба арбитража блокчейна p2p. Например, вы хотите обменять ETH на BTC. Блокчейн генерирует 2 адреса, один из которых для BTC, а другой для ETH. Как только оба адреса финансируются, средства обоих пересылаются получателям. Чтобы сделать это с помощью блокчейна, должен быть безопасный способ хранения и использования закрытых ключей в блокчейне.
Это совершенно невозможно, или есть какие-то признаки того, что можно сделать что-то подобное?
Нигде в блокчейне не используется шифрование. Нет ключей для шифрования, так как каждый узел имеет ту же информацию, что и все остальные. Криптография задействована, но для подписи/доказательства. Не для шифрования.
Даже в случае с zcash шифрование не задействовано. Все, что делают кошельки, — это доказывают остальной части сети, что у них есть средства, которые они тратят. Единственная разница по сравнению с Биткойном заключается в том, что при этом он раскрывает меньше информации, и в результате доказательства намного сложнее.
блокчейны не генерируют приватные ключи — это не имеет смысла, поскольку цепочку могут видеть все.
У кошельков есть приватные ключи. Они никогда ни с кем не делятся. Они раздают соответствующие открытые ключи, чтобы получить оплату, и используют закрытый ключ, чтобы позже доказать другим, что они владеют определенными монетами.
Пример, который вы описываете с обменом, происходящим между двумя цепочками, возможен с использованием метода, называемого атомарным обменом между цепочками . Он основан на транзакциях с хешлоком, когда первый кошелек, который переводит свои деньги в одну цепочку, раскрывает случайное значение, которое хешируется до значения, известного заранее. Затем другая сторона использует этот прообраз, чтобы разблокировать средства на другой стороне.
Кто-то предложил что-то подобное, размещая зашифрованные файлы в сети IPFS (общедоступной, например, в блокчейне Ethereum), а затем отправляя ключи участникам для расшифровки.
Основатель Хуан Беннет выделил следующую цитату:
'Наивный пример: зашифровать файл каким-то секретом и поделиться секретом с людьми, у которых есть "разрешение на чтение"'
https://github.com/ipfs/ipfs/issues/86
Что вам действительно нужно, так это децентрализованная система возможностей.
https://github.com/autocontracts/permissioned-blocks/blob/master/whitepaper.md
(Отказ от ответственности, это официальный документ, который я написал)
Не рекомендуется отправлять закрытый асимметричный ключ в качестве транзакции блокчейна (которая является каналом связи) таким образом.
Здесь есть хорошая статья о ключевых биржах:
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.216.6107&rep=rep1&type=pdf
В этой статье автор также дает понять, что отправка закрытого ключа по каналу не является хорошей схемой:
«Когда ключ отправляется в сообщении, используется только открытый ключ, чтобы быть явным… Ни один из протоколов, изученных в этой статье, никогда не отправляет секретный ключ по сети».
https://dominictarr.github.io/secret-handshake-paper/shs.pdf
Открытые ключи предназначены для отправки по каналу. Не закрытый ключ. Шифрование можно взломать грубой силой. Как только у кого-то есть закрытый ключ, он может расшифровать все, что было зашифровано этим ключом.
blockchain data == channel
. Я думаю, вы предполагали, что это связь, которую делают люди, но я сомневаюсь, что они все так делают. Предложение, объясняющее это, могло бы помочь, тем более что термин "канал" на этом форуме чаще используется для обозначения "канал оплаты".
Марч
Хлоя