Добрый день (извините если не туда).
Ест XML и его подпись в бинарном формате (ГОСТовская).перерыл кучу всего никак не могу проверить валидность подписи и этого xml.
вот так получил подпись в PEM:
openssl pkcs7 -inform DER -outform PEM -in c1.bin -out c1.pem
файл вот такого формата
-----BEGIN PKCS7-----
MIIaWAYJKoZIhvcNAQcCoIIaSTCCGkUCAQExDDAKBgYqhQMCAgkFADALBgkqhkiG
........
Et8zFAMIHR1AGZWK9+dSgUdQZhtbw9/6zkDqGg==
-----END PKCS7-----
из нее вытащил сертификат:
openssl pkcs7 -print_certs -in c1.pem -out c1.cer
формат файла вот такого вида:
subject=emailAddress = ...........
issuer=emailAddress = ...........
-----BEGIN CERTIFICATE-----
MIIHTDCCBvugAwIBAgIKMvG12QAAAAABhDAIBgYqhQMCAgMwggFKMR4wHAYJKoZI
.................
zVOySmH5/HRjkWIh5NIN6JrcNqf0I0bhOKpilRDnWpycwbO0ElQ6baLtZyzphVzz
-----END CERTIFICATE-----
subject=street = .......
issuer=emailAddress = .......
-----BEGIN CERTIFICATE-----
MIIOODCCDeegAwIBAgIRAOkZuenyQBag6BFvjoo4D0UwCAYGKoUDAgIDMIIBhzEi
..........
BroqlhydyBtkneXpe17WYrwrgqIOYovMLpxzZJicDkwz3a5dPqdZrrCXjeY=
-----END CERTIFICATE-----
из сертификата получил публичный ключ:
openssl x509 -pubkey -noout -in c1.cer > c1_pub.pem
вроде все правильно ключ имеет вид
-----BEGIN PUBLIC KEY-----
MGMwHAYGKoUDAgITMBIGByqFAwICIwEGByqFAwICHgEDQwAEQMbwzX/8iDw7NXqB
..............
0QT32M0=
-----END PUBLIC KEY-----
осталось проверить вот этой командой - в которой публичный ключ, подпись и файл
openssl dgst -engine gost -verify c1_pub.pem -signature c1.bin c1.xml
но результат
engine "gost" set.
Verification Failure
1
пытался другими командами проверить
например так
openssl smime -verify -in c1.bin -noverify -inform der -content c1.xml
но просто выводит на экран xml
без -engine gost
openssl dgst -verify c1_pub.pem -signature c1.bin c1.xml
просто пишет
Verification Failure
1
ощущение что я или что-то не так делаю или не доделываю какой-то этап.