Bitcoin private key file

Private key

This page contains sample addresses and/or private keys. Do not send bitcoins to or import any sample keys; you will lose your money.

A private key in the context of Bitcoin is a secret number that allows bitcoins to be spent. Every Bitcoin wallet contains one or more private keys, which are saved in the wallet file. The private keys are mathematically related to all Bitcoin addresses generated for the wallet.

Because the private key is the «ticket» that allows someone to spend bitcoins, it is important that these are kept secret and safe. Private keys can be kept on computer files, but are also often written on paper.

Private keys themselves are almost never handled by the user, instead the user will typically be given a seed phrase that encodes the same information as private keys.

Some wallets allow private keys to be imported without generating any transactions while other wallets or services require that the private key be swept. When a private key is swept, a transaction is broadcast that sends the balance controlled by the private key to a new address in the wallet. Just as with any other transaction, there is risk of swept transactions to be double-spending.

In contrast, bitcoind provides a facility to import a private key without creating a sweep transaction. This is considered very dangerous, and not intended to be used even by power users or experts except in very specific cases. Importing keys could lead to the Bitcoins being stolen at any time, from a wallet which has imported an untrusted or otherwise insecure private key — this can include private keys generated offline and never seen by someone else [1] [2] .

Contents

An example private key

In Bitcoin, a private key is a 256-bit number, which can be represented one of several ways. Here is a private key in hexadecimal — 256 bits in hexadecimal is 32 bytes, or 64 characters in the range 0-9 or A-F.

Range of valid ECDSA private keys

Nearly every 256-bit number is a valid ECDSA private key. Specifically, any 256-bit number from 0x1 to 0xFFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFE BAAE DCE6 AF48 A03B BFD2 5E8C D036 4140 is a valid private key.

The range of valid private keys is governed by the secp256k1 ECDSA standard used by Bitcoin.

Hierarchical Deterministic (HD) Wallet Keys

Wallet software may use a BIP 32 seed to generate many private keys and corresponding public keys from a single secret value. This is called a hierarchical deterministic wallet, or HD wallet for short. The seed value, or master extended key, consists of a 256-bit private key and a 256-bit chain code, for 512 bits in total. The seed value should not be confused with the private keys used directly to sign Bitcoin transactions.

Читайте также:  Срок окупаемости аренды квартиры

Users are strongly advised to use HD wallets, for safety reasons: An HD wallet only needs to be backed up once typically using a seed phrase; thereafter in the future, that single backup can always deterministically regenerate the same private keys. Therefore, it can safely recover all addresses, and all funds sent to those addresses. Non-HD wallets generate a new randomly-selected private key for each new address; therefore, if the wallet file is lost or damaged, the user will irretrievably lose all funds received to addresses generated after the most recent backup.

Base58 Wallet Import format

When importing or sweeping ECDSA private keys, a shorter format known as wallet import format is often used, which offers a few advantages. The wallet import format is shorter, and includes built-in error checking codes so that typos can be automatically detected and/or corrected (which is impossible in hex format) and type bits indicating how it is intended to be used. Wallet import format is the most common way to represent private keys in Bitcoin. For private keys associated with uncompressed public keys, they are 51 characters and always start with the number 5 on mainnet (9 on testnet). Private keys associated with compressed public keys are 52 characters and start with a capital L or K on mainnet (c on testnet). This is the same private key in (mainnet) wallet import format:

When a WIF private key is imported, it always corresponds to exactly one Bitcoin address. Any utility which performs the conversion can display the matching Bitcoin address. The mathematical conversion is somewhat complex and best left to a computer, but it’s notable that the WIF guarantees it will always correspond to the same address no matter which program is used to convert it.

The Bitcoin address implemented using the sample above is: 1CC3X2gu58d6wXUW _SAMPLE_ADDRESS_DO_NOT_SEND_ MffpuzN9JAfTUWu4Kj

Mini private key format

Some applications use the mini private key format. Not every private key or Bitcoin address has a corresponding mini private key — they have to be generated a certain way in order to ensure a mini private key exists for an address. The mini private key is used for applications where space is critical, such as in QR codes and in physical bitcoins. The above example has a mini key, which is:

Summary

Any Bitcoins sent to the address 1CC3X2gu58d6wXUW _SAMPLE_ADDRESS_DO_NOT_SEND_ MffpuzN9JAfTUWu4Kj can be spent by anybody who knows the private key implementing it in any of the three formats, regardless of when the bitcoins were sent, unless the wallet receiving them has since made use of the coins generated. The private key is only needed to spend the bitcoins, not necessarily to see the value of them.

If a private key controlling unspent bitcoins is compromised or stolen, the value can only be protected if it is immediately spent to a different output which is secure. Because bitcoins can only be spent once, when they are spent using a private key, the private key becomes worthless. It is often possible, but inadvisable and insecure, to use the address implemented by the private key again, in which case the same private key would be reused.

