Что такое открытый ключ? Основы работы с криптокошельками, которые часто упускают из виду новички.

Самое важное, что вам нужно знать

  • Открытый ключ — это криптографический идентификатор, используемый для проверки транзакций без раскрытия закрытого ключа, а адрес кошелька — это упрощенная форма, полученная из него, которая передается для получения монет.
  • Сам по себе открытый ключ не может украсть деньги, но передача адресов кошельков, расширенных открытых ключей (xpubs) или скриншотов раскрывает вашу финансовую активность и влияет на вашу конфиденциальность.
  • Никогда не сообщайте свой закрытый ключ или пароль, остерегайтесь фишинга и вредоносного программного обеспечения для работы с адресами, и всегда проверяйте совпадение вашей сети и адреса при отправке криптовалюты.

введение

Открытый ключ — это криптографический идентификатор, полученный из закрытого ключа. Когда вы отправляете криптовалюту , ваш кошелек подписывает транзакцию, используя ваш закрытый ключ, который служит подтверждением вашего согласия. Затем сеть использует открытый ключ для проверки подписи, что означает, что тот, кто контролирует соответствующий закрытый ключ, авторизовал перевод.

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

Что такое открытый ключ? Основы работы с криптокошельками, которые часто упускают из виду новички.

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

Ключевые моменты

  • Что это такое? Открытый ключ — это та часть ключевой пары, которой можно поделиться. Криптовалюты.
  • Что это меняет? Это позволяет сетям проверять авторизацию транзакции без раскрытия закрытого ключа.
  • Основной риск или ограничение. Обычный открытый ключ не может тратить деньги, но адреса, расширенные открытые ключи (xpubs) и повторно используемые данные кошелька могут раскрывать информацию об активности.

Что такое открытый ключ?

Открытый ключ — это криптографический идентификатор, полученный из закрытого ключа. Когда вы отправляете криптовалюту, ваш кошелек подписывает транзакцию (действуя как подтверждение с вашей стороны) с помощью вашего закрытого ключа. Затем сеть использует этот открытый ключ для проверки подписи и подтверждения того, что транзакция была авторизована тем, кто контролирует соответствующий закрытый ключ.

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

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

Как открытые ключи связаны с владением криптовалютой?

Вопрос владения криптовалютой вращается вокруг одного: кто может авторизовать транзакцию? Ответ: тот, кто контролирует закрытый ключ. Открытые ключи позволяют проверить эту авторизацию, не раскрывая сам закрытый ключ.

Такое разделение известно как асимметричное шифрование, что означает, что два ключа в паре выполняют разные функции. Закрытый ключ создает цифровую подпись, а открытый ключ позволяет сети проверять эту подпись. Ни один из ключей не может выполнять функцию другого.

На практике система разделена на три основных направления:

  • Вывод: Закрытый ключ генерирует открытый ключ. Этот открытый ключ затем может создавать адрес кошелькаСредства, отправленные на этот адрес, могут быть потрачены только с использованием оригинального закрытого ключа.
  • Подпись и проверка: При отправке транзакции ваш кошелек подписывает ее локально, используя ваш закрытый ключ. Сеть проверяет подпись, используя ваш открытый ключ, и ваш закрытый ключ никогда не покидает ваше устройство.
  • Расширенные открытые ключи (xpubs): Расширенный открытый ключ (xpub) позволяет создавать или раскрывать набор адресов кошельков в рамках одной ветки учетной записи. Он не может подписывать транзакции, но раскрывает активность кошелька, что является важным аспектом конфиденциальности, который будет более подробно рассмотрен ниже.

Проще говоря: один путь идет от закрытого ключа к открытому ключу, а затем к адресу кошелька (деривационная цепочка). Другой путь идет от подписи закрытого ключа к проверке открытого ключа (транзакционная цепочка). Расширенный открытый ключ (xpub) находится рядом с деривационной цепочкой только в качестве контрольной ветви; он может видеть адреса, но не может переводить средства.

Открытый ключ против закрытого ключа против адреса кошелька

Вопрос владения криптовалютой сводится к одному фундаментальному вопросу: кто имеет право авторизовать транзакцию? Ответ кроется в том, кто контролирует закрытый ключ. Открытые ключи, с другой стороны, позволяют проверить эту авторизацию, не раскрывая при этом закрытый ключ.

