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