Виталик Бутерин рассказал о концепции, которая может решить проблему раскрытия данных пользователей криптокошельков. Он предложил внедрить скрытые адреса (stealth addresses) для анонимных пиринговых транзакций в сети ETH.
![Схема выполнения транзакций с использованием скрытого адреса Схема выполнения транзакций с использованием скрытого адреса](https://habrastorage.org/getpro/habr/upload_files/c36/fc8/aa0/c36fc8aa0d8109fd2b98575275f79a79.jpg)
Бутерин объяснил, что для этого потребуется создать расходный ключ (spending key) и с его помощью сгенерировать невидимый мета-адрес. Затем его нужно будет сообщить отправителю перевода, который расшифрует адрес и увидит скрытый адрес получателя.
Это позволит не только анонимизировать одноранговые транзакции, но и передачу NFT, а также регистрацию в службе Ethereum ENS.
При этом для каждой новой транзакции потребуется создавать отдельный скрытый адрес.
![Полный рабочий процесс схемы скрытых адресов Полный рабочий процесс схемы скрытых адресов](https://habrastorage.org/getpro/habr/upload_files/957/a23/1fb/957a231fba744afd188e48a76d8cb5a1.png)
Для защиты от третьих лиц Бутерин предлагает использовать криптографические ключи. Однако для оплаты комиссии за вывод цифровых активов из невидимого адреса придётся пользоваться криптографическим протоколом ZK-SNARK для сохранения секретности, что потребует дополнительных расходов в виде нескольких сотен тысяч газа.
Бутерин напомнил, что скрытые адреса — это частные, одноразовые адреса, генерируемые с помощью протокола Диффи-Хеллмана с эллиптической кривой. Их начали внедрять ещё в 2014 году в эпоху подъёма биткоина. Визионер объяснил, как это работает, на примере Алисы и Боба:
Боб создаёт ключ m и вычисляет M = G * m, где G — общепринятая образующая точка для эллиптической кривой. Скрытый мета-адрес представляет собой кодировку M;
Алиса генерирует эфемерный ключ r и публикует эфемерный открытый ключ R = G * r.
Алиса может вычислить общий секрет S = M * r, Боб может вычислить тот же общий секрет S = m * R;
чтобы вычислить открытый ключ, Алиса или Боб могут вычислить P = M + G * hash(S);
чтобы вычислить закрытый ключ для этого адреса, только Боб может вычислить p = m + hash(S).
![](https://habrastorage.org/getpro/habr/upload_files/ce9/7f0/77b/ce97f077b6a493f40e0c9ef7eb61b7dc.png)
Бутерин отметил, что Ethereum Improvement Proposals (EIP), которые описывают стандарты для платформы, уже пытаются определить стандарт скрытых адресов, который одновременно поддерживает предложенный подход и даёт пользователям пространство для разработки собственных.
Ранее визионер заявил, что крах FTX должен стать уроком для всей криптовалютной отрасли. По его мнению, всегда лучше доверять «открытому и прозрачному коду, чем отдельным людям». При этом Бутерин уверен в стабильности работы блокчейна как такового.