commit 219333cf8303c49b118052d790e2327bc4e99452 Author: Your Name Date: Fri Oct 14 15:19:48 2022 +0000 init diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..1a9cbd2 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,7 @@ +FROM ubuntu:latest + +RUN apt-get update && apt-get install -y git unzip sudo wget build-essential pkg-config +RUN git clone https://github.com/kov-serg/get-cpcert.git && cd get-cpcert && chmod +x *.sh +RUN cd /get-cpcert/ && ./prepare.sh + +ENTRYPOINT ["bash"] \ No newline at end of file diff --git a/P12FromGostCSP.exe b/P12FromGostCSP.exe new file mode 100644 index 0000000..7d157ce Binary files /dev/null and b/P12FromGostCSP.exe differ diff --git a/README.txt b/README.txt new file mode 100644 index 0000000..57879dc --- /dev/null +++ b/README.txt @@ -0,0 +1,25 @@ +## Проблема +При конвертации сертификата СБИСа стандартными средствами openssl получаем вот такую ошибку: + +``` +139657983938816:error:06074079:digital envelope routines:EVP_PBE_CipherInit:unknown pbe algorithm:crypto/evp/evp_pbe.c:95:TYPE=1.2.840.113549.1.12.1.80 +139657983938816:error:23077073:PKCS12 routines:PKCS12_pbe_crypt:pkcs12 algor cipherinit error:crypto/pkcs12/p12_decr.c:41: +139657983938816:error:2306A075:PKCS12 routines:PKCS12_item_decrypt_d2i:pkcs12 pbe crypt error:crypto/pkcs12/p12_decr.c:94: +``` + +## Конвертирование сертификатов от СБИС в формат пригодный для других систем. + +Для конвертации нужно установить сертификат в систему и убедиться что им можно подписать документы через любой подписывающий сайт. + +После этого утилитой P12FromGostCSP.exe нужно экспортировать сертификат в pfx контейнер. + +Этот pfx подсовывается в докер и из него экспортируется приватный ключ. + +``` +openssl pkcs12 -in p12.pfx -out p12.pem +``` + + + + +git@github.com:monster1025/gost-openssl.git \ No newline at end of file diff --git a/docker-compose.yaml b/docker-compose.yaml new file mode 100644 index 0000000..2ebb253 --- /dev/null +++ b/docker-compose.yaml @@ -0,0 +1,6 @@ +version: '3.7' +services: + cert: + build: ./ + volumes: + - "./cert:/cert"