Пока для меня ясно: если срок действия самого сертификата подписи кода истекает, подписанный код будет проверен / принят, если он был подписан с отметкой времени. В противном случае срок действия подписанного кода также истек.
Но что произойдет, если истечет срок действия самого моего ЦС (корневого ЦС и, таким образом, выдающих ЦС)?
Но что произойдет, если истечет срок действия самого моего ЦС (корневой ЦС и, таким образом, выдающие ЦС)?
Буквально ничего. Поясним это немного подробнее.
Если подпись не имеет отметки времени, подпись действительна до тех пор, пока:
Если срок действия сертификата подписи истек, он отозван или стал недействительным тем или иным образом, подпись считается недействительной. Легко и просто.
Целью меток времени в цифровой подписи является обеспечение расширенного доверия для подписанного содержимого. Сертификаты для подписи действительны в течение короткого периода времени, а базовые настройки доверия не подходят для долгосрочной (возможно, архивной) подписи. Обычно (без меток времени) вам придется воссоздавать подпись каждый раз при обновлении сертификата подписи. Это путь в никуда.
При добавлении метки времени к цифровым подписям условия доверия изменяются на следующий список:
Что здесь изменилось: подпись остается действительной после истечения срока действия задействованного сертификата. То есть вся цепочка для подписи и сертификатов с отметками времени может истечь (вместе с корневым сертификатом), и это не нарушит доверия. Сертификаты в цепочке можно отозвать. Единственное требование: если какой-либо сертификат отозван, время отзыва (оно получается из CRL) должно быть установлено на время после создания подписи (время подписи идентифицируется меткой времени). Предыдущее предложение означает, что должен быть подписанный CRL, чтобы доказать, что ни один сертификат не был отозван во время подписания.
Это причина того, что современные системы Windows поставляют корневые сертификаты с давно истекшим сроком действия. Они по-прежнему используются для проверки старых подписей и имеют отметки времени.
Некоторое время назад я написал сообщение в блоге, в котором более подробно объясняется тема: Цифровые подписи и отметки времени