Поддерживает ли asn1crypto или ocspbuilder запросы статуса OCSP с несколькими сертификатами? - PullRequest
0 голосов
/ 11 ноября 2018

Создание в Python службы OCSP, которая поддерживает, например, такие запросы: openssl ocsp -issuer ca-cert.pem -cert 1.pem -cert 2.pem -cert 3.pem -no_nonce -url http://localhost/ocsp -noverify Я вижу, что список запросов OCSP заполнен 3 сертификатами, но не может получить ответ для 3 сертификатов. Глядя на исходный код asyn1crypto и ocspbuilder (ниже), кажется, что поддерживается только один запрос cert:

response_data = ocsp.ResponseData({
        'responder_id': ocsp.ResponderId(name='by_key', value=responder_key_hash),
        'produced_at': produced_at,
        'responses': [
            {
                'cert_id': {
                    'hash_algorithm': {
                        'algorithm': self._key_hash_algo
                    },
                    'issuer_name_hash': getattr(self._certificate.issuer, self._key_hash_algo),
                    'issuer_key_hash': getattr(issuer.public_key, self._key_hash_algo),
                    'serial_number': self._certificate.serial_number,
                },
                'cert_status': cert_status,
                'this_update': self._this_update,
                'next_update': self._next_update,
                'single_extensions': single_response_extensions
            }
        ],
        'response_extensions': response_data_extensions
    })

Кажется, что список ответов уже заполнен только одним элементом. Любые идеи или указатели на практические реализации респондента Python OCSP, который поддерживает несколько запрошенных сертификатов?

1 Ответ

0 голосов
/ 13 ноября 2018

Итак, чтобы ответить на мой собственный вопрос в интересах других:

  • asn1crypto поддерживает несколько сертификатов
  • ocspbuilder нет, поэтому изменено для поддержки нескольких сертификатов и соответствия RFC6960 в ответе OCSP, код здесь: https://github.com/andrea-f/ocspbuilder
...