Процедура подписи и верификации сообщений в блокчейн сетях. (на примере сети адреса сети Bitcoin)
@сonfluxrussiansЧто такое подпись и верификация сообщений в блокчейн сетях?
На момент написания исходного кода Bitcoin, первой публичной блокчейн сети. В мировом сообществе все большую актуальность набирали популярность такие вопросы как:
• «Реализация права на анонимность»;
• «Суверенная идентичность»;
• «Реальная роль и значение третьей, доверенной, стороны при обмене информацией между двумя сторонами»;
• «Доступ и хранение персональных данных третьей стороной».
Особенно остро данные вопросы стали обсуждаться в массах на фоне очередного кризиса банковской и Всемирной экономической модели 2008 года. Данные темы остаются актуальными и сегодня. Спустя почти 15 лет популярность их только возросла и мировое сообщество продолжает формировать необходимые инструменты, которые отвечают современным требованиям и являются частичными решениями данных вопросов.
Одним из фундаментальных инструментов, до сих пор, остается «Подписание и Верификация Сообщений в блокчейн сетях». Который был реализован ещё в 2008 году, автором проекта Bitcoin, отцом-основателем технологии блокчейн и криптосообщества, Satoshi Nakamoto.
Почему это Важно?
В условиях, когда Вам необходимо публично доказать причастность/право владения адресом и, соотвественно, ассоциированным, с адресом, имуществом/капиталом, либо подтвердить верность публичных данных; При этом сохранить свою анонимность(не передавать и не раскрывать, какой либо из сторон, свои персональные данные, приватные ключ, фразы восстановления и информацию о владении другими адресами блокчейн сетей), а также быть уверенным что подтверждённая Вами публично информация не может быть удалена и/или изменена; Найти решение не так то просто, но возможно.
Рассмотрим более детально процедуру «Подписи и верификации сообщений в блокчейн сетях» и проверим насколько данное решение отвечает требованиям современности.
Процедура подписи сообщения
При создании подписи (сигнатуры) сообщения используются:
• Адрес блокчейн сети(публичный ключ);
• Приватный(секретный ключ);
• Текст сообщения, которое необходимо подписать;
• Пароль(если он установлен), для подтверждения операции подписи сообщения, этот же пароль используется при подтверждении трансляции/отправления транзакции на сеть;
Сигнатура(подпись) - является результатом шифрования данных сообщения, публичного(адреса блокчейн сети) и приватного ключей, с применением криптографически стойких алгоритмов.
⚠️ Подписывать сообщения с адреса блокчейн сетей имеет возможность только владелец приватного ключа данного адреса.
⚠️Только Владелец приватных ключей является владельцем адресов и всех балансов на этих адресах.
Процесс верификации сообщения
Полученная сигнатура является единственно верным вариантом подписи, именно и только того, сообщения, которое указано для подписания и только для адреса, с которого данное сообщение подписано.
Процесс верификации сообщения происходит с использованием следующих данных:
• Адрес (публичный ключ), с которого было подписано сообщение;
• Текст сообщения(точная копия, с указанием всех знаков, пробел также учитывается как знак);
• Сигнатура (подпись, сгенерированная при подписании сообщения, владельцем адреса);
Все выше перечисленные данные являются публичными и никак не раскрывают ни ваши персональные данные, ни информацию о приватных ключах вашего адреса, либо других адресов блокчейн сетей.
При этом неизменность и сохранность данных обеспечивается самой децентрализованной блокчейн сетью.
⚠️Верификация сообщения может быть успешной, только в при условии, что все указанные данные верны и не были изменены.
Исходя из выше описанного можно сделать вывод, о том, что:
Но если, последние 15 лет, данным инструментом пользовались в основном «ветераны» криптособщества, то на фоне, актуального сейчас, перехода всей планеты на модель с применением децентрализованных систем и обострения вопроса суверенной идентичности, умение подписывать сообщения, а так же их верификация, в скором времени, встанет на одну ступень, с умением читать и писать.
👇Ниже приведены практические примеры, которые помогут Вам легко и быстро наглядно разобраться и попробовать на практике подпись и верификацию сообщений. 👇
Примеры
Примечание: Процесс подписания и верификации сообщений описан на примере и с использованием адреса сети Bitcoin. В данных примерах используется онлайн сервис https://blockchain.com . Его использование обусловлено исключительно в ознакомительных целях с основной темой данной статьи. Не является рекомендацией к использованию, либо любой иной формой рекомендации.
✍️ Подписание сообщения✍️
Для подписания сообщения нам необходим личный адрес блокчейн сети, то есть адрес, чьи приватные ключи контролируете только Вы.
В нашем случае, это адрес сети Bitcoin.
Для тех, у кого нет личных адресов сети Bitcoin, я опишу наиболее быстрый способ, как его получить и сразу же получить возможность работы с сообщениями.
- Переходим и регистрируемся на старом проверенном сервисе blockchain.com, по данной ссылке: https://www.blockchain.com/ ;
2. После регистрации, в личном кабинете выбираем вкладку «Управление кошельками и адресами»(Wallets and Adresses)
3. На странице управления кошельками и адресами, напротив адресами, с которого Вы хотите подписать сообщение, нажимаете на вкладку управлять(manage).
4. В появившемся каскаде выбираем «Подписать сообщение» (Sign Message);
5. В открывшейся форме пишем сообщение, которое хотим подписать.
В нашем примере подписываем сообщение, которое станет единовременно доказательством того, что для чего, кем и когда оно было создано:
Данное сообщение является отучающим. Автор: Mitrandir (https://t.me/confluxcm) Дата: 25 мая 2022 года.
6. Нажимаем подписать(sign) и копируем сигнатуру(подпись).
Сигнатура: G/D6Y8x5bRnRJ2O9HQH37q9dIaJ6tKMxrKtbAnHCD039ZGmXhqZutSLPpMTc99Vb2WkDgnr/0L1oYisFrA8PQNw=
Мы только что успешно подписали сообщение с адреса сети Bitcoin.
Процесс верификации сообщения
Для верификации сообщения будем использовать два сообщения, одно которое было подписано мной заранее до написания данной статьи и непосредственно то, которое мы с вами только что подписали.
Верифицировать сообщение можно также в личном кабинете онлайн сервиса https://blockchain.com
- Переходим личном кабинете в раздел «Управление кошельками и адресами» и выбираем Верифицировать сообщение(Verify ‘Message)
2. Далее в появившемся окне указываем необходимые, для верификации сообщения, данные
3. Сначала проверим то сообщение, которое мы с Вами только что подписали. Для этого копируем и вставляем в окно верификации следующие данные:
• Адрес: 17moTgFDFxhRRXMwyc8yEUg2hzNWnm6Gss
• Сообщение:
Данное сообщение является отучающим. Автор: Mitrandir (https://t.me/confluxcm) Дата: 25 мая 2022 года.
• Сигнатура:
G/D6Y8x5bRnRJ2O9HQH37q9dIaJ6tKMxrKtbAnHCD039ZGmXhqZutSLPpMTc99Vb2WkDgnr/0L1oYisFrA8PQNw=
Как мы видим результат успешный. Верификация пройдена.
4. Теперь попробуем верифицировать сообщение, которое я подписал заранее,
вот его данные:
• Адрес:
17moTgFDFxhRRXMwyc8yEUg2hzNWnm6Gss
• Сообщение:
I’m owner of https://t.me/Confluxcm, https://forum.conflux.fun/u/mitrandir/ https://forum.conflux.fun/u/mitrandirdao accounts and Community Lead of Conflux Russian Community. By that message I’m verify my account ownership and ownership of Conflux Russsian Community DAO official web sources: https://t.me/confluxrussians https://t.me/confluxrussianann .
• Сигнатура:
HDJPkE+c0nyI8MX2bOPO86kpithPNhRD0kEKubRXkciDU7ypwWZyCOWr/X1neforgdA7ltADybgN7q15x/ZgX/c=
У меня результат успешный.
Мы только что верифицировали подписанное сообщение в сети Bitcoin.
Автор статьи: Mitrandir
Поблагодарить автора: cfx:aaky1vh7z36e8g85rvzdf6gc0d4cbvaw3jbmum96nh
Поделится своими результатами и задать интересующие Вас вопросы касательно криптовалют всегда можно у нас в чате👇
Мы рады приветствовать всех на официальных ресурсах оригинального Русскоязычного сообщества Conflux:
Telegram: https://t.me/confluxrussians;
Новостной канал в Telegram: https://t.me/confluxrussianann;
Запуск Conflux Russian DAO все ближе!!!
Присоединяйся
Conflux - Cообщество без границ
Conflux - Community without barriers
Примечание: https://t.me/confluxrussian Telegram-чат не поддерживается русским сообществом и самовольно управляется украинскими ambassadors под руководством Camilla Caban.