Источник

Приватный ключ биткоина (private key) – что это такое, как выглядит, как получить и безопасно сохранить

Сегодня рассмотрим значение слов «приватный ключ биткоина» – для чего он нужен, как получить и как правильно хранить.

Читайте также:  Chia плоттинг 32 корзины

В то время как публичный ключ, или адрес, представляет собой средство идентификации кошелька, подобие логина, приватный ключ – строго конфиденциальная информация. Внешне выглядит как набор символов, введя которые, пользователь получает доступ к управлению счетом. Приватные (их еще называют частными или закрытыми) ключи хранятся в специальном файле, публичные –формируются криптографическим методом именно на основе приватных.

Как внешне выглядят публичный и приватный ключи кошелька биткоина

Приватный ключ биткоина кодируется в следующих форматах: Base64, MINI, Hex, WIF, сжатый WIF. Все они взаимосвязаны и преобразуются один в другой:

  • Формат WIF (51 символ, «5» в начале): 5JPeWYZx922hXi49Lg2RJPwLfqcmDGS9YegMNgANvx8cJa6kNK8.
  • Большинство криптовалютных кошельков, используют для хранения приватных ключей WIF-сжатый формат (52 символа, начинается с «L» или «K»): KykxZQLSNPYVtYCsoqFGFnEqpRar997zihJgvfrPo8LapFrAtaea.
  • Формат Hex (64 символа): 4BBFF74CA25A2A00409DCB24EC0418E9A41F9B3B56216A183E0E9731F4589DC6.
  • Формат Base64 (44 символа): S7/3TKJaKgBAncsk7AQY6aQfmztWIWoYPg6XMfRYncY=.

На картинке один приватный ключ биткоина в разных форматах:

Публичный адрес (ключ)

Внешний вид публичного биткоин-ключа в различных форматах:

  • Наиболее используемый в кошельках — короткий адрес. Он имеет вид 1BSUkuwtdM7gkdy6W4Q954gNKWBgy4A19Q и всегда начинается с единицы или тройки (segwit address).

Публичные ключи (public key) видны всем желающим и используются как адрес для отправки или получения биткоинов. В одном кошельке можно сгенерировать неограниченное количество публичных ключей. Каждому будет соответствовать свой приватный ключ.

Как создать приватные биткоин-ключи

При создании любого кошелька для биткоина создается приватный ключ. В зависимости от вида бумажников можно обладать контролем над ними или нет. Последний случай больше относится к онлайн-сервисам, на которых можно пройти простую регистрацию, получить адрес биткоина, но приватные ключи не доступны. Контроль над ними имеют владельцы данных онлайн-кошельков. Поэтому рекомендуем выбирать криптокошельки с возможностью выгрузки приватных ключей или сохранением seed.

  1. Локальные. Устанавливаются на десктопные или мобильные устройства. К ним относят Jaxx, Electrum, Coinomi, Exodus и другие. Делятся на «тонкие» и «толстые», в зависимости от способа обращения к блокчейн-сети.
  2. Онлайн-кошельки. Для их создания обычно нужно указать email и пароль. Такие сервисы могут предоставлять возможность просмотра приватных ключей или не иметь такой функции. Популярные сайты для хранения криптомонет: blockchain.com.
  3. Биржи криптовалют. После создания счета доступны кошельки для криптовалют, которые в листинге площадки. Приватные ключи не предоставляются. Можно вносить депозит на предоставленный адрес, торговать криптовалютой и совершать вывод. Популярные торговые платформы: LocalBitcoins (ЛокалБиткоинс), EXMO, Binance, Huobi, BitMEX и другие.
  4. Аппаратные кошельки. Наиболее безопасный вариант сохранить криптоактивы в безопасности. Владелец имеет полный контроль над всеми приватными ключами, а их кража невозможна. Выпускают аппаратные устройства Ledger, Trezor и другие.
  5. Бумажные. Это может быть просто записанный приватный ключ на бумаге или сервисы, которые его генерируют и предоставляют возможность распечатать и сохранить. Способ относится к «холодному» хранению криптовалют.

Как получить (экспортировать) приватный ключ биткоина

Бывают ситуации, когда необходимо получить свой приватный ключ из кошелька для тех или иных целей. Разберем, как это сделать.

Извлечение (экспорт) приватных ключей из криптокошельков

В качестве примера используется «тонкий» десктопный кошелек Exodus. В нем нужно произвести операцию экспорта приватного биткоин-ключа. Изначально она надежно скрыта, поскольку разработчики справедливо считают, что неопытному пользователю лучше не пытаться ее произвести. Неверные действия чреваты потерей средств из кошелька.

