Whirlpool, улучшающий конфиденциальность кошелька Samourai, теперь в публичной бета-версии
Разработчики Samourai Wallet опубликовали общедоступную бета-версию Whirlpool, реализацию Chaumian CoinJoin, которая состоит из фреймворка, поддерживаемого различными программными инструментами для повышения конфиденциальности..
Что такое Chaumian CoinJoin?
CoinJoin – это метод анонимизации, впервые предложенный Грегори Максвелл в 2013 году. Chaumian CoinJoin объединяет слепые подписи chaum – схему, которая предоставляет криптографически слепую версию адреса получателя. В качестве описал от ZeroLink, фреймворка взаимозаменяемости биткойнов:
«Пользователи подключаются и предоставляют входные данные (и меняют адреса) и криптографически скрытую версию адреса, на который они хотят пересылать свои личные монеты; сервер подписывает токены и возвращает их. Пользователи анонимно повторно подключаются, разблокируют свои выходные адреса и возвращают их на сервер. Сервер может видеть, что все выходы были подписаны им, и поэтому все выходы должны исходить от допустимых участников. Позже люди снова подключаются и подписываются ».
Это считается относительно быстрым и дешевым способом добавить анонимности транзакциям CoinJoin. Благодаря тому, что Samourai добавит эту функцию в свой кошелек, он может обеспечить значительный и простой в использовании уровень конфиденциальности для основных пользователей биткойнов..
Как подробно описано его разработчиками, фреймворк Whirlpool представляет собой полностью модульную реализацию CoinJoin, которая была разработана посредством «сильно модифицированного» форка теории ZeroLink..
Согласно официальному Github странице, программное обеспечение Whirlpool с открытым исходным кодом способно «математически отделить» право собственности на входы («адреса отправки») и выходы («адреса получения»), которые включены в транзакцию биткойнов. Диссоциация между заданным набором входных данных и их соответствующими выходными данными обеспечивает большую финансовую конфиденциальность при выполнении транзакций с биткойнами. Другими словами, переводы биткойнов становится трудно отслеживать, потому что источник (или отправитель) транзакции и ее получатель (-ы) не могут быть отслежены из-за диссоциации..
Функции конфиденциальности Whirlpool также улучшают общий взаимозаменяемость сети Биткойн. Взаимозаменяемость относится к атрибуту токена (в данном случае BTC), отдельные единицы которого взаимозаменяемы, в то время как каждая единица неотличима от других. Аналитики безопасности утверждают, что отслеживаемый характер транзакций биткойнов (переводы, доступные для просмотра через общедоступные обозреватели блоков) может снизить взаимозаменяемость флагманской криптовалюты. Это может произойти, если продавцы откажутся принимать «испорченный» биткойн, который мог быть использован для финансирования незаконной деятельности, такой как торговля наркотиками или отмывание денег..
Не сразу понятно, как эта функция соберет необходимых участников для быстрого проведения транзакций CoinJoin. Для включения мгновенных платежей потребуется немедленная доступность десятков участников. Например, с кошельком Wasabi с поддержкой CoinJoin может потребоваться несколько часов, чтобы собрать необходимые от 50 до 100 участников..
Доступная документация также оставляет неясным, как Самурай будет справляться с сопоставлением сумм – необходимость связать совпадающие входы и выходы, чтобы правильно их замаскировать..
Набор теоретической анонимности Whirlpool
Whirlpool включает в себя реализацию набора теоретической анонимности, который может экспоненциально расти «за минуты» вместо нескольких часов. Проще говоря, теория состоит в том, что все адреса отправки и получения смешиваются в набор, размер которого непрерывно увеличивается. Если это работает на практике, идея состоит в том, что этот набор становится больше и быстрее при использовании Whirlpool, и становится практически невозможно определить отправителя и получателей переводов биткойнов. В своей технической документации разработчики Samourai Wallet указали, что этого можно достичь, сосредоточив внимание на относительно небольших циклах CoinJoin, а не на работе с одним большим циклом, пояснили разработчики Samourai Wallet. Предположительно, проще работать с несколькими меньшими и более простыми циклами CoinJoin, чем сосредоточиться на одном большом и сложном цикле CoinJoin..
Команда Samourai также отметила, что Whirlpool модульная архитектура – разделение кода на более мелкие части, что позволяет каждой части кода выполнять простые задачи – должно позволить встраивать его фреймворк практически в любой тип среды разработки, включая фреймворк, используемый на смартфонах и настольных компьютерах..
Вообще говоря, передовой практикой программирования является написание модульного кода, то есть исходный код должен быть разделен на логические функции, которые можно вызывать по мере необходимости для выполнения определенных задач в компьютерных программах. Например, модульная программа может состоять из модулей кода для различных задач, таких как модуль для удаления транзакций из памяти и другой модуль для записи транзакций в память..
Более того, программное обеспечение Whirlpool с открытым исходным кодом было разработано для создания системы, которая может работать в рамках «ограничений мобильной среды». Большинство смартфонов имеют ограниченные аппаратные и программные ресурсы (по сравнению с настольными компьютерами), поэтому Whirlpool оптимизирован для эффективной работы даже при работе с такими ограничениями..
Такой подход к разработке программного обеспечения помог создать надежный протокол, который может быть реализован «в большинстве условий», что означает, что протокол будет работать должным образом в большинстве операционных систем, включая Windows, Linux и Android..
Разработано на «прочном математическом фундаменте»
Команда Самурая добавила, что еще одним важным аспектом дизайна Whirlpool является удобство использования. С этой целью он «сфокусировался на расходах» и обеспечил соблюдение передовых методов, чтобы автоматически избегать действий, которые могут поставить под угрозу конфиденциальность пользователей. Кроме того, фреймворк Whirlpool предлагает интуитивно понятный UX, с которым большинство пользователей уже должно быть комфортно..
Как отметила команда разработчиков, протокол, ориентированный на конфиденциальность, основан на «прочной математической основе». Каждый цикл Whirlpool максимизирует случайность за счет использования различных математических функций и методов. Кроме того, фреймворк Whirlpool гарантирует, что пользователи никогда не зацикливаются на себе..
Протокол также не допускает детерминированных связей между входами и связанными с ними выходами. Предотвращая формирование детерминированных ссылок, становится практически невозможно определить источник или происхождение средств и куда они могли быть переведены (то есть адреса получателей, связанные с транзакцией)..
Циклы гидромассажа также были реализованы таким образом, чтобы они не переключались с монеты, найденные в предыдущем цикле.
Использование «слепого» координатного сервера
Как было написано выше, структура Whirlpool использует управляемый Samourai «слепой» сервер-координатор для ретрансляции сообщений между клиентами. Хотя сервер-координатор может облегчить обмен данными между различными клиентами, он «критически» не может знать, что передается через сообщения, которые совместно используются участниками сети. Это означает, что сервер Samourai не может читать содержимое сообщений – критическая функция для пользователей, которые отдают предпочтение конфиденциальности и не хотят, чтобы сервер Samourai мог связывать входные и выходные данные..
Клиенты Windows, OSX, Linux, Android
Примечательно, что разработчики Samourai Wallet создали несколько клиентов с открытым исходным кодом, которые, как сообщается, обеспечивают неограниченный доступ к серверу координатора..
В настоящее время существует клиент доступно для пользователей операционных систем Windows, OS X и Linux. Как отметила команда Samourai, недавно разработанное программное обеспечение состоит из настольного клиента с графическим пользовательским интерфейсом электронного / реактивного интерфейса, который совместим с большинством операционных систем Linux, а также может работать в стандартных системах Windows и OS X. Пользователи Android также могут использовать функции платформы Whirlpool..
Однако следует отметить, что программное обеспечение Samourai Wallet для настольных ПК находится в публичной бета-версии и версии для мобильный в настоящее время находится в разработке, поэтому обе версии могут быть нестабильными. Для разработчиков есть REST API который можно использовать для начальной загрузки дополнительных приложений поверх инфраструктуры Whirlpool. Существуют также программные библиотеки Android и Java и клиент командной строки (CLI), которые доступны в репозитории Whirlpool-client..