Перейти к основному содержимому

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

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

Обзор открытого ключа

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

Обзор закрытого ключа

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

Различия между открытым и закрытым ключами

Открытый ключЗакрытый ключ
ДоступностьПубличный
доступен любому
Конфиденциальный
известен только владельцу
Тип ключаАсимметричныйАсимметричный
ГенерацияГенерируется вместе с закрытым ключомГенерируется вместе с открытым ключом
Используемый алгоритмОснован на алгоритмах шифрования RSA, ECC и другихОснован на том же алгоритме, что и открытый ключ
Функциональное назначениеШифрование данных, проверка цифровой подписиДешифрование данных, создание цифровой подписи
Требования к безопасностиОсобых требований нетДолжен быть строго конфиденциальным, исключать утечку
Место храненияХранится в цифровых сертификатах, исходящих электронных письмах и исполняемых файлахХранится на авторизованных устройствах и непубличных серверах
Типичные случаи использованияSSL-сертификаты, блокчейнБезопасные транзакции, проверка подлинности