Розробник bitcoin наводить дев’ять питань щодо RNG у гаманці Coldcard

iconThe Defiant
Поділитися
AI summary iconКороткий зміст
Новини про bitcoin: 9 листопада розробник bitcoin Люк Дашджр висвітлив дев’ять питань, пов’язаних з RNG, у апаратному гаманці Coldcard від Coinkite. Дашджр зазначив, що раніше повідомляв про ці проблеми приватно і не знав, чи вони були виправлені. Його огляд був швидким оглядом, а не повним аудитом. Це розголошення відбулося після інциденту з генерацією seed у Coldcard у липні. Дашджр зазначив відсутність перевірок і слабку детекцію помилок у оновленому коді. Coinkite додала перевірки RNG у пізніших прошивках, включаючи детекцію помилок seed і самотестування апаратного RNG. Деякі проблеми, такі як перевірки на повторювані вихідні дані та обробка помилок годинника, залишаються невирішеними. Новини про bitcoin продовжують підкреслювати проблеми безпеки в апаратних гаманцях.

Розробник bitcoin Люк Дашджр 9 листопада публічно висловив дев’ять занепокоєнь щодо коду генерації випадкових чисел у апаратному гаманці Coldcard від Coinkite, сказавши, що раніше повідомляв про них компанії приватно.

«Я не стверджую, що всі вони можуть бути використані як зброя, або що це точно всі помилки», — написав Дашджер у своєму розкритті. Він сказав, що не знає, чи виправив Coinkite ці проблеми, і описав свій огляд як швидкий огляд, а не повну аудиторську перевірку.

Його допис посилається на версію прошивки за липень. Пізніші примітки до випуску Coinkite та опублікований код показують зміни, що вирішують кілька з піднятих ним питань, зокрема перевірки на помилки насіння чіпа та тест запуску шляху апаратного RNG.

https://x.com/i/status/2119836060306018364

Розкриття відбулося після інциденту з генерацією посівів у Coldcard у липні. Coinkite стверджує, що нападники використали ослаблені посіви гаманця, відновивши приватні ключі автономно та вкрадені кошти, не отримавши віддаленого доступу до пристроїв.

нумеровані пости Dashjr викликали занепокоєння щодо коду, використаного після попереднього виправлення:

Він поставив під сумнів, чи слід відкидати початкові випадкові вибірки під час запуску, зазначив відсутність перевірок на початкове значення чіпа та помилку годинника, і сказав, що інструкція до чіпа передбачає постобробку для криптографічних застосувань.

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

Він запитав, чому випадковість елемента безпеки не зберегла очікувану міць, закликав до повного тестування новоувімкненого шляху RNG та вимагав перевірки на пристрої, а не лише покладатися на захисти на етапі збірки.

Він попередив, що таймаут, оброблений у контексті, здатному безпечно обробити виняток Python, може призвести до невизначеної поведінки, що потенційно може призвести до збою пристрою або зробити його непридатним для використання.

Dashjr сказав, що вийшов на публіку, дізнавшись, що NVK стверджує, що люди не можуть знайти дефект Coldcard. Раніше того ж дня генеральний директор Coinkite Родольфо Новак, відомий як NVK, написав, що «для виявлення того, чого не змогли знайти люди, знадобилася нова модель ШІ». Пост Новака стосувався виявлення попереднього дефекту генерації seed; технічний тред Dashjr стосувався коду після виправлення.

Пізніше в прошивку додано перевірки RNG

Сторінка завантаження Coinkite download page вказує 5.6.3 як поточну стандартну прошивку для Mk4/Mk5 та 1.5.3Q для Q. Його історія випусків вказує, що виявлення помилок у сіді та самотестування при запуску апаратного RNG було додано у версії 5.6.1, випущеній 20 серпня.

опублікований Mk4-джерел для 5.6.3 відкидає зразки розігріву, перевіряє прапори помилок насіння, повторює невдалі спроби та перевіряє, чи досягають виклики апаратного генератора випадкових чисел. У примітках до випуску також зазначено, що обидва безпечні елементи тепер відбираються безпосередньо для кожного нового основного насіння, а не лише вносять внесок через ініціалізацію RNG під час завантаження.

Поточне джерело все ще розміщує перевірку на повторювані виводи в процедурі буферизованого читання, а не в кожному прямому виклику. Його коментарі стверджують, що прапорці помилок годинника навмисно ігноруються, посилаючись на документацію чіпа, де зазначено, що ці помилки не роблять згенеровані числа недійсними.

Для користувачів, які постраждали від інциденту в липні, поточні рекомендації Coinkite залишаються такими: оновлення прошивки не відновлює вже ослаблений посів. Цим користувачам слід дотримуватися рекомендацій щодо міграції, якщо лише виняток з незалежним кубиком згідно зі звітом не застосовується.

Відмова від відповідальності: Інформація на цій сторінці може бути отримана від третіх осіб і не обов'язково відображає погляди або думки KuCoin. Цей контент надається лише для загального інформування, без будь-яких запевнень або гарантій, а також не може розглядатися як фінансова або інвестиційна порада. KuCoin не несе відповідальності за будь-які помилки або упущення, а також за будь-які результати, отримані в результаті використання цієї інформації. Інвестиції в цифрові активи можуть бути ризикованими. Будь ласка, ретельно оцініть ризики продукту та свою толерантність до ризику, виходячи з ваших власних фінансових обставин. Для отримання додаткової інформації, будь ласка, зверніться до наших Умов використання та Розкриття інформації про ризики.