Прежде чем представить блокчейн-кошелек, мы сначала подробно представим процесс генерации биткойн-адреса.
Большой процесс: закрытый ключ — «открытый ключ» — адрес.
Начнем с небольших знаний компьютера: биты, байты, слова, КБ, МБ.
Закрытый ключ представляет собой 256-битное случайное число. Согласно приведенным выше знаниям о компьютере, так называемые 256 бит представляют собой 256 чисел, состоящих из 0 и 1. 256, разделенное на 8, равно 32, что составляет 32 байта. выражается в шестнадцатеричном формате. Размер находится в диапазоне 0x0000 0000 0000 0000 0000 0000 0000 0000 0000 0000. 0000 0000 0000 0000 0000 0001 ~ 0xFFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFE BAAE DCE6 AF48 A03B BFD2 5E8C D036 4141.
8F72F6B29E6E225A36B68DFE333C7CE5E55D83249D3D2CD6332671FA445C4DD3
После генерации закрытого ключа мы используем алгоритм шифрования эллиптической кривой (ECDSA-secp256k1) для вычисления несжатого открытого ключа, соответствующего секретному ключу. Общий размер сгенерированного открытого ключа составляет 65 байт. Один из байтов — 0x04, а несжатый открытый ключ выглядит следующим образом:
0406CCAE7536386DA2C5ADD428B099C7658814CA837F94FADE365D0EC6B1519385FF83EC5F2C0C8F016A32134589F7B9E97ACBFEFD2EF12A91FA622B38A1449EEB
SHA-256 хеширует открытый ключ выше, вычислить,получить результаты:2572e5f4a8e77ddf5bb35b9e61c61f66455a4a24bcfd6cb190a8e8ff48fc097d
Возьмите результат предыдущего шага и выполните расчет RIPEMD-160, чтобы получить результат:
0b14f003d63ab31aef5fedde2b504699547dd1f6
Номер версии основной сети Биткойна «0x00»,Получите результат предыдущего шага,Добавьте шестнадцатеричный 00 впереди,Прямо сейчас:000b14f003d63ab31aef5fedde2b504699547dd1f6
Взяв результат предыдущего шага и выполнив расчет SHA-256, мы можем получить:
ddc2270f93cc84cc6869dd373f3c340bbf5cb9a8f5559297cc9e5d947aab2536
Затем снова рассчитайте приведенные выше результаты. SHA-256 Хэш-значение, получите:
869ac57b83ccf75ca9da8895823562fffb611e3c297d9c2d4612aeeb32850078
869ac57b000b14f003d63ab31aef5fedde2b504699547dd1f6
Base58 закодирует результат предыдущего шага, чтобы получить:
1QCXRuoxWo5Bya9NxHaVBArBQYhatHJrU7
Цель этого длинного глагола — позволить разработчикам понять, как программировать и разрабатывать инструмент кошелька.
Судя по приведенному выше процессу генерации биткойн-адреса, сущность кошелька на самом деле представляет собой закрытый ключ, который представляет собой строку случайного хэш-значения. Наличие закрытого ключа дает вам право использовать кошелек. Но почему, когда речь идет о блокчейн-кошельках, существуют также связанные понятия, такие как хранилище ключей, мнемонические слова, холодные кошельки, горячие кошельки, аппаратные кошельки и т. д., что вызывает много путаницы.
Это легче понять. Когда вы используете инструмент кошелька для создания ключа кошелька, вам необходимо ввести пароль. Для чего используется этот пароль? Хранилище ключей — это закрытый ключ, зашифрованный с помощью введенного пароля. Чтобы использовать хранилище ключей для выполнения операций с кошельком, таких как переводы транзакций, вы должны знать пароль хранилища ключей.
В приведенном выше примере закрытый ключ представляет собой 256-битное число, выраженное в шестнадцатеричном виде: 8F72F6B29E6E225A36B68DFE333C7CE5E55D83249D3D2CD6332671FA445C4DD3. Он состоит из 64 символов от 0 до F. Он не имеет смысла и его трудно понять и запомнить. Мнемоническая фраза заключается в преобразовании этих 64 символов в ряд слов (это могут быть английские, французские, китайские или даже известные вам диалекты) с помощью алгоритма (который можно понимать как кодовую панель, используемую в телеграммах в шпионских военных драмах). , он был впервые создан в рамках предложения BIP39 и может состоять из 12, 15, 18, 21, 24 конкретных слов. Эти слова имеют единый и фиксированный словарный запас и не берутся из воздуха. Например, количество мнемоник, генерируемых при создании знакомого кошелька imToken, равно 12.
Пользователи могут понимать мнемоническую фразу как обычный текстовый закрытый ключ. То есть наличие мнемонической фразы эквивалентно праву на использование кошелька. Никакого пароля не требуется, то есть пароль, который вы вводите для создания кошелька, не требуется. .
Поняв, что суть кошелька — это закрытый ключ, вам необходимо хорошо хранить закрытый ключ. Холодный кошелек — это кошелек, в котором сеть не может получить доступ к вашему личному ключу. Холодные кошельки часто полагаются на «холодные» устройства для обеспечения безопасности личных ключей Биткойна, такие как компьютеры, мобильные телефоны и небольшие ноутбуки с записанными на них адресами закрытых ключей, которые не подключены к Интернету. Холодные кошельки позволяют избежать риска кражи секретных ключей хакерами, но они могут столкнуться с рисками физической безопасности, такими как повреждение жесткого диска компьютера (например, Edison), использование небольших ноутбуков в качестве туалетной бумаги и т. д.
Горячий кошелек — это кошелек, который имеет доступ в Интернет к вашим личным ключам. Горячие кошельки, как правило, представляют собой онлайн-кошельки. При использовании горячих кошельков лучше всего установить разные пароли на разных платформах и включить вторичную аутентификацию, чтобы обеспечить безопасность ваших активов.
Как следует из названия, аппаратные кошельки используют оборудование, к которому можно прикоснуться, чтобы облегчить создание и хранение ключей. Наиболее известные из них: Trezor, Ledger. Вы можете зайти на Taobao, чтобы узнать, доступны ли они для продажи. Это буква U, похожая на то, как банк открывает аналогичное оборудование для онлайн-банкинга. Вот две картинки, которые каждый может посмотреть. Я никогда не использовал их. Однако, если с этой вещью не обращаться должным образом, это может легко привести к уязвимостям безопасности. Лучше сохранить и поддержать. вверх правильно.
Наконец, давайте поговорим о безопасности кошелька.
Существует два основных аспекта безопасности кошелька: один — предотвратить кражу, а другой — предотвратить потерю.
Чтобы предотвратить кражу, нужно предотвратить утечку приватных ключей. Здесь нужно понимать разницу между хранилищем ключей и мнемоническими фразами. Как уже говорилось выше, если вы не до конца разобрались, вы можете пролистать вверх и посмотреть.
Мнемоническая фраза, являющаяся дружественным форматом закрытых ключей кошелька, очень удобна для резервного копирования и импорта. Из-за ее простого текста мы не рекомендуем сохранять ее в электронном виде, а копировать и хранить на физическом носителе. хранилище ключей используются как двойные резервные копии, дополняющие друг друга.
Хранилище ключей можно хранить в Интернете, например на облачном диске, или на вашем собственном USB-накопителе (этим пользуются аппаратные кошельки). Это относительно безопаснее, чем онлайн-хранилище, даже если хакер украдет ваше хранилище ключей без пароля. keystore, по-прежнему невозможно украсть активы, поэтому пароль хранилища ключей в настоящее время особенно важен. Пользователям рекомендуется хранить хранилище ключей и пароли отдельно, а не в одном и том же месте, и использовать надежные, случайно сгенерированные пароли.
Стратегия защиты от потерь — это, в основном, множественные резервные копии и множественные резервные копии. Например, при резервном копировании кошелька вы делаете резервную копию не только хранилища ключей, но и мнемонической фразы и закрытого ключа. Это многократное резервное копирование.
Заявление об авторских правах: Содержание этой статьи добровольно предоставлено пользователями Интернета, а мнения, выраженные в этой статье, представляют собой только точку зрения автора. Этот сайт предоставляет только услуги по хранению информации, не имеет никаких прав собственности и не принимает на себя соответствующие юридические обязательства. Если вы обнаружите на этом сайте какое-либо подозрительное нарушение авторских прав/незаконный контент, отправьте электронное письмо, чтобы сообщить. После проверки этот сайт будет немедленно удален.
Издатель: Лидер стека программистов полного стека, укажите источник для перепечатки: https://javaforall.cn/179511.html Исходная ссылка: https://javaforall.cn