Child pages
  • Цифровая подпись

Skip to end of metadata
Go to start of metadata

Включение подписи для документов.

$conf{DOCS_CERT_CMD}='xxx';Команда для подписи
$conf{DOCS_STORE_DIR}='/usr/abills/Abills/templates/Docs/';Каталог для сохранения файлов документов и сертификатов. При включении $conf{DOCS_CERT_CMD} файлы перестают создаваться «на лету», они после создания записываются на диск и потом повторно читаются

Создание тестового сертификата

openssl req -newkey gost2001 -pkeyopt paramset:A -passout pass:cert_password -subj "/C=UA/ST=Kiev/L=Kiev/O=organization/CN=sample.ru/emailAddress=user@sample.com" -keyout priv.pem -out req.csr

На выходе: закрытый ключ priv.pem сертификат в файле req.csr.

Подпись сертификата:

$ openssl x509 -req -days 365 -in req.csr -signkey priv.pem -out pub.crt

Получение публичного ключа из сертификата:

$ openssl x509 -in pub.crt -pubkey -noout > pub.pem

Подпись документа в pdf :

$ openssl smime -sign -signer pub.crt -inkey priv.pem -engine gost -binary -noattr -outform DER -passin pass:cert_password -in act_1.pdf -out act_1.pdf.sig

Пример для подписи $conf{DOCS_CERT_CMD}

$conf{DOCS_CERT_CMD}="openssl smime -sign -signer /usr/abills/Certs/pub.crt -inkey /usr/abills/Certs/priv.pem -engine gost   -binary -passin pass:your_password -noattr -outform DER  -in %INPUT_FILE% -out %CERT_FILE%";   
  • No labels