Такое разделение между двумя ключами известно как асимметричное шифрование. Каждый ключ в этой паре выполняет совершенно разные функции. Закрытый ключ создает цифровую подпись, а открытый ключ позволяет сети проверять эту подпись. Ни один из них не может выполнять функцию другого; это явное и преднамеренное разделение в конструкции.

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

  • Вывод. Закрытый ключ генерирует открытый ключ, который, в свою очередь, генерирует адрес кошелька. Средства, отправленные на этот адрес, могут быть потрачены только с использованием исходного закрытого ключа.
  • Подпись и проверка. При отправке транзакции ваш кошелек подписывает ее локально, используя ваш закрытый ключ. Сеть проверяет подпись, используя ваш открытый ключ, при этом ваш закрытый ключ никогда не покидает ваше устройство.
  • Расширяемые открытые ключи (xpubs). Расширенный открытый ключ (xpub) может генерировать или раскрывать набор адресов кошельков в рамках одной ветви учетной записи. Он не может подписывать транзакции, но раскрывает активность кошелька, что является вопросом конфиденциальности, который будет рассмотрен позже.

Один из этих путей идет от закрытого ключа к открытому ключу, а затем к адресу кошелька; это называется деривационной цепочкой. Другой путь идет от подписи закрытого ключа к проверке открытого ключа; это называется транзакционной цепочкой. Расширенный открытый ключ (xpub) находится рядом с деривационной цепочкой только в качестве контрольной ветви; он может видеть адреса, но не может перемещать средства.

Как создать и использовать кошельки с открытым ключом

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

Это объясняется тем, что большинство кошельков используют структуру, известную как иерархически детерминированная (HD) структура. Единый корневой ключ формирует полное дерево подключей, каждый из которых связан с конкретной учетной записью, активом или адресом. Добавление нового адреса для получения средств не требует создания новой резервной копии, поскольку система торговли криптовалютой охватывает все дерево. Это хорошо упорядоченная система, как только вы поймете, как ее части взаимодействуют друг с другом.

Путь от резервной копии до рабочего адреса выглядит следующим образом:

  • Зародышевая фраза. Получите исходные данные корневого ключа. Запишите их и храните в автономном режиме.
  • Главный закрытый ключ. Это вершина ключевого дерева, и она происходит от исходного семени.
  • Закрытые ключи детей. Он используется для подписания транзакций по отдельным счетам или адресам.
  • Дочерние открытые ключи. Она проверяет эти подписи в сети.
  • Адреса. Это фактические точки сбора, которые видят пользователи, и они организованы для каждой сети. Вы можете увидеть доступные места для обмена.
  • Xpub. Это позволяет программам отслеживать или создавать адреса в определенной ветви без необходимости подтверждения подлинности.

Криптовалютные кошельки различаются по степени отображения этих данных. Горячий кошелек отображает упрощенные запросы адреса и подтверждения подписи. Холодный кошелек, с другой стороны, сохраняет этап подписи на самом устройстве и отображает адрес на отдельном экране перед подтверждением. Оба используют одну и ту же архитектуру первичного ключа. Если вы выбираете между доступными вариантами, наше руководство по лучшим криптокошелькам описывает их модель безопасности, поддержку блокчейна и простоту использования.

Что происходит при отправке или получении криптовалюты?

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

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

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

Эти два подхода решают разные проблемы:

  • ресепшн. Вы указываете правильно отформатированный адрес для соответствующего источника и сети. Отправитель позаботится обо всем остальном.
  • Эрсал. Ваш кошелек создает транзакцию, подписывает ее в автономном режиме с помощью закрытого ключа, а затем передает подписанный результат.

Один только открытый ключ не может инициировать перевод. Для совершения транзакции необходима действительная подпись закрытого ключа, а также соответствие транзакции сетевым требованиям в отношении формата, комиссий и баланса. Например, в Bitcoin скрипт P2PKH проверяет, совпадает ли предоставленный открытый ключ с сохраненным хешем, а затем использует OP_CHECKSIG для проверки подписи на соответствие этому хешу. Таким образом, предоставление адреса получателя не дает никому возможности переместить ваши средства.

