Генератор seed-фраз Bitcoin з відкритим вихідним кодом перетворив події радіоактивного розпаду на 12-словникові та 24-словникові фрази відновлення BIP39 за допомогою офлайн-апаратного пристрою.
Підсумок
- Entropy32 Plus перетворює час радіоактивного розпаду на дванадцяти- або двадцятичотирисловникові фрази відновлення Bitcoin в офлайн-режимі.
- Прошивка збирає 512 бітів порівняння, перш ніж обробити пул за допомогою власної реалізації SHA-256 локально в офлайн-режимі.
- Пристрій тимчасово зберігає згенеровані слова в RAM і надає команду ручного стирання після цього.
- Його розробник заявляє, що якість ентропії залишається неперевіреною відповідно до тестування NIST SP 800-90B та незалежного огляду.
- Файли з відкритим вихідним кодом охоплюють прошивку, друковані плати, дані для виготовлення, корпуси та список слів BIP39 для перевірки.
Репозиторій Entropy32 Plus, опублікований розробником Александром Хіггінсом у вересні 2026 року, містить прошивку проєкту, дизайн друкованих плат, файли для виготовлення та корпус для друку. Хіггінс описує пристрій як експериментальний, освітній проєкт і попереджає користувачів не довіряти йому значні кошти до незалежного огляду.
Відомий як «Біфуркатор Всесвіту», пристрій приймає імпульси від лічильника Гейгера та вимірює час між виявленими подіями. Його прошивка перетворює порівняння між послідовними інтервалами в біти, збирає 512-бітний вхідний пул і обробляє дані за допомогою SHA-256.
Потім Entropy32 Plus форматує частину отриманого хешу як стандартну фразу відновлення BIP39. Пристрій працює без Wi-Fi, Bluetooth або постійного зберігання seed-фраз, згідно з опублікованим дизайном.
Entropy32 Plus вимірює час між подіями випромінювання
Радіоактивний розпад відбувається непередбачувано на рівні окремих атомів. Entropy32 Plus використовує час виявлених подій розпаду як своє фізичне джерело випадковості, а не покладається виключно на програмно згенероване значення.
Поточна конструкція приймає імпульси через 3,5-міліметрове з'єднання від лічильника Гейгера GQ Electronics GMC-320S. Його документація зазначає, що лічильник може виявляти випромінювання від радіоактивного джерела або фонового випромінювання.
Після отримання імпульсу компаратор LM393 перетворює аналоговий сигнал лічильника в цифровий вхід. Спеціальна друкована плата передає цей сигнал мікроконтролеру ATmega328P.
Прошивка проєкту записує кожну прийняту подію за допомогою мікросекундного таймера. Вона порівнює останній інтервал з попереднім, утворюючи одиницю, коли новий інтервал довший, і нуль, коли він коротший.
Рівні інтервали відкидаються. Вимірювання нижче 200 мікросекунд відхиляються як можливі збої, тоді як прийняті порівняння продовжуються, поки пристрій не збере 512 бітів.
Хіггінс каже, що цей метод використовує часові характеристики імпульсів, оскільки точний момент окремої події розпаду неможливо передбачити. Розробник не стверджує, що кожне зібране порівняння дає один повний біт виміряної ентропії.
SHA-256 обробляє необроблені дані seed-фрази Bitcoin
Після завершення 512-бітного пулу Entropy32 Plus обробляє всі 64 байти через свій вбудований код SHA-256. Прошивка використовує перші 16 байтів отриманого хешу для 12-словникової фрази або всі 32 байти для 24-словникової фрази.
Згідно з проєктом, хешування призначене для зменшення видимих шаблонів, пов'язаних з часом відновлення детектора, змінами швидкості підрахунку або кореляціями між вимірюваннями. Хеш-обробка може розподілити доступну ентропію по виходу, але вона не доводить, скільки непередбачуваності було в початкових даних.
Прошивка містить тест запуску для SHA-256. Вона обчислює хеш «abc» і порівнює результат із відомим значенням. Пристрій зупиняється перед збором ентропії, якщо відповідь неправильна.
Успішне проходження самоперевірки підтверджує, що реалізація повертає очікуваний результат для цього тестового вектора. Вона не перевіряє лічильник Гейгера, не оцінює незалежність імпульсів і не вимірює мінімальну ентропію, що надходить у хеш.
Проєкт збирає вдвічі більше бітів порівняння, ніж максимальний 256-бітний вхід BIP39, який він створює. Доки фізичне джерело не пройде формальне вимірювання, репозиторій не встановлює, скільки корисної ентропії містить кожне порівняння.
Пристрій відображає кондиціоновані дані на слова BIP39
Після кондиціонування SHA-256 пристрій застосовує процес, визначений у специфікації BIP39. BIP39 перетворює затверджену довжину ентропії на мнемонічне речення, вибране зі стандартизованого списку з 2048 слів.
Для фрази з 12 слів Entropy32 Plus використовує 128 бітів кондиціонованих даних і обчислює чотирибітну контрольну суму. Об’єднані 132 біти поділяються на дванадцять 11-бітних груп, кожна з яких вибирає одне слово.
Його налаштування на 24 слова використовує 256 бітів і восьмибітну контрольну суму. Поділ отриманої 264-бітної послідовності дає 24 індекси слів.
Посібник Crypto.news щодо seed-фраз пояснює, що фрази відновлення містять інформацію, необхідну для відновлення доступу до гаманця. Будь-хто, хто отримає правильні слова в належному порядку, може відтворити ключі гаманця.
Seed-фраза сама по собі не є набором незалежно згенерованих слів. Як пояснював crypto.news у своєму посібнику з публічних і приватних ключів, сучасні біткойн-гаманці виводять багато приватних ключів з одного головного seed. Тому слабкість початкової ентропії може вплинути на кожну адресу, згенеровану з неї.
Entropy32 Plus компілює повний англійський список BIP39 у свою прошивку. За даними репозиторію, список слів займає 13 117 байтів, або приблизно 43% флеш-пам’яті мікроконтролера.
З урахуванням OLED-інтерфейсу, реалізації SHA-256 і логіки збору скомпільована програма використовує 30 006 із 30 720 доступних байтів чіпа. Залишається невикористаними лише 714 байтів.
Офлайн-дизайн тримає seed-фрази подалі від підключених пристроїв
Опубліковані файли апаратного забезпечення не містять жодного обладнання для бездротового зв’язку. Користувачі керують генератором за допомогою двох кнопок і читають фразу з 0,91-дюймового OLED-екрана.
Згенеровані індекси слів тимчасово залишаються в RAM мікроконтролера. Після того як користувач запише фразу, натискання обох кнопок відкриває процес підтвердження, який перезаписує масив слів і перезапускає збір ентропії.
Прошивка очищає початковий пул після копіювання його для обробки. Тимчасові буфери хешу, контрольної суми та ентропії перезаписуються після обчислення індексів BIP39.
За словами розробника, пристрій не зберігає фразу відновлення в постійній пам’яті. Дизайн із відкритим кодом не включає захищений елемент або механізм, який доводить, що встановлена прошивка відповідає публічному коду.
Фізична ізоляція усуває кілька мережевих шляхів атак, але вона не перевіряє, чи пристрій було зібрано правильно або завантажено довіреним програмним забезпеченням. Модифікований пристрій міг би показувати заздалегідь визначені слова або зберігати згенеровані дані, не змінюючи свого зовнішнього вигляду.
Посібник Crypto.news щодо безпеки гаманця рекомендує тримати фрази відновлення подалі від телефонів, хмарних акаунтів, фотографій та інших підключених систем. Процес Entropy32 Plus на основі екрана узгоджується з офлайн-перенесенням, за умови довіри до апаратного забезпечення та прошивки.
Незалежне тестування ентропії залишається незавершеним
У репозиторії зазначено, що джерело ентропії на основі лічильника Гейгера не тестувалося відповідно до NIST Special Publication 800-90B. Методологія NIST охоплює оцінювання фізичних джерел ентропії та включає окремі процедури для незалежних і не незалежних даних.
Гіггінс закликає записувати сирі інтервали прибуття протягом тривалого періоду та досліджувати їх за допомогою оцінювачів мінімальної ентропії NIST для не-IID даних. Коментарі у прошивці попереджають, що самі лише загальні результати статистичних тестів не встановлять достатню ентропію.
«Будь ласка, перевірте джерело ентропії, яке ви плануєте використовувати, інакше розумійте, що ви використовуєте пристрій на власний ризик», — йдеться в README.
Розробник рекомендує змішувати дані, отримані від лічильника Гейгера, з іншим незалежно перевіреним джерелом перед створенням гаманця для цінних коштів. Станом на 13 вересня до репозиторію не було включено жодного зовнішнього аудиту, оцінки NIST або публічного набору даних необроблених подій.
Минулі збої гаманців показують, чому тестування ентропії виходить за межі підтвердження того, що кінцеві слова відповідають формату BIP39. Crypto.news повідомляв, що керівник служби безпеки Kraken закликав до незалежного тестування гаманців після вразливості генерації сід-фраз Coldcard.
Пов'язаний технічний огляд пояснив, як слабка ентропія може розкрити біткоїн-гаманці, не розкриваючи, які саме люди використовують уражені пристрої. Зловмисники можуть генерувати можливі сід-фрази, виводити їхні публічні адреси та шукати збіги в блокчейні.
Згодом Crypto.news повідомляв, що передбачувана генерація сід-фраз залишалася використовуваною після того, як основна вразливість існувала роками. Виправлення несправної прошивки не може відновити фрази, згенеровані раніше; постраждалі користувачі повинні створити нові гаманці та перевести свої активи.
Entropy32 Plus залишається в активній розробці. Його історія комітів показує початковий коміт від 4 вересня, за яким послідували зміни прошивки, друкованої плати та корпусу. Станом на 13 вересня в репозиторії не було позначеного виробничого релізу або опублікованого графіка завершення незалежної оцінки безпеки.






