Деревья аннулирования сертификатов

Деревья аннулирования сертификатов

Деревья аннулирования сертификатов, ДАС (Certificate Revocation Trees - CRTs) - это технология аннулирования, разработанная американской компанией Valicert. Деревья ДАС базируются на хэш-деревьях Merkle, каждое дерево позволяет отобразить всю известную информацию об аннулировании, релевантную некоторому множеству PKI-сообществ [83].

Чтобы создать хэш-дерево, генерируется последовательность выражений для каждого УЦ, входящего в данное множество. Каждая последовательность ранжируется по возрастанию серийных номеров аннулированных сертификатов данного УЦ. Выражение может иметь, например, следующий вид: УЦ1 = УЦn и 1155 < X < 1901, где X - серийный номер сертификата, изданного УЦ1. Это означает, что:

1 сертификат с серийным номером 1155, изданный УЦ1, был аннулирован;

2 сертификаты, изданные УЦ1, с серийными номерами от 1156 до 1900 (включительно) не аннулированы.

Выражения для всех аннулированных сертификатов каждого УЦ упорядочиваются, а затем ранжируется совокупность выражений для всех удостоверяющих центров рассматриваемого множества PKI-сообществ. Полный набор математических выражений описывает все аннулированные сертификаты всех удостоверяющих центров данного множества, которые в настоящий момент известны субъекту, генерирующему хэш-дерево.

Пример 9.2. Рассмотрим дерево аннулирования сертификатов, представленное на рис. 9.3 [44]. Крайние слева узлы представляют хэш-коды математических выражений, которые известны субъекту, генерирующему дерево. Как показано стрелками, каждая смежная пара узлов затем объединяется в один узел. Если пара существует, два узла объединяются и хэшируются. Результат хэширования - это значение нового сформированного узла справа. Если пары нет (когда на данном уровне имеется нечетное количество узлов), то непарный узел просто перемещается на следующий уровень дерева (как показано узлами N2,2 и N3,1 на рис. 9.3). Этот процесс повторяется до тех пор, пока не будет вычислен финальный "корень" (самый правый узел на рис. 9.3). Значение хэш-кода последнего узла в целях обеспечения целостности и аутентичности заверяется цифровой подписью.

Пример дерева аннулирования сертификатов

Рис. 9.3.  Пример дерева аннулирования сертификатов

Чтобы определить, был ли сертификат аннулирован, доверяющая сторона проверяет, превышает ли серийный номер сертификата нижнюю границу ближайшего по значению нестрогого неравенства из последовательности выражений для данного УЦ. Если это так, то сертификат не был аннулирован, если нет - то был. Чтобы убедиться в том, что целостность не была нарушена, доверяющая сторона должна реконструировать корневой узел и сравнить его хэш-код со значением заверенного цифровой подписью хэш-кода корневого узла. Для этого субъект, сгенерировавший дерево, предоставляет доверяющей стороне информацию о выражении, ближайшем к серийному номеру проверяемого сертификата, значения хэш-кодов всех поддерживающих узлов и заверенный цифровой подписью хэш-код корневого узла. Генерация ДАС может выполняться уполномоченным субъектом внутри рассматриваемого множества PKI-сообществ или доверенной третьей стороной. Главное преимущество деревьев ДАС заключается в эффективном представлении большого объема информации об аннулировании. Фактически объем ДАС составляет log2N, где N - число аннулированных сертификатов.