Bitcoin Key & Address Explorer
Исследуйте криптографические основы Bitcoin. Обучающий инструмент для понимания деривации private key, public key и адресов.
Исследуйте криптографические основы Bitcoin.
Узнайте, как private key, public key и адреса связаны между собой — наглядно.
Этот обучающий инструмент демонстрирует структуру и формат типов key и адресов Bitcoin. Генерируйте случайные примеры значений, чтобы увидеть, как каждый шаг в цепочке деривации преобразует данные — от raw entropy до адресов, которые вы используете каждый день.
Только в образовательных целях
Никогда не используйте key, показанные на любом веб-сайте, для реальных средств. Этот инструмент демонстрирует структуру и формат key и адресов Bitcoin, а не фактическую криптографическую деривацию. Значения, генерируемые здесь, являются случайными примерами, предназначенными для иллюстрации правильных prefix, длин и форматов кодирования. Реальная деривация key требует безопасного офлайн-программного обеспечения.
Key & Address Explorer
Нажмите кнопку ниже, чтобы сгенерировать новый набор случайных примеров значений. Каждая генерация использует Web Crypto API для получения случайных байтов, а затем форматирует их в соответствии с реальными структурами key и адресов Bitcoin.
Private Key (Raw)
Случайное 256-битное число (32 байта)
--
64 HEX-символа = 256 бит entropy, сгенерировано через crypto.getRandomValues()
Wallet Import Format (WIF)
private key, закодированный Base58Check
--
Структура: version-байт (0x80) + байты private key + флаг сжатия (0x01) + 4-байтовый checksum. checksum — это первые 4 байта от SHA-256(SHA-256(payload)). Результат затем кодируется в Base58. Compressed WIF key начинаются с K или L; uncompressed — с 5.
Примечание Приведённый выше пример показывает правильную структуру формата. Фактическое преобразование WIF требует кодирования Base58Check с двойным хешированием SHA-256.
Сжатый Public Key
33 байта через умножение на эллиптической кривой secp256k1
--
Деривация: public key вычисляется как P = k * G, где k — это private key, а G — generator point secp256k1. Сжатый формат использует prefix 02 (y чётное) или 03 (y нечётное), за которым следует 32-байтная x-координата. Это односторонняя функция — из public key невозможно получить private key.
Форматы адресов
Различные кодировки хеша public key
--
Начинается с 1 | ~25-34 символа | Base58Check(0x00 + RIPEMD160(SHA256(pubkey)) + checksum)
--
Начинается с 3 | ~25-34 символа | Base58Check(0x05 + RIPEMD160(SHA256(script)) + checksum)
--
Начинается с bc1q | ~42 символа | Bech32(hrp + witness version 0 + 20-байтный keyhash)
--
Начинается с bc1p | ~62 символа | Bech32m(hrp + witness version 1 + 32-байтный tweaked pubkey)
Диаграмма потока деривации
Диаграмма ниже показывает полную цепочку от случайной entropy до адресов Bitcoin. Каждое преобразование является односторонней криптографической операцией — вы всегда можете двигаться вперёд, но никогда назад.
Случайное 256-битное число
Private Key (HEX)
Формат WIF
Кодирование Base58Check
Version + Key + Flag + Checksum
Public Key
secp256k1 (k * G)
RIPEMD160(SHA256(pubkey))
20-байтный hash
P2PKH
1...
P2SH
3...
SegWit
bc1q...
Taproot
bc1p...
Понимание эллиптической криптографии
Bitcoin использует эллиптическую кривую secp256k1, определяемую уравнением y² = x³ + 7 над конечным полем. Эта конкретная кривая была выбрана за её эффективность и отсутствие известных бэкдоров — в отличие от некоторых кривых NIST, которые вызвали обеспокоенность в криптографическом сообществе.
Умножение точек
private key k умножается на generator point G для получения public key P = k * G. Это использует повторное сложение точек на эллиптической кривой. Операция вычислительно проста в одном направлении, но невыполнима в обратном — это проблема дискретного логарифма на эллиптической кривой (ECDLP).
Размер пространства ключей
Кривая secp256k1 имеет порядок примерно 2256 — около 1,16 x 1077 возможных private key. Для сравнения, оценочное количество атомов в наблюдаемой Вселенной составляет около 1080. Подбор private key методом полного перебора вычислительно невозможен с текущими или предвидимыми технологиями.
Сжатые vs несжатые
Точка эллиптической кривой имеет обе координаты x и y (64 байта без сжатия). Поскольку y можно вывести из x с помощью уравнения кривой, compressed key хранят только x плюс префиксный байт, указывающий чётность y — уменьшая размер с 65 до 33 байт. Современный Bitcoin использует исключительно compressed public key.
Подписи Schnorr (Taproot)
Taproot представил подписи Schnorr (BIP 340), которые предлагают несколько преимуществ по сравнению с ECDSA: они доказуемо безопасны, позволяют эффективную агрегацию мульти-подписей и делают сложные условия расходования неотличимыми от простых в блокчейне — значительно улучшая приватность и снижая комиссии.
Объяснение форматов Private Key
Bitcoin private key по сути является просто 256-битным числом, но может быть представлен в нескольких форматах. Каждый формат служит своей цели — от raw-вычислений до удобочитаемого импорта/экспорта.
| Формат | Prefix | Длина | Описание |
|---|---|---|---|
| Raw HEX | — | 64 символа | Обычное шестнадцатеричное, 32 байта |
| WIF (несжатый) | 5 | 51 символ | Base58Check, без флага сжатия |
| WIF (сжатый) Рекомендуется | K или L | 52 символа | Base58Check, с флагом сжатия 0x01 |
| Mini Private Key | S | 30 символов | Компактный формат, используется в физических монетах |
Кодирование адресов: Base58Check vs Bech32
Bitcoin использует две принципиально разные схемы кодирования для адресов. Понимание различий объясняет, почему форматы адресов выглядят так по-разному и почему более новые форматы считаются лучшими.
- Использует алфавит Base58: 1-9, A-Z, a-z, исключая 0, O, I, l во избежание визуальной неоднозначности
- 4-байтовый checksum из двойного хеша SHA-256, добавленный к payload
- Чувствителен к регистру (смешанный регистр), что делает QR-коды менее эффективными
- version-байт определяет prefix: 0x00 = "1...", 0x05 = "3..."
- Может обнаружить ошибки, но не может определить, какой символ неверен
- Использует 32-символьный строчный алфавит: a-z, исключая b, i, o + цифры 0-9, исключая 1
- BCH-код исправления ошибок может обнаружить до 4 ошибок в символах и определить их местоположение
- Только строчные буквы — более эффективные QR-коды (буквенно-цифровой режим)
- Human-readable part (bc) + separator (1) + data + 6-символьный checksum
- Bech32m (BIP 350) исправляет проблему изменяемости при расширении длины в оригинальном Bech32
Почему существуют разные типы адресов?
Эволюция форматов адресов Bitcoin отражает годы улучшений протокола, каждое из которых решает определённые ограничения, сохраняя обратную совместимость со всей сетью.
P2PKH — Оригинал
Представлен вместе с Bitcoin. Pay-to-Public-Key-Hash добавляет слой безопасности путём хеширования public key перед использованием в адресе. Если ECDSA когда-либо будет взломан, средства в P2PKH-адресах, где public key не был раскрыт, остаются защищены хеш-функцией.
P2SH — Программируемые скрипты
BIP 16 представил Pay-to-Script-Hash, позволяющий сложные условия расходования (мульти-подпись, тайм-локи), сохраняя при этом простоту адреса. Отправителю не нужно знать скрипт — он просто отправляет на адрес "3...". Позже стал обёрткой для совместимости с SegWit.
Bech32 — Segregated Witness
Обновление SegWit (BIP 141/173) отделило данные подписи от данных транзакции, исправив пластичность транзакций и обеспечив работу Lightning Network. Native SegWit-адреса используют кодирование Bech32, уменьшая вес транзакции примерно на 30-40% и соответственно снижая комиссии.
Bech32m — Taproot
Обновление Taproot (BIP 340/341/342) представило подписи Schnorr, MAST (Merkelized Alternative Script Trees) и улучшенную приватность. Сложные мульти-подписи становятся неотличимыми от простых платежей в блокчейне. Использует кодирование Bech32m (BIP 350) для исправления незаметной проблемы checksum в оригинальном Bech32.
Часто задаваемые вопросы
Какова связь между private key и public key?
Почему формат WIF начинается с 5, K или L?
Может ли кто-то угадать мой private key?
В чём разница между Bech32 и Bech32m?
Почему Bitcoin хеширует public key вместо прямого использования?
Безопасно ли использовать этот инструмент? Реальны ли сгенерированные значения?
Используйте свои знания на практике
Теперь, когда вы понимаете, как работают key и адреса Bitcoin, начните майнинг с NoxHash. Мы занимаемся криптографией — вы собираете вознаграждения. Безопасное управление key, мгновенные выводы на любой формат адреса.