Що відбувається з сертифікатами кодових знаків, коли закінчується термін кореневого сертифіката CA?


9

На сьогодні для мене зрозуміло: якщо термін дії сертифікату коду закінчується, підписаний код буде перевірений / прийнятий у випадку, якщо він був підписаний часовою маркою. Якщо ні, термін дії підписаного коду закінчується.

Але що станеться, якщо мій КА закінчиться термін дії (кореневий ЦА, таким чином, видаючи ЦС)?

  • Чи все-таки буде прийнятий код, якщо він буде маркований часом?
  • Повинні чи втрачені сертифікати Root і видача сертифікатів сертифікатів, як і раніше (наприклад, у надійному магазині сертифікатів root ca)? Це моє припущення, незважаючи на те, що КА може бути знижений, клієнт, який виконує підписаний, все ж повинен довіряти ЦЗ? Інакше ланцюжок довіри буде розірваний, правда?
  • Чи не виникне проблем із відсутністю CRL або AIA?

Відповіді:


12

Але що станеться, якщо мій КА закінчиться термін дії (кореневий ЦА, таким чином, видаючи ЦС)?

Буквально нічого. Пояснимо це трохи детальніше.

Якщо підпис не позначений часом, підпис дійсний до тих пір, як:

  • дані не підроблені
  • сертифікат підпису дійсний
  • жоден сертифікат у ланцюжку не відкликаний
  • кореневому сертифікату довіряють

Після того, як термін дії підпису закінчився, відкликаний або стає недійсним тим чи іншим чином, підпис вважається недійсним. Простий і простий.

Метою часових позначок цифрового підпису є надання розширеної довіри вмісту, що підписується. Підписи сертифікатів дійсні протягом короткого періоду часу, а основні параметри довіри не підходять для довгострокового (можливо, архівованого) підписання. Зазвичай (без часових позначок) вам доведеться відтворювати підпис кожного разу, коли сертифікат підпису поновлюється. Це спосіб нікуди.

Додавши часову позначку до цифрових підписів, умови довіри змінюються на такий список:

  • дані не підроблені
  • Сертифікат підпису * був * час дійсний під час підписання: час підписання - в межах терміну підписання
  • Жоден сертифікат не був відкликаний * до * генерації підпису
  • обидва, сертифікати для підписання та позначення часових позначок ланцюжком підходять до надійних кореневих ЦС (незалежно від їх терміну дії, просто повинні бути в магазині довіри).

Що тут змінилося: підпис залишається чинним після закінчення терміну дії сертифіката. Тобто, весь ланцюжок сертифікатів для підписання та часових позначок може закінчитися (разом із кореневим сертифікатом), і він не порушить довіру. Сертифікати в ланцюжку можуть бути відкликані. Єдина вимога: якщо будь-який сертифікат відкликаний, час відкликання (він отриманий від CRL) повинен бути встановлений на час після створення підпису (час підписання визначається часовою позначкою). Попереднє речення означає, що повинен бути підписаний CRL, який підтверджує, що жоден сертифікат не був відкликаний під час підписання.

З цієї причини сучасні системи Windows постачають кореневі сертифікати давно закінчених термінів. Вони все ще використовуються для перевірки старих підписів, на які відмічаються часові позначки.

Нещодавно я написав допис у блозі, де детальніше пояснюється тема: Цифрові підписи та часові позначки


Ваша публікація в блозі - це дуже гарна стаття на цю тему!
ThoriumBR

Я вважав цю тему дуже заплутаною для IT Pro (та розробників) і намагався розібратися в публікації в блозі.
Crypt32

Але справа з CRL мені не зовсім зрозуміла. Тож мені все-таки потрібні (останній) ліцензійний рейтинг CRL з минулими ЦТ?
dr_pepper285

Так, CRL потрібні. Останнє не потрібно, воно повинно бути опубліковано ( ThisUpdateполе) після підписання. Цей CRL може довести, що жоден сертифікат в обох ланцюгах (підпис та часова марка) не був відкликаний під час підписання.
Crypt32
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.