Учебники

Блокчейн — криптография с открытым ключом

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

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

PKI выполняет две функции — аутентификацию и конфиденциальность сообщений с помощью механизма шифрования / дешифрования. Теперь я объясню обе эти функции —

Аутентификация

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

Аутентификация

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

Теперь Боб говорит, что он посылает Лизе 10 долларов. Поэтому он создает сообщение (текстовое сообщение), содержащее открытый ключ Боба (отправителя), открытый ключ Лизы (получателя) и сумму (10 долларов США).

Цель этого перевода, например, «Я хочу купить тыкву у вас», также добавлена ​​в сообщение. Все сообщение теперь подписано с использованием закрытого ключа Боба. Когда Лиза получит это сообщение, она будет использовать алгоритм проверки подписи PKI и открытый ключ Боба, чтобы убедиться, что сообщение действительно произошло от Боба. Как работает PKI, выходит за рамки данного руководства. Заинтересованный читатель обращается к этому сайту для более подробного обсуждения PKI. Это устанавливает подлинность отправителя сообщения. Теперь давайте посмотрим на конфиденциальность сообщения.

Конфиденциальность сообщений

Теперь, когда Лиза получила свой платеж, она хочет отправить ссылку на свою электронную книгу, которую хочет купить Боб. Таким образом, Лиза создаст сообщение и отправит его Бобу, как показано на рисунке —

Конфиденциальность сообщений

Лиза создает сообщение типа «Вот ссылка на мою электронную книгу, которую вы запросили», подписывает ее открытым ключом Боба, который она получила в сообщении с запросом Боба, а также шифрует сообщение с использованием некоторого секретного ключа, который разделяется между ними. во время HTTPS рукопожатия.

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

Рассматривая обе функции, Authentication и Message Privacy, подразумеваемые PKI, давайте продвинемся дальше, чтобы увидеть, как Биткойн использует PKI для защиты публичной книги, о которой я упоминал в главе «Что такое Биткойн?».

Насколько вам известно — наиболее популярными алгоритмами PKI являются RSA и ECDSA , биткойн использует последний.