На прошлой неделе была раскрыта давняя тайна биткоина, пишет Coindesk.

Нет, это не личность Сатоши Накамото, хотя и в этом направлении наметились интригующие сдвиги.

Речь о закрытом ключе, созданном создателем криптовалюты и переданном нескольким доверенным биткоин-разработчикам, который активирует так называемую «систему оповещения» в случае, если обнаруживается угроза средствам держателей биткоина.
Если вы не знали, что такая система у биткоина была, то это потому, что от нее отказались еще в 2016 году из-за проблем с безопасностью и часто возникающей путаницей при ее использовании.

Впервые она была имплементирована в версию сети 0.3.10 и вплоть до выпуска версии 0.13.10 служила для оповещения клиентов о критических уязвимостях или атаках.

Однако разработчики были обеспокоены потенциальной возможностью ложной тревоги в случае, если ключ попадет в руки не тому человеку – а подобные манипуляции могут существенно повлиять на курс криптовалюты.
«Система оповещения была частым источником недоразумений в отношении модели безопасности и эффективного управления», – пояснил известный разработчик Bitcoin Core Грег Максвелл в своем сообщении от сентября 2016 года.
В кодовую базу сети тревожный ключ был вписан еще создателем биткоина Сатоши Накамото, однако он лично, насколько известно, его не использовал.

В 2013 году ключ использовался для предупреждений о возникновении незапланированного форка, кроме того с его помощью предупреждали о необходимости срочного обновления ПО.
Многие в биткоин-сообществе полагали, что вышеозначенные ключи могут быть использованы для изменения сетевых правил, что на самом деле не так.

Например, разработчик BitcoinJ однажды попробовад использовать ключ для того, чтобы контролировать комиссии в сети, в то время как сотрудник Bloq убеждал разработчиков Bitcoin Core использовать ключ для изменения сложности майнинга.
Об обнародовании секретных ключей впервые заявил совладелец Bitcoin Core Брайан Бишоп из LedgerX.

«Это обещает быть интересным шоу», – написал он в своем твиттере, целой чередой сообщений до этого намекая на то, что у него есть ключ и он не побоится его раскрыть.

Что и было сделано во вторник, 3 июля, во время конференции Building on Bitcoin 2018 в Лиссабоне.

Now everyone has that key #bitcoin #alertkey #BuildingOnBitcoin pic.twitter.com/gwH1gEMC0X

— Nick Schteringard (@NSchteringard) July 3, 2018


За несколько часов до старта конференции он и другой разработчик Bitcoin Core Эндрю Чоу также опубликовали сигнальные ключи в почтовой рассылке для разработчиков биткоина.
«В этом письме раскрываются сигнальные ключи биткоина.

Этому предшествовало раскрытие нескольких известных уязвимостей в некогда существовавшей системе оповещений.

В настоящий момент система полностью упразднена, поэтому никаких рисков для сети это не несет.

Цель публикации – смягчение последствий несанкционированного распространения и использования ключей.

Это предупреждение может быть проигнорировано, если только вы не используете древнюю ноду (v0.12.x или старше)», – написал Брайан Бишоп, приложив следующие ключи:

  • Публичный ключ для основной сети:


04fc9702847840aaf195de8442ebecedf5b095cdbb9bc716bda9110971b28a49e0ead8564ff0db22209e0374782c093bb899692d524e9d6a6956e7c5ecbcd68284

  • Приватный ключ для основной сети:


30820113020101042053cdc1e0cfac07f7e1c312768886f4635f6bceebec0887f63a9d37a26a92e6b6a081a53081a2020101302c06072a8648ce3d0101022100fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f300604010004010704410479be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8022100fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141020101a14403420004fc9702847840aaf195de8442ebecedf5b095cdbb9bc716bda9110971b28a49e0ead8564ff0db22209e0374782c093bb899692d524e9d6a6956e7c5ecbcd68284

  • Публичный ключ для тестовой сети:


04302390343f91cc401d56d68b123028bf52e5fca1939df127f63c6467cdf9c8e2c14b61104cf817d0b780da337893ecc4aaff1309e536162dabbdb45200ca2b0a

  • Приватный ключ для тестовой сети:


308201130201010420474d447aa6f46b4f45f67f21180a5de2722fc807401c4c4d95fdae64b3d6c294a081a53081a2020101302c06072a8648ce3d0101022100fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f300604010004010704410479be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8022100fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141020101a14403420004302390343f91cc401d56d68b123028bf52e5fca1939df127f63c6467cdf9c8e2c14b61104cf817d0b780da337893ecc4aaff1309e536162dabbdb45200ca2b0a
Предполагается, что сделать ключ достоянием общественности Бишопа побудил давний спор с Крейгом Райтом, неоднократно приписывавшим себе создание биткоина, но так и не предоставившим тому никаких доказательств.

В своем июньском сообщении Бишоп отметил, что в отличие от него (и ряда других биткоин-разработчиков) Райт не может подписывать свои сообщения тревожным ключом биткоина.


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

Теперь же, судя по довольно раздраженному твиту Бишопа, система оповещения «определенно мертва».

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

Прецеденты уже случались – так, малоизвестный протокол Feathercoin, скопировавший код Litecoin, получил предупреждение сети Litecoin о необходимости обновления до последнего клиента.

Именно в этой связи Грег Максвелл в свое время пообещал сделать все, чтобы выявить аналогичные биткоину кодовые базы криптовалют и удалить из них код «тревожной кнопки», после чего раскрыть ключ общественности – но последнее за два года так и не было сделано ни Максвеллом, ни другими разработчиками.

Так или иначе, авторы прочих криптовалют имеют возможность загрузить с GitHub патч для защиты нод от потенциальных атак с использованием этих ключей.