Инструкция по экспорту:

  1. Активировать «Developer Menu». В Windows и Linux это действие производится нажатием сочетания клавиш Ctrl+Shift+D.
  2. Выбрать ту криптовалюту, частный ключ которой интересует в текущий момент. Перейти по пунктам: «Developer» – «Assets» – «Bitcoin» или иная выбранная валюта – «Export Private Keys».
  3. В появившемся окне подтвердить свое желание нажатием кнопки «I’m sure».
  4. На рабочем столе появится папка под названием «Exodus-export», внутри – файл формата CSV. Это файл скопировать в надежное место, папку сразу удалить.
Читайте также:  Как рассчитывать внутреннюю норму доходности

Открыть файл можно через текстовый редактор Libre Office, Wordpad, Exel, стандартный Блокнот и т. д. В графе «PRIVKEY» будет буквенно-цифровое сочетание – это и есть приватный (закрытый) ключ биткоина:

Получение приватного ключа из онлайн-кошелька Blockchain

Рассмотрим, как получить приватный ключ в популярном онлайн-кошельке Блокчейн. В настройках функции экспорта ключей нет. Нужно воспользоваться seed-фразой, которая находится по адресу «Настройки» — «Безопасность» — «Фраза для восстановления кошелька». Скопировать все слова и перейти в генератор iancoleman.io . Указать количество слов (12) и вставить их в форму «BIP39 Mnemonic».

Опуститься вниз страницы в раздел «Derived Addresses». В нем будет адрес, публичный и приватный ключ.

Получение ключа в бумажного кошельке

Бумажные кошельки генерируют приватные ключи локально с помощью выполнения скрипта в браузере.

После сбора случайной энтропии высветится сжатый адрес биткоина и приватный ключ в сжатом WIF-формате. Что с ними делать, понятно по картинке:

Сервис для создания бумажных кошельков: bitaddress.org.

Что такое детерминированный кошелек (HD wallet), seed фраза

В 2011 году для решения ряда проблем с анонимностью разработчики Bitcoin Core выпустили такую разработку, как HD Wallet. HD расшифровывается «hierarchical deterministic», то есть «иерархически детерминированный». Звучит непонятно, но по факту все не так сложно.

В контексте криптовалют словом «иерархия» обозначают связь между элементами. В данном случае появляется возможность использовать один адрес для выяснения второго, а также применять секретную seed-фразу для генерации сразу многих связанных между собой адресов.

Пример seed (backup phase) в кошельке Blockchain (всего 12 слов):

«Детерминированная» система – та, где недопустимы никакие случайности в процессе формирования будущих состояний. То есть конкретные вводные данные всегда будут выдавать конкретный результат.

Преимущества технологии HD wallet:

  1. Усиление анонимности. Владелец HD wallet обладает одной копией программного бумажника с одним тайным ключом (называемым также «семя» или «master key»). При объединении семени с хеш-функциями образуется бесконечное количество связанных между собой адресов. Связь невидима со стороны. Это адреса называют «дочерними».
  2. Легкость запоминания сид-фразы. Записать или выучить код из 12 слов намного легче, чем хранить приватные ключи для каждого отдельного адреса биткоина.
  3. Комфортное резервное копирование. Многие пользователи сталкиваются с проблемами резервного копирования мобильных кошельков на iOS или Android – возникает необходимость использовать один и тот же ключ, а это прямая угроза для безопасности. HD кошелек вообще не требует создания резервных копий, достаточно распечатать или сохранить в надежном месте сид-фразу.

Технология реализована в надстройке Armory для Bitcoin Core, кошельках Electrum, MultiBit HD, BitGo, CarbonWallet, The Hive, Mycelium Bitcoin Wallet, Green Address, Trezor и других.

Как безопасно хранить приватные ключи

Используя интернет-кошельки, следует понимать, что ключи хранятся на серверах компании-разработчика. Пользователь лично владеет private key лишь в случае использования десктопных, аппаратных или бумажных кошельков.

Варианты хранения кода:

  1. На бумаге.
  2. На флешке в виде скриншота или фотографии, pdf-файла.
  3. На жестком диске, в том числе съемном.
  4. На физической монете, металлической пластине (своеобразный аналог аппаратного «холодного» кошелька в форме криптовалютной монеты).
  5. В памяти.

Ни один из перечисленных способов не дает 100%-ную гарантию сохранности ключа, в каждом случае есть вероятность физического повреждения, взлома или кражи. Так что выбор каждый делает, исходя из своих соображений.

В Сети сейчас много злоумышленников, которые мечтают украсть приватный ключ биткоина. Они могут соблазнять бесплатными токенами, предлагать получить новые монеты, а взамен просят загрузить в сеть или созданную ими программу частный ключ. Делать этого ни в коем случае нельзя.

Источник

Оцените статью