Подпись сообщения openssl smime: зачем мне ключ -certfile?

Вот как нужно подписать сообщение openssl smime? в соответствии с документами

openssl smime -sign -in in.txt -text -out mail.msg -signer mycert.pem \
 -inkey mykey.pem -certfile mycerts.pem

Но почему там -signer ключ с сертификатом - секретный ключ не передается в -inkey достаточно для подписания сообщения? Разве это не обычная асимметричная схема шифрования, где мой закрытый ключ предназначен для подписи сообщений, а мой сертификат (то есть подписанный открытый ключ, соответствующий моему закрытому ключу) предназначен для моего партнера для шифрования сообщения?

2 ответа

Это немного сложнее, чем это.

Хотя, по сути, вы МОЖЕТЕ подписывать сообщения случайными ключами, без идентификации сертификата, проверяющая сторона будет немедленно аннулирована.

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

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

Другие вопросы по тегам