Необходимо сгенерировать цифровую подпись в PHP, которую потом можно будет проверить в C++ приложении с CryptoPP. Проблему совместомости файлов ключей уже решил, тоже не сразу. Но сейчас и PHP и CryptoPP могут корректно читать одни и те же закрытые и открытые ключи. Но подпись, которую возвращает openssl_sign в PHP не проходит проверку в CryptoPP. В CryptoPP использую DSA2<SHA256>. В CryptoPP подпись всегда 256 бит. А в PHP длина подписи отличается. Если сделать наоборот - проверить в PHP подпись от CryptoPP, то PHP сообщает о неверной структуре ASN.1 в подписи. То есть openss_sign возвращает не чисто подпись, а ASN.1 структуру с ней. ПРи этом первые байты не менятся, но начиная с 3 примерно - меняются. И суда по струкутуре в начале подписи PHP идут какие-то параметры.
Вопрос собственно: как сделать так, чтобы подпись PHP проверить в CryptoPP. Или подвопрос: что за структура у подписи PHP?