Использование HTTPS-сертификатов: Верификация цифровой подписи.

D2

Администратор
Регистрация
19 Фев 2025
Сообщения
4,380
Реакции
0
Сначала я загружу открытый ключ домена site com в файл pubkey.pem:

Код: Скопировать в буфер обмена
openssl s_client -connect site.com:443 -showcerts | openssl x509 -pubkey -noout > pubkey.pem

Затем преобразуем подпись обратно в бинарный формат и проверим её:

Код: Скопировать в буфер обмена
openssl base64 -d -in msg.txt.sig.asc -out msg.txt.sig
Код: Скопировать в буфер обмена
openssl dgst -keyform pem -verify pubkey.pem -signature msg.txt.sig msg.txt

Если всё прошло успешно,ты увидишь сообщение Verified OK.

Шифрование данных

Теперь, давай рассмотрим шифрование данных с использованием открытого ключа вашего домена. Сторонний пользователь может зашифровать данные и передать их тебе, зная, что только ты сможете расшифровать их с помощью твоего закрытого ключа.

Код: Скопировать в буфер обмена
openssl pkeyutl -in msg.txt -out msg.enc -pubin -inkey pubkey.pem -encrypt

Для удобства передачи по электронной почте или через мессенджер, преобразуем зашифрованный файл в текстовый формат:

Код: Скопировать в буфер обмена
openssl base64 -in msg.enc -out msg.enc.asc

Расшифровка данных

Владелец закрытого ключа может расшифровать сообщение следующим образом:

Код: Скопировать в буфер обмена
openssl base64 -d -in msg.enc.asc -out msg.enc
Код: Скопировать в буфер обмена
openssl pkeyutl -in msg.enc -out msg.txt -inkey privkey.pem -decrypt

Теперь ты знаешь, как использовать HTTPS-сертификаты для шифрования и создания цифровых подписей. Это простой и эффективный способ повысить безопасность твоей переписки и передачи данныx.
 
Сверху Снизу