Введение

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


Как работает криптография с открытым ключом?

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

Поскольку алгоритмы асимметричного шифрования генерируют пары ключей, которые связаны математически, длина их ключей намного больше, чем у тех, которые используются в симметричной криптографии. Такая большая длина — обычно от 1024 до 2048 бит — чрезвычайно затрудняет вычисление закрытого ключа на основе его открытого аналога. Один из наиболее распространенных алгоритмов асимметричного шифрования, используемых сегодня, известен как RSA.

В схеме RSA ключи генерируются с использованием модуля, который получается путем умножения двух чисел (часто двух больших простых чисел). Проще говоря, модуль генерирует два ключа (один общедоступный, которым можно поделиться, и один частный, который следует хранить в секрете). Алгоритм RSA был впервые описан в 1977 году Ривестом, Шамиром и Адлеманом (отсюда и RSA) и остается основным компонентом систем шифрования с открытым ключом.


PKC как инструмент шифрования

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


Генерация цифровых подписей

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


Ограничения

Хотя его можно использовать для повышения компьютерной безопасности и проверки целостности сообщений, PKC имеет некоторые ограничения. Из-за сложных математических операций, связанных с шифрованием и дешифрованием, асимметричные алгоритмы могут работать довольно медленно, когда им приходится иметь дело с большими объемами данных. Этот тип криптографии также во многом зависит от предположения, что закрытый ключ останется секретным. Если закрытый ключ случайно будет передан или раскрыт, безопасность всех сообщений, зашифрованных с помощью соответствующего открытого ключа, будет поставлена ​​под угрозу. Пользователи также могут случайно потерять свои секретные ключи, и в этом случае для них станет невозможным доступ к зашифрованным данным.


Применение криптографии с открытым ключом

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

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

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

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

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


Заключительные мысли

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