150 / 691DICE

Dice Roll Entropy

Энтропия кошелька из физических бросков кубика

Dice Roll Entropy преобразует приватные результаты физических бросков во входные биты; безопасность зависит от случайности, независимости и точного преобразования.

Dice Roll Entropy — источник случайности для создания кошелька через запись результатов кубика и обработку заданным алгоритмом. Длина хеша и число слов сами не доказывают объём непредсказуемой входной информации.

Идеальный честный шестигранный кубик даёт log2(6) ≈ 2,585 бита на независимый бросок. Пятьдесят бросков дают около 129,25 бита входной энтропии, 99 — 255,91, а 100 — 258,50. COLDCARD указывает 99 бросков для практической цели 256 бит; точная сумма немного ниже. Количество не доказывает качество реального кубика и не гарантирует совершенно равномерный хеш. [COLDCARD — Verifying Seed Mixing] [RFC 4086 — Randomness Requirements for Security]

Для одного броска консервативной мерой служит min-entropy Hmin=−log2(pmax), где pmax — вероятность самой частой грани. Если у грани вероятность 1/2, это лишь 1 бит, не 2,585. Суммирование бросков требует соответствующей независимости; повторение прошлого результата не добавляет независимой информации. Наблюдателю, знающему всю последовательность, она не даёт секретной случайности. [NIST SP 800-90B — Entropy Sources for Random Bit Generation]

В учебном примере кодируем два честных независимых броска как x=6*(d1−1)+(d2−1), от 0 до 35. x mod32 даёт преимущество 0–3: у каждого два прообраза. Rejection Sampling вместо этого отбрасывает 32–35 и повторяет пару; принятые 0–31 дают пять равномерных битов. Пример объясняет ошибку преобразования, а не заменяет проверенный генератор кошелька. [RFC 4086 — Randomness Requirements for Security]

В режиме Dice Rolls Only документация COLDCARD вычисляет SHA-256 от ASCII-последовательности цифр. Публичный тест 123456 без завершающего newline даёт хеш 8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92. Шесть идеальных случайных бросков имели бы лишь около 15,51 бита; опубликованная последовательность вообще не секретна. Выход 256 бит не добавляет отсутствующей энтропии; другое кодирование может изменить результат. [COLDCARD — Verifying Seed Mixing] [RFC 4086 — Randomness Requirements for Security]

Документация COLDCARD, обновлённая 6 сентября 2026, различает Dice Rolls Only без аппаратной случайности и стандартную генерацию, смешивающую значение устройства с физическими бросками кубика или монеты. verify_seed_mix.py проверяет второй режим, rolls.py и rolls12.py — первый. Одних бросков недостаточно для сравнения, если вход содержит значение устройства; нужны точная процедура и версия прошивки. [COLDCARD — Verifying Seed Mixing]

BIP39 добавляет четыре бита checksum к 128 входным битам и делит 132 бита на 12 групп по 11; 256 бит плюс восемь контрольных дают 24 слова. Checksum производный и не добавляет случайности. Далее PBKDF2-HMAC-SHA512 создаёт 512-битный seed из фразы и passphrase, но длина 512 сама не усиливает слабые броски. Формат слов, входная энтропия и производный seed — разные слои. [BIP 39 — Mnemonic code for generating deterministic keys]

Повторение публичного тестового вектора проверяет кодирование, хеш и преобразование, не честность кубика или каждого устройства. Даже статистически красивая короткая серия не доказывает криптографической непредсказуемости. NIST SP800-90B различает модель источника, оценку min-entropy и тесты исправности; домашний подсчёт бросков не является сертификацией. Придуманные числа или повторяемые шаблоны не заменяют физическую случайность. [RFC 4086 — Randomness Requirements for Security] [NIST SP 800-90B — Entropy Sources for Random Bit Generation]

В режиме только бросков полная запись или итоговый хеш может восстановить кошелёк; при смешивании чувствительны и входы устройства. Проверяйте одноразовый тестовый набор, кошелёк которого никогда не пополняется, а для настоящего используйте свежие приватные входы. Фото, буфер обмена и журналы могут сохранить секреты. Сохраните Seed Phrase и возможную passphrase согласно формату и проверьте восстановление. [COLDCARD — Verifying Seed Mixing] [BIP 39 — Mnemonic code for generating deterministic keys]

Для полной картины прочитайте эту статью вместе с Cryptographic Entropy, Entropy Bit, BIP 39, Seed Phrase, Entropy Mixing, CSPRNG. На эту статью также ссылаются Cryptographic Entropy, COLDCARD RNG Incident (2026).

DOC · 001COLDCARD — Verifying Seed MixingДокументация ↗DOC · 002BIP 39 — Mnemonic code for generating deterministic keysСпецификация ↗DOC · 003RFC 4086 — Randomness Requirements for SecurityСпецификация ↗DOC · 004NIST SP 800-90B — Entropy Sources for Random Bit GenerationСпецификация ↗
Сначала источники · Не является инвестиционной рекомендацией