Почему ваши открытые ключи безопасно передавать другим, и что они, тем не менее, раскрывают?

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

Каждая транзакция, связанная с адресом кошелька, записывается в публичный блокчейн. Если на один и тот же адрес поступает несколько платежей, любой пользователь обозревателя блоков может просмотреть полную историю этих платежей. Свяжите этот адрес с реальной личностью — через публикацию в социальных сетях, профиль или вывод средств с торговой платформы — и вся ваша история транзакций будет видна любому, кто будет её искать.

Ниже перечислены некоторые из наиболее распространенных способов, которыми пользователи раскрывают больше информации, чем намереваются, и эти способы являются практическими и легко упускаются из виду:

  • Укажите адрес доставки рядом со своим именем или ссылкой на аккаунт в социальных сетях.
  • Повторное использование одного адреса для нескольких платежей или платформ.
  • Для того чтобы поделиться файлом XPUB с приложением или сервисом, не обязательно видеть ветки кошелька.
  • Присылайте скриншоты, содержащие визуальные титры или заголовки.
  • Совмещение адресов для пополнения счета на торговой платформе и адресов личных кошельков под одним именем пользователя.

Таким образом, общее правило заключается в том, что обычный открытый ключ не несет риска расходования средств. Но адреса, xpubs и скриншоты кошельков — это фрагменты данных в блокчейне, которые со временем могут быть связаны между собой. Для пользователей, обеспокоенных финансовой конфиденциальностью, лучшие анонимные криптокошельки специально разработаны для минимизации этого риска.

Открытые ключи в Bitcoin, Ethereum и Solana: понимание ключевых различий

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

сеть Примечания к открытому ключу/заголовку
Bitcoin В электронных кошельках часто используются адреса, полученные из хешей открытых ключей, а при совершении транзакций данные открытых ключей могут быть раскрыты в зависимости от типа скрипта.
Эфириум Адреса учетных записей, находящихся во внешней собственности, формируются на основе открытых ключей и отображаются с префиксом 0x.
Solana Адреса учетных записей обычно представляются в виде 32-байтовых значений, которые могут быть открытыми ключами Ed25519 или адресами, полученными программой.

В Биткоине P2PKH-адреса формируются на основе хеша открытого ключа. Полный открытый ключ раскрывается только при вводе транзакции и расходовании средств, в зависимости от типа скрипта. Новый Биткоин-адрес не сразу раскрывает основной открытый ключ.

В сети Ethereum адрес формируется путем хеширования открытого ключа с использованием алгоритма Keccak-256, при этом берутся последние 20 байтов и добавляется префикс 0x. Исходный открытый ключ не отображается при обычном использовании. Кошельки, такие как MetaMask, отображают этот сформированный адрес напрямую, а в обзоре кошелька MetaMask рассматривается, как он обрабатывает ключи и подпись на практике.

Solana использует другую модель учетных записей. Адрес может представлять собой 32-байтовый открытый ключ Ed25519 или адрес, полученный программным способом, в зависимости от типа учетной записи. Это структурно отличается от модели UTXO в Bitcoin и модели учетных записей EVM в Ethereum. Если вы выбираете кошелек для Solana, убедитесь, что он действительно поддерживает архитектуру учетных записей Solana. Руководство по лучшим кошелькам для Solana поможет вам принять это решение.

Риски, связанные с открытыми ключами, которые упускают из виду новички.

Сам по себе открытый ключ редко представляет собой уязвимость. Реальные риски связаны с окружающими его факторами: попытками фишинга, вредоносным программным обеспечением для перехвата буфера обмена, утечками ключей Xpub, повторным использованием адресов и передачей данных по неправильной сети. Эти проблемы наносят начинающим больше вреда, чем любые непосредственные проблемы, связанные с открытым ключом.

Перед переводом денег обязательно выполните следующие проверки:

Риск Что проверить
Фишинг Никогда не вводите свою фразу восстановления или закрытый ключ на каких-либо веб-сайтах, в чате поддержки или формах.
Вредоносное программное обеспечение для адресации После вставки адреса сравните первую и последнюю буквы.
неисправная сеть Убедитесь, что цифровой оригинал и серийный номер соответствуют инструкциям получателя.
Утечка ключа XPub Делитесь ключом XPUB только с инструментами, которым необходим доступ к информации о ветвях кошелька.
Повторное использование заголовка Используйте новые адреса получателей, когда важна конфиденциальность.
Квантовые риски Разграничьте понятия долгосрочной миграции шифрования и утверждения о немедленной краже открытого ключа.

