Создайте сертификат с QCStatements, используя OpenSSL - PullRequest
2 голосов
/ 26 июня 2019

Я хочу создать фиктивный CA и установить расширение QCStatements, но я не могу найти никакой информации о настройке его с помощью OpenSSL. Я искал, я нашел несколько старых тем, где люди искали эту информацию, но никто не ответил. Возможно ли установить QCStatements с использованием openSSL?

Ответы [ 2 ]

2 голосов
/ 12 июля 2019

Возможно с чистым openssl.Необходимо создать конфигурацию для запроса на подпись со всей необходимой qcStatements информацией, а затем спеть сертификат, копирующий запрошенное расширение.

Пример файла конфигурации

[req]
distinguished_name = req_distinguished_name
req_extensions = qcStatements

[req_distinguished_name]

[qcStatements]
1.3.6.1.5.5.7.1.3=ASN1:SEQUENCE:qcStatement

[qcStatement]
etsiQcsCompliance=SEQUENCE:etsiQcsCompliance
qcs-QcPDS=SEQUENCE:qcs-QcPDS
id-qc-statement=SEQUENCE:id-qc-statement
qcs-QcType=SEQUENCE:qcs-QcType
[etsiQcsCompliance]
statementId=OID:0.4.0.1862.1.1
[qcs-QcPDS]
statementId=OID:0.4.0.1862.1.5
QcPDS-List=SEQUENCE:QcPDS-List
[QcPDS-List]
QcPDS1=SEQUENCE:QcPDS1
[QcPDS1]
url=IA5STRING:https://example.org/pkidisclosure
description=PRINTABLESTRING:example

[id-qc-statement]
statementId=OID:0.4.0.19495.2
statementInfo=SEQUENCE:id-qc-statement-Info
[id-qc-statement-Info]
rolesOfPSP=SEQUENCE:rolesOfPSP
nCAName=UTF8String:Dummy Financial Supervision Authority
nCAId=UTF8String:XX-DFSA
[rolesOfPSP]
PSP_AI=SEQUENCE:PSP_AI
PSP_AS=SEQUENCE:PSP_AS
PSP_PI=SEQUENCE:PSP_PI
PSP_IC=SEQUENCE:PSP_IC
[PSP_AI]
roleOfPspOid=OID:0.4.0.19495.1.3
roleOfPspName=UTF8String:PSP_AI
[PSP_AS]
roleOfPspOid=OID:0.4.0.19495.1.1
roleOfPspName=UTF8String:PSP_AS
[PSP_PI]
roleOfPspOid=OID:0.4.0.19495.1.2
roleOfPspName=UTF8String:PSP_PI
[PSP_IC]
roleOfPspOid=OID:0.4.0.19495.1.4
roleOfPspName=UTF8String:PSP_IC
[qcs-QcType]
statementId=OID:0.4.0.1862.1.6
statementInfo=SEQUENCE:qcs-QcType-Info
[qcs-QcType-Info]
qct-esign=OID:0.4.0.1862.1.6.1
qct-eseal=OID:0.4.0.1862.1.6.2
qct-web=OID:0.4.0.1862.1.6.3

Необходимо применить конфигурацию кзапрос на подпись

openssl req -new -key dummy.key -out dummy.csr -subj /C=XX/CN=dummy -config qcstatements.conf

, а затем подписать с возможностью копирования расширений из запроса в файл конфигурации CA.

copy_extensions = copy
0 голосов
/ 05 июля 2019

Если кто-то столкнется с той же проблемой, я найду решение. Я создал сертификаты с помощью qcStatement, используя приложение с открытым исходным кодом ejbca app . В этом приложении есть раздел qcStatement: enter image description here

...