Первичный ключ для сертификата X509 KVStore - PullRequest
0 голосов
/ 22 апреля 2020

Я собираюсь хранить root и промежуточные сертификаты (из разных ЦС) в каком-то KVStore.

Проблема: у меня есть листовой сертификат (только), который я хочу проверить на основе сертификатов из мой магазин. Листовой сертификат имеет Authority Key Identifier == Subject Key Identifier родителя, который уже должен присутствовать в KVStore.

Вопрос: Что я должен использовать в качестве ключа в KVStore?

1. Subject Key Identifier: certificate или он может быть одинаковым в пределах одного ЦС или разных ЦС. что насчет обновления или ротации ключей?

2. Subject Key Identifier + Subject DN: certificate - не уверен, что есть разница с первым.

3. Subject Key Identifier: список [certificate ]

4. Serial Number + Issuer является уникальным, но листовой сертификат не содержит эту дату о родителе.

1 Ответ

0 голосов
/ 22 апреля 2020

Subject Key Identifier - это значение га sh по сравнению с сертифицированным ключом publi c. Таким образом, в зависимости от политики ротации ключей CA это может измениться или не измениться при обновлении сертификата. Поэтому не гарантируется, что отображение SKI:certificate является уникальным.

Объединенный индекс, как в варианте 2, не меняет этого.

Вариант 4 должен быть исключен, поскольку дочерний сертификат не знать эмитента и серийный номер его родителя.

Вариант 3 может быть допустимым решением в большинстве случаев, однако расширение Authority Key Identifier не является обязательным для сертификатов X.509. Поэтому вам, возможно, придется иметь дело с листовыми сертификатами без расширения AKI.

Обычно это приводит к варианту 5: Subject DN: list[certificate]. Предпочтительно с отсортированным списком, который имеет наиболее вероятный сертификат CA сверху.

Однако, если ваше приложение имеет дело только с листовыми сертификатами с расширением AKI, и все сертификаты CA требуют ротации ключей во время обновления, вариант 1 может быть Отметьте более производительный. В этом случае я бы также сохранил запись Subject DN: list[Subject Key Identifier].

...