- Вернуться к меню
- Вернуться к менюЦены
- Вернуться к менюИсследовать
- Вернуться к менюКонсенсус
- Вернуться к менюПартнерский материал
- Вернуться к меню
- Вернуться к меню
- Вернуться к менюВебинары и Мероприятия
В связи с «крупным провалом» проверка кода Bitcoin оказалась под пристальным вниманием
После обнаружения серьезной уязвимости кода разработчики Bitcoin задаются вопросом, достаточны ли текущие процессы проверки кода для предотвращения дальнейших сбоев.
«Шок» — пожалуй, слово, которое лучше всего описывает настроение, сложившееся с тех пор, как на прошлой неделе была обнаружена и исправлена ONE из самых серьезных ошибок биткоина.
В то время как сообщество осознает уязвимость, которая былапрятался в коде два года, и это могло бы бытьэксплуатируется для печати большего количества биткойновчем 21 миллион, которые должны быть созданы, разработчики задаются вопросом: есть ли способ предотвратить повторное добавление столь серьезной ошибки в код?
Спустя несколько дней после обнаружения T было никаких официальных предложений. Но это не значит, что событие T вызвало дискуссий о том, как работает Bitcoin и как можно будет в будущем выявить и устранить похожие ошибки в самой популярной программной реализации криптовалюты, Bitcoin CORE.
Это также важный вопрос – А что, если злоумышленник первым нашел эксплойт? А что, если в коде сейчас есть другие скрытые ошибки?
В этот момент псевдонимный модератор сабреддита Bitcoin «Theymos» призвал сообщество не забывать об этой ошибке.
Он утверждалВ широко распространенном сообщении было сказано, что это «несомненно, крупный провал», и добавлено:
«Если все политики и практики Bitcoin Core останутся прежними, то неизбежно, что подобный сбой в конечном итоге повторится, и в этот раз нам может не так повезти с тем, как все обернется».
Тем не менее, можно утверждать, что Bitcoin CORE, работающий на основе открытой сети глобальных участников, теперь имеет более надежный процесс проверки кода, чем когда-либо в истории технологии.
Прямо сейчас реализация имеетбольше разработчиков, чем когда-либо вносит вклад в открытую кодовую базу. И она довольно BIT тестируется; по ONE из оценок, тесты составляют около 20 процентов кодовой базы.
«Вина» сообщества
Тем не менее, разработчики утверждают, что можно сделать больше, чтобы обеспечить бесперебойную работу цифровых денег.
Theymos считает, что ONE из путей было бы создание «более сложных» тестов, предназначенных для обнаружения серьезных, но трудно обнаруживаемых ошибок, как на прошлой неделе. «Возможно, все крупные компании Bitcoin должны ожидать от сообщества назначения опытных специалистов по тестированию в CORE», — продолжил он, добавив:
«В настоящее время многие компании T вносят никакого вклада в разработку CORE ».
Участник Bitcoin CORE Джеймс Хиллиард подчеркнул то же самое, предположив, что разработчики могут увеличить «количество» и «качество» тестирования. Хотя, возможно, это легче сказать, чем сделать. Участник Bitcoin CORE Грег Максвелл согласился в теме Theymos, что тестирование важно, но качество и детализация тестов также важны.
«Направление больших усилий на тестирование стало для нас долгосрочной задачей, отчасти потому, что искусство и наука тестирования не менее сложны, чем любой другой аспект проектирования системы. Тестирование требует особых навыков и способностей, которые есть не у всех», — сказал Максвелл.
Такого рода экспертизу трудно найти.
«Разработка Bitcoin во многом сдерживается проверкой кода, и не так много людей способны это сделать», — сказал Хиллиард в интервью CoinDesk.
Однако многие другие считают, что ответственность T должна лежать только на разработчиках. Общим мнением было то, что, поскольку это децентрализованный проект без лидеров, поддержание Bitcoin без ошибок — это общая ответственность.
«Главная проблема, с которой я столкнулся во многих негативных реакциях, заключается в том, что люди указывают на конкретных разработчиков, чтобы возложить вину. Весь проект открыт, в нем нет «членства», и пользователи несут такую же ответственность за аудит кода, как и разработчики, активно вносящие свой вклад», — рассказал CoinDesk анонимный Bitcoin энтузиаст Shinobimonkey.
Такое мнение разделяет и разработчик Bitcoin CORE Владимир ван дер Лаан, которыйтвитнул, «Неправильно было объединять ошибочный код. Да, мы облажались, но «мы», которые облажались, очень широки. Все сообщество облажалось, недостаточно тщательно просматривая изменения консенсуса».
Инженер Chaincode Джон Ньюберрисогласованный. Несмотря на то, что он T писал ошибочный код, он утверждал, что как разработчик в мире Bitcoin он также сыграл свою роль в ошибке, поскольку не присмотрелся достаточно внимательно.
Он зашел так далеко, что сказал, что рассматриваемый код показался ему забавным. Однако он предположил, что другие уже проверили.
«Вместо того чтобы проверить самому, я доверился тому, что люди умнее и мудрее меня уже обо всем позаботились. Я считал само собой разумеющимся, что эту работу выполнил кто-то другой», — заявил он.
Несколько Bitcoin ядер
Тем не менее, некоторые утверждают, что риск появления ошибок будет существовать всегда.
«В Bitcoin уже были ошибки, и они будут снова. Это просто программное обеспечение. В нем нет ничего магического», твитнулОперационный директор Blockstream Сэмсон Моу.
В этом же ключе популярна еще одна идея.
Сегодня в Bitcoin есть ONE основное программное обеспечение для Bitcoin , Bitcoin CORE, которым управляет 95 процентов узлов Bitcoin . (По крайней мере, таковы данные ONE подсчета. Интересно, что увидеть каждый узел Bitcoin невозможно, поскольку некоторые узлы хотят большей Политика конфиденциальности и T афишируют свое существование остальной части сети.)
Итак, ONE из идей заключается в том, чтобы сделать больше реализаций кода Bitcoin . Таким образом, если в ONE реализации будет катастрофическая ошибка, которая приведет к сбою сети, другие реализации все равно будут в порядке, поддерживая работу Bitcoin в целом.
И в определенной степени это уже существует. Существуют менее известные реализации кода, такие как Bitcoin Knots и Btcd. В других местах в мире Криптовалюта это становится нормой. Например, у Ethereum есть две доминирующие реализации, geth и parity, каждая из которых может использоваться любым, кто запускает программное обеспечение.
Тем не менее, многие разработчики Bitcoin опасаются, что добавление более ONE реализации может привести к проблемам, которые будут еще серьезнее, чем уязвимость прошлой недели.
«Многие люди не понимают, что использование разных реализаций упрощает злоумышленникам задачу по разделению сети», — Эндрю Чоу, один из авторов Bitcoin CORE. утверждалв беседе, описывающей плюсы и минусы.
Таким образом, разработчики T всегда приходят к единому мнению о том, что именно необходимо сделать.
Возможно, лучше всего он выразился, когда сказал:
«Я T знаю точно, как можно предотвратить повторение этого, но я знаю, что для сообщества было бы ошибкой игнорировать эту ошибку только потому, что на этот раз она оказалась практически безвредной».
Металлический щитизображение через Shutterstock
Alyssa Hertig
Алисса Хертиг, технический репортер CoinDesk, программист и журналист, специализирующийся на Bitcoin и Lightning Network. На протяжении многих лет ее работы также появлялись в VICE, Mic и Reason. В настоящее время она пишет книгу, в которой исследует все тонкости управления Bitcoin . Алисса владеет некоторым количеством BTC.
