Аудит відкритого коду знайшов фіксовану надбавку до хешрейту у firmware Bitfortun BS-1
Публікація джерела: 2026-09-10 · Редакційний аналіз опубліковано: 2026-09-27
Перевірка публічного коду виявила, що шляхи відображення Bitfortun BS-1 додають 400 GH/s до виміряного хешрейту, а хвилинна історія має окрему надбавку 0,4 TH/s. Основне API-значення, за звітом, не змінене, тому його можна звірити з пулом та екраном.

Аналіз і практичні висновки
У цьому розділі — наш аналіз та умовні розрахунки, окремо від повідомлення джерела.
Що виявила перевірка коду
Solo Satoshi повідомив про фіксовані надбавки у кількох шляхах відображення публічного firmware Bitfortun BS-1. У DisplayDriver::updateHashrate() до поточного хешрейту двічі додається 400.0f: для ефективності та для числа на екрані. У history.cpp хвилинне середнє повертається з доданими 0,4, а інший рядок зміщує новий буфер історії на 400 елементів. Автор перевіряв commit bbd42bc репозиторію від 12 серпня 2026 року та порівнював його з названим upstream NerdQAxe+.

Надбавка стосується відображення, а не доведеної роботи
За звітом, основне поле hashRate у /api/system/info не доповнене. Це важлива різниця: цифру панелі обчислює firmware, а дохід визначають валідні share, прийняті пулом. Фіксована надбавка може зробити локальний екран швидшим без жодного додаткового nonce. ASIC.tools не тестував фізичний BS-1, тому висновок обмежений опублікованим кодом і порівнянням автора. Це не доказ зміни пулових записів, блоків Bitcoin або кожного API endpoint.
Масштаб 400 GH/s
BS-1 продавався з орієнтиром близько 5,5 TH/s, тому 0,4 TH/s — приблизно сім відсотків номіналу. Відносний ефект більший, коли реальна швидкість нижча, і менший, коли вища. Оскільки надбавка стала, вона може частково приховувати погіршення через температуру чи напругу. Сам код не доводить намір: це може бути свідоме оформлення, тестовий залишок або помилка. Але будь-який варіант потребує видалення чи чіткого пояснення, перш ніж екран вважати вимірюванням.
Незалежним орієнтиром є пул
Пул оцінює хешрейт за прийнятими share та їхньою складністю. На короткому інтервалі оцінка шумна, але вона не залежить від локального дисплея. Власник може порівняти 24-годинне пулове значення, незмінене поле API та екран, одночасно перевіряючи reject і stale share. Якщо екран стабільно приблизно на 0,4 TH/s вище за API за різних режимів, це відповідає опублікованому шаблону. Одного виміру мало через випадковість share, втрати Wi-Fi, прогрів і перезапуски.
Метод порівняння можна повторити
Автор клонував репозиторій BS-1 на вказаному commit, простежив виклики до дисплея й HTTP API, потім клонував upstream і шукав ті самі рядки в усій історії. В upstream DisplayDriver викликає getCurrentHashrate() без +400.0f, а зазначені зміщення не знайдені. Переконлива відповідь виробника мала б містити patch, tagged release, відтворювану збірку і пояснення сирих, усереднених та оцінених значень. Commit hash слід зберігати, бо гілку можна змінити після аудиту.
Відкритий код дає перевірку, але не гарантію
Публікація коду не запобігла сумнівному розрахунку, зате зробила його видимим. Open source все одно потребує рецензентів, детермінованої збірки та способу підтвердити, що binary на пристрої відповідає репозиторію. Виробник може опублікувати одне дерево і поставляти інший образ або закриті компоненти. Оператору потрібні підписані релізи, checksums, provenance збірки та документований rollback. Аудит коду необхідний, але не замінює тест обладнання й вимірювання пулу.
Що безпечно перевірити власнику
Спершу зафіксуйте версію firmware і конфігурацію, не змінюючи частоту чи напругу. Експортуйте API-хешрейт, зробіть фото екрана і зберіть пуловий accepted hashrate щонайменше за 24 години. Запишіть температуру, uptime, rejects і перезапуски. Порівнюйте однакові одиниці: 400 GH/s = 0,4 TH/s. Оновлюйтеся лише релізом для точної hardware revision, перевіряйте checksum і майте recovery image. Невідомий community binary може створити більший ризик, ніж косметична помилка.
Які докази закриють питання
Повне вирішення включає пояснення виробника, публічний patch, tagged source, відповідні hashes binary та незалежні вимірювання до й після. Інтерфейс має окремо називати оцінку чипів, хешрейт за share і значення пулу. До цього покупцеві слід вважати цифру BS-1 на екрані оцінкою і використовувати прийняті пулом share для економіки. Випадок нагадує: кожне локальне значення ефективності є виходом програми, тому фермі потрібне зовнішнє вимірювання і, де можливо, аудит вихідного коду.
Джерело: Solo Satoshi / public source code ↗
Калькулятор майнінгу ↗

