Использование CMS_sign () с флагом CMS_CADES, включая цепочку сертификатов для соответствия CAdES. Должен ли я использовать флаг CMS_PARTIAL? - PullRequest
1 голос
/ 12 июля 2020

Будет ли следующее сгенерировать подпись сообщения, совместимую с CAdES?

API do c для CMS_sign (), похоже, указывает, чтобы использовать SHA256 для дайджеста сообщения, мне нужно использовать флаг «CMS_PARTIAL». Также патч CAdES openssl , похоже, подразумевает CMS_PARTIAL и вручную вызывает «CMS_add1_signing_cert_v2 ()», за которым следует «CMS_final ()». Но я надеялся, что добавления флага CMS_CADES в CMS_sign () могло быть достаточно. Отсюда и вопрос.

Мои вопросы к любым экспертам по OPENSSL C API:

  1. Будет ли следующее использовать SHA1 для создания дайджеста сообщения?

  2. Будет ли следующее генерировать криптографический c синтаксис сообщения, соответствующий стандартам CAdES ( RF C -5126 )?

  3. Если SHA256 требуемый метод для создания дайджеста сообщения, должен ли я использовать CMS_PARTIAL?

    CMS_ContentInfo * CMS_sign (signcert, EVP_PKEY * pkey, STACK_OF (X509) * intermediate_certs, BIO * data, CMS_DETACHED | CMS_CADES);

1 Ответ

0 голосов
/ 17 июля 2020

Я тестировал свой собственный код на Ubuntu, используя OPENSSL 3.0.0-Alpha4. CMS_sign () по умолчанию использует SHA2256. Итак, ответ на 3 - нет: нет необходимости использовать флаг CMS_PARTIAL только для того, чтобы выбрать SHA256 в качестве MD.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...