Некоторые из этих моментов заслуживают более подробного объяснения для начинающих.

Фишинг — наиболее распространенный способ атаки. Легитимное приложение-кошелек, торговая платформа или служба поддержки никогда не запросят у вас фразу восстановления или закрытый ключ. Любой запрос этой информации, будь то через форму, окно чата или расширение для браузера, является попыткой атаки.

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

Ошибки при передаче данных по сети возникают , когда один и тот же формат адреса действителен в нескольких блокчейнах. Например, отправка ETH на адрес Ethereum в Binance Smart Chain может привести к тому, что средства станут доступны только после дополнительных шагов. Всегда проверяйте не только адрес, но и сам блокчейн.

Как проверить и защитить настройки клавиш?

Понимание функции открытого ключа становится действительно ценным, когда оно меняет подход к обработке адресов, подтверждению транзакций и хранению резервных копий. Главная цель — обеспечить возможность подписания ключей в автономном режиме, тщательно проверять адреса перед подтверждением любой транзакции и понимать, контролируете ли вы свои закрытые ключи самостоятельно или полагаетесь на третью сторону в их хранении.

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

Перед переводом каких-либо ценных средств проверьте все следующие пункты:

  • Тип кошелька: Проверьте, является ли кошелек кастодиальным или самокастодиальным, горячим или холодным.
  • Адрес доставки: Перед тем как поделиться адресом, проверьте сеть и количество видимых символов.
  • Экран физического устройства: При использовании физического устройства-кошелька (аппаратного обеспечения) перед подписанием проверьте адрес, отображаемый на экране. Примером такой модели является Trezor Safe 5.
  • Резервная фраза восстановления: Запишите свою фразу восстановления на листке бумаги и храните её в автономном режиме. Никогда не вводите её на веб-сайте или в приложении.
  • Небольшой тест: Сначала отправьте небольшую сумму, убедитесь, что она поступила, а затем продолжите весь процесс перевода.
  • Охрана платформы: Если вы используете централизованную платформу, проверьте процедуру вывода средств и наличие включенной двухфакторной аутентификации.

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

Общие вопросы

Что такое открытый ключ в криптовалютах?

Открытый ключ в криптовалютах — это фрагмент криптографических данных, который можно безопасно передавать. Он используется для проверки подписей транзакций и для генерации адресов цифровых кошельков в различных сетях. Его основная функция — доказать, что транзакция была авторизована с использованием соответствующего закрытого ключа, без необходимости раскрытия этого закрытого ключа.

Совпадает ли открытый ключ с адресом кошелька?

Нет, открытый ключ — это не то же самое, что адрес кошелька. Адрес кошелька — это, по сути, более короткая, специфичная для сети версия, полученная из данных открытого ключа. Приложения цифровых кошельков отображают адреса вместо исходных открытых ключей, потому что адреса специфичны для конкретного блокчейна, что делает их использование проще и безопаснее.

Может ли кто-то украсть мою криптовалюту, если у него есть мой открытый ключ?

Нет, никто не сможет украсть вашу криптовалюту, просто имея ваш открытый ключ. Для совершения транзакций требуется действительная цифровая подпись, сгенерированная соответствующим закрытым ключом, а не открытым ключом. Знание открытого ключа или адреса кошелька не дает никому права подписывать транзакции или получать доступ к вашим средствам.

Может ли открытый ключ раскрыть закрытый ключ?

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

Что такое XPUB и безопасно ли им делиться?

xpub расшифровывается как «расширенный открытый ключ» — ключ, позволяющий создавать или отображать несколько адресов в рамках определенной ветви кошелька, не имея возможности подписывать транзакции. Хотя xpub не может тратить средства, он может раскрывать историю транзакций и шаблоны адресов, связанные с этой ветвью. Поэтому его следует передавать только инструментам, требующим полного представления о ветви кошелька, таким как бухгалтерские программы или кошельки только для просмотра.

Комментарии закрыты.