ЗНАНИЯ БЕЗ ЛИШНЕГО ШУМА

Подпись сообщения Bitcoin: что она доказывает и как её проверить

Как отделить подпись текста от перевода BTC, зачем нужен одноразовый запрос и что проверить в формате BIP322.

Карточка запроса и отдельная печать подписи

Подпись сообщения Bitcoin позволяет проверить, что участник мог выполнить соответствующее условие подписи для указанного адреса и текста. Она не передаёт BTC. Поддержка форматов отличается, поэтому заранее согласуйте способ проверки.

Как выглядит пример проверки

Проверяющий выдаёт одноразовую фразу с назначением и сроком, например «Проверка доступа, код 4821, до 18:00». Подписывающий сверяет её целиком. Затем проверяющий использует тот же адрес, точно тот же текст и подпись. Если изменить код или пробелы, проверка может завершиться иначе.

Что сверяет проверяющий. Адрес — условие. Сообщение — точный текст. Подпись — доказательство
Что сверяет проверяющий

Зачем нужен одноразовый запрос

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

Границы проверки. Контроль — на момент подписи. Личность — не установлена. Баланс — проверяется отдельно
Границы проверки

Что проверить в приложении

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

Для подготовки перевода используется другой формат. См. что находится в PSBT и как читать публичный адрес.

Поиск по сайту