Приватные ключи Биткоина
Приватные ключи Биткоина – это адрес кошелька, который используется для отправки и получения монет. Private-key генерируется в момент создания кошелька. Приватные ключи являются доказательством владения Биткоином.
Сеть Bitcoin меняет представления людей об управлении активами. Создать кошелек может каждый пользователь без подтверждения личности. Это делает криптовалюту доступной для миллионов пользователей по всему миру. При создании кошелька пользователь получает приватный ключ (англ. Private Key) — это самый важный элемент в управлении своими активами. В этой статье мы разберем, как его получить и безопасно хранить.
Что такое приватный ключ
Криптографический ключ изобрели еще в 1970-м. Сегодня он используется для обеспечения безопасности в компьютерных системах. На основе криптографических ключей начали появляться цифровые подписи. Похожий подход используется в сети Bitcoin. Приватный ключ биткоина — зашифрованная комбинация символов, которая обеспечивает доступ к кошельку и отправке транзакций.
Каждый приватный ключ связан с кошельком — публичным адресом. Последний можно передавать другим пользователям для получения транзакций. Имея только публичный адрес, пользователь никак не сможет узнать приватный ключ. Однако если пользователь по ошибке передаст закрытый ключ, третье лицо сразу получит полный контроль над кошельком.
Как выглядит приватный ключ биткоина
Надежность криптографического ключа определяется его длиной в битах. Например, в технологиях SSL задействованы шифры в 4096 бит для корневых сертификатов и 128-256 бит для клиентских. Этого достаточно для обеспечения надежной защиты и безопасной передачи данных. Bitcoin работает на алгоритме SHA-256, поэтому создает приватные закрытые ключи длиной 256 бит.
На программном уровне все числа состоят из 0 и 1, однако для удобства пользователя приватные ключи автоматически переводятся в более привычные шифры, состоящие из цифр и латинских. Его длина состоит от 44 до 64 символов в зависимости от формата:
- Base64 (44 символа) — S7/3LKJuKg98shdyruwdkl124BgPloK9143JdY30=pH45;
- WIF (51 символ, начинается с «5») — 5PnHd45Th894Nas71Ch64Ndfgtynrqsdqf83p1NjasiUdqsf1Hg;
- WIF-сжатый (52 символа, начинается с «K» или «L») — LxRtY647UjKadrtksdr82LkOPYnvsaqq123NxaMvxzpOLDb7Jk8N;
- Hex (64 символа): OkL45JAIjfryedn4kxvuqwrxs1Ok31Jnsqlr723NGFsawesvcvLk52pIsqtK4L23.
Большинство криптовалютных кошельков используются формат WIF-сжатый.
Для чего нужен закрытый ключ
У приватного ключа всего две функции. Первая — обеспечение надежного хранения криптовалюты. Приватный ключ является своего рода подтверждением владения определенным кошельком. Поэтому хранить шифр для входа следует в надежном месте. Если использовать для этого компьютер, который подключен к интернету, то при попадании вируса есть риск потери данных.
Вторая функция — подпись транзакций. Закрытый ключ используется при каждом переводе. При переводе биткоинов ноды проверяют связь публичного адреса с приватным ключом. Это обеспечивает подлинность монет и намерения текущего владельца передать биткоины. После подтверждения информация о транзакции записывается в блокчейн, а цифровые активы переводятся на другой адрес.
Генерация приватных ключей
Существует несколько вариантов генерации приватных ключей:
- автоматизированная — основная масса кошельков автоматически создает приватный ключ и фразу для его восстановления;
- засекреченная — часть кошельков предоставляет доступ к адресу через логин и пароль, в этом случае приватный ключ хранится на стороннем сервере, что негативно сказывается на безопасности;
- самостоятельная — пользователь может самостоятельно создать фразу, которая будет впоследствии зашифрована с помощью SHA-256.
Автоматизированная генерация ключей
Это наиболее распространенный вариант создания приватных ключей. Его использует большинство криптовалютных кошельков. Среди наиболее известных можно выделить Bitcoin Core. Это официальный клиент с открытым исходным кодом, который позволяет напрямую взаимодействовать с блокчейном. Однако если пользователь хочет получить максимальную безопасность для приватных ключей, ему придется устанавливать полную версию, которая постоянно увеличивается в объеме. Сейчас Bitcoin Core требует более 350 гигабайт свободного места на диске.
Засекреченная
К подобному способу генерации чаще всего прибегают централизованные биржи. Пользователь проходит стандартную регистрацию, указывая электронную почту и пароль. Впоследствии он будет использовать эти данные для входа в личный кабинет. Биржа со своей стороны генерирует публичный и приватный ключ для каждой криптовалюты. Первый отображается в личном кабинете, чтобы пользователь мог вносить депозит в криптовалюте. Закрытый ключ скрыт от клиента и хранится на сервере компании и пользователи никак не сможет узнать его.
У такого способа есть свои преимущества. Во-первых, пользователю не нужно заботиться о безопасном хранение приватного ключа, поскольку за это отвечает сторонняя компания. Во-вторых, торговые площадки предлагают дополнительные функции для обеспечения надежного хранения, например, двухфакторную аутентификацию. Если пользователь выбирает подобный способ генерации приватного ключа, следует отдавать предпочтение проверенным биржам, например, Binance.
Самостоятельная генерация
BrainWallet — генератор адресов в сети Bitcoin и Litecoin. Сервис преобразует любой текст или файл в открытый и закрытый ключ, позволяя пользователю хранить криптовалюту любым удобным способом — на бумаге, фотографии, в документе и так далее. Однако этот вариант генерации лучше использовать продвинутым пользователям. Для создания приватного ключа пользователю необходимо указать следующую информацию:
- валюту — BTC или LTC;
- кодовую фразу — можно использовать кнопку «Random» или самостоятельно ввести 12 любых слов;
- выбрать тип соли — Login (имя пользователя, пароль и пин-код), Personal (имя, электронная почта, телефон и дата рождения), Generic (позволяет самостоятельно придумать соль).
Как правильно хранить ключи от биткоина
После создания кошелька необходимо позаботиться о безопасном хранении приватного ключа. Его нельзя изменить, поэтому если он попадет в руки злоумышленников, пользователь может потерять все биткоины на своем адресе. Если существует риск потери данных, следует немедленно создать новый кошелек и перевести туда все активы. Для безопасного хранения приватных ключей в основном используют:
- Бумагу — все данные можно записать на лист бумаги. Для удобства существуют сервисы, которые позволяют создавать бумажные кошельки. Можно распечатать несколько копий и хранить в сейфе. Для этого подойдет сервис Bitcoin Paper Wallet.
- Флешка. Всю необходимую информацию о кошельке можно хранить на флешке. Она не подключена к интернету, поэтому защищена от хакеров. Однако риск потери данных увеличивается, если подключить ее к ПК, который заражен вирусами.
- Компьютер. Если пользователь уверен в отсутствии вредоносных программ, использует только лицензированное ПО, то такой способ хранения ключей также остается достаточно безопасным.
На Reddit для безопасного хранения один из пользователей зашифровал seed-фразу в изображении, воспользовавшись собственным алгоритмом стеганографии. Одну копию он сохранил в облаке, а другое было закодировано с помощью Base64, после чего распечатал QR-код. Изображение в облаке для мошенников является простой картинкой, которую невозможно расшифровать без знания используемого алгоритма, поэтому приватный пароль надежно защищен.
Безопасность криптографии
Не все пользователи считают приватные ключи биткоина надежной защитой публичного адреса. В действительности вероятность угадать настолько сложный пароль составляет менее 0,000001%. Разработчик приложения Cashh App Дэнни Дикроэгер убежден, что при подобных обстоятельствах подбор приватного ключа может занять 100 лет. Даже если удастся подобрать пароль, вероятность того, что на кошельке окажутся биткоины, составляет 0,0000000000000000000000000000000000000000000001%. Поэтому использовать вычислительную мощность для поиска ключа становится экономически невыгодным.
That’s a massive overestimation. I calculated the actual odds. Even at 1,000,000,000 times the current computer power he has, running for 100 years, the odds he finds any private key with a balance are:
— Danny Diekroeger (@dannydiekroeger) May 25, 2020
Заключение
Подводя итоги, можно сделать следующие выводы:
- Приватный ключ — необычайно сложный пароль, который нельзя изменить и практически невозможно взломать. Если пользователь хранит его в надежном месте, его биткоины будут защищены от кражи.
- Пользователь может постоянно генерировать новый приватный ключ и адрес для получения адресов, чтобы не афишировать свой настоящий кошелек.
- Главная угроза каждого владельца криптовалюты — хакеры. Следует аккуратно пользоваться компьютером, через который проводятся все транзакции.
Источник
Приватный ключ биткоина (private key) – что это такое, как выглядит, как получить и безопасно сохранить
Сегодня рассмотрим значение слов «приватный ключ биткоина» – для чего он нужен, как получить и как правильно хранить.
В то время как публичный ключ, или адрес, представляет собой средство идентификации кошелька, подобие логина, приватный ключ – строго конфиденциальная информация. Внешне выглядит как набор символов, введя которые, пользователь получает доступ к управлению счетом. Приватные (их еще называют частными или закрытыми) ключи хранятся в специальном файле, публичные –формируются криптографическим методом именно на основе приватных.
Как внешне выглядят публичный и приватный ключи кошелька биткоина
Приватный ключ биткоина кодируется в следующих форматах: 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.
- Локальные. Устанавливаются на десктопные или мобильные устройства. К ним относят Jaxx, Electrum, Coinomi, Exodus и другие. Делятся на «тонкие» и «толстые», в зависимости от способа обращения к блокчейн-сети.
- Онлайн-кошельки. Для их создания обычно нужно указать email и пароль. Такие сервисы могут предоставлять возможность просмотра приватных ключей или не иметь такой функции. Популярные сайты для хранения криптомонет: blockchain.com.
- Биржи криптовалют. После создания счета доступны кошельки для криптовалют, которые в листинге площадки. Приватные ключи не предоставляются. Можно вносить депозит на предоставленный адрес, торговать криптовалютой и совершать вывод. Популярные торговые платформы: LocalBitcoins (ЛокалБиткоинс), EXMO, Binance, Huobi, BitMEX и другие.
- Аппаратные кошельки. Наиболее безопасный вариант сохранить криптоактивы в безопасности. Владелец имеет полный контроль над всеми приватными ключами, а их кража невозможна. Выпускают аппаратные устройства Ledger, Trezor и другие.
- Бумажные. Это может быть просто записанный приватный ключ на бумаге или сервисы, которые его генерируют и предоставляют возможность распечатать и сохранить. Способ относится к «холодному» хранению криптовалют.
Как получить (экспортировать) приватный ключ биткоина
Бывают ситуации, когда необходимо получить свой приватный ключ из кошелька для тех или иных целей. Разберем, как это сделать.
Извлечение (экспорт) приватных ключей из криптокошельков
В качестве примера используется «тонкий» десктопный кошелек Exodus. В нем нужно произвести операцию экспорта приватного биткоин-ключа. Изначально она надежно скрыта, поскольку разработчики справедливо считают, что неопытному пользователю лучше не пытаться ее произвести. Неверные действия чреваты потерей средств из кошелька.
Инструкция по экспорту:
- Активировать «Developer Menu». В Windows и Linux это действие производится нажатием сочетания клавиш Ctrl+Shift+D.
- Выбрать ту криптовалюту, частный ключ которой интересует в текущий момент. Перейти по пунктам: «Developer» – «Assets» – «Bitcoin» или иная выбранная валюта – «Export Private Keys».
- В появившемся окне подтвердить свое желание нажатием кнопки «I’m sure».
- На рабочем столе появится папка под названием «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:
- Усиление анонимности. Владелец HD wallet обладает одной копией программного бумажника с одним тайным ключом (называемым также «семя» или «master key»). При объединении семени с хеш-функциями образуется бесконечное количество связанных между собой адресов. Связь невидима со стороны. Это адреса называют «дочерними».
- Легкость запоминания сид-фразы. Записать или выучить код из 12 слов намного легче, чем хранить приватные ключи для каждого отдельного адреса биткоина.
- Комфортное резервное копирование. Многие пользователи сталкиваются с проблемами резервного копирования мобильных кошельков на iOS или Android – возникает необходимость использовать один и тот же ключ, а это прямая угроза для безопасности. HD кошелек вообще не требует создания резервных копий, достаточно распечатать или сохранить в надежном месте сид-фразу.
Технология реализована в надстройке Armory для Bitcoin Core, кошельках Electrum, MultiBit HD, BitGo, CarbonWallet, The Hive, Mycelium Bitcoin Wallet, Green Address, Trezor и других.
Как безопасно хранить приватные ключи
Используя интернет-кошельки, следует понимать, что ключи хранятся на серверах компании-разработчика. Пользователь лично владеет private key лишь в случае использования десктопных, аппаратных или бумажных кошельков.
Варианты хранения кода:
- На бумаге.
- На флешке в виде скриншота или фотографии, pdf-файла.
- На жестком диске, в том числе съемном.
- На физической монете, металлической пластине (своеобразный аналог аппаратного «холодного» кошелька в форме криптовалютной монеты).
- В памяти.
Ни один из перечисленных способов не дает 100%-ную гарантию сохранности ключа, в каждом случае есть вероятность физического повреждения, взлома или кражи. Так что выбор каждый делает, исходя из своих соображений.
В Сети сейчас много злоумышленников, которые мечтают украсть приватный ключ биткоина. Они могут соблазнять бесплатными токенами, предлагать получить новые монеты, а взамен просят загрузить в сеть или созданную ими программу частный ключ. Делать этого ни в коем случае нельзя.
Источник