Что такое конфиденциальные транзакции (Confidential Transactions)?

Как работает технология конфиденциальных транзакций?

Технология реализует новые форматы адреса и транзакции. Формат транзакции состоит из scriptPubKey, схемы обязательства Педерсена и случайного кода ECDH (эллиптической кривой Диффи-Хелмана).

ScriptPubKey содержит адрес конфиденциальной транзакции (Confidential Transaction Address — CTA) и математическое условие, согласно которому биткоин можно потратить только в том случае, если право собственности закрытого ключа адреса подтверждено подписью.

Адрес конфиденциальной транзакции – это хеш ослепляющего ключа плюс обычный биткоин-адрес.

Функция ослепляющего ключа – скрывать в публичном реестре адрес биткоина и сумму транзакции. Кроме того, доступ к ослепляющему ключу дает возможность видеть адрес биткоина и сумму в конфиденциальной транзакции.

Схема обязательства Педерсена – это хеш всего выхода биткоина плюс ослепляющий ключ.

Код ECDH – это ключ, позволяющий раскрыть всю конфиденциальную транзакцию. Он используется для передачи зашифрованных данных получателю транзакции, который узнает выход биткоин-транзакции и ослепляющий фактор конфиденциальной транзакции.

Пример работы конфиденциальных транзакций.

На кошельке Алисы два биткоина, один из которых она хочет отправить Бобу.

Получив адрес Боба, Алиса создает ослепляющий ключ и объединяет их единым хешем. Так возникает конфиденциальный адрес. Хотя он записывается в публичном реестре, никто, кроме Алисы и Боба, не знает, что адрес конфиденциальной транзакции связан с адресом Боба.

Пример конфиденциального адреса:

CTEwQjyErENrxo8dSQ6pq5atss7Ym9S7P6GGK4PiGAgQRgoh1iPUkLQ168Kqptfnwmpxr2Bf7ipQsagi

Затем Алиса создает конфиденциальную транзакцию. Используя тот же самый ослепляющий ключ и выход одного биткоина, она создает обязательство Педерсена. Благодаря этому сумма, которую Алиса посылает Бобу, скрывается, но оба они могут видеть ее, поскольку у обоих есть публичный ослепляющий ключ. У Алисы он есть, поскольку она создала ослепляющий ключ, а Боб может вывести его с помощью закрытого ключа своего биткоин-адреса.

Затем Алиса создает scriptPubKey с адресом конфиденциальной транзакции, который она создала с биткоин-адресом Боба, с математическим условием, согласно которому можно потратить один биткоин, если Боб сумеет подтвердить подписью владение закрытым ключом адреса.

Затем транзакция записывается в публичном реестре.

Закладка Постоянная ссылка.

Комментарии запрещены.