Тема: Неверный тип сообщения в формате PKCS#7 (код: 0xE0700022)
Разработчики нашей организации сделали попытку соединить Java c Сигнатурой
посредством своей DLL (интерфейс вроде бы spki1) .
в Java выполняется код который возвращает ЭП.
System.load(dllPath);
VCERT_Initialize("My",0);
....
outString = VCERT_SignMem(xml);
if(outString.length()==0){
throw new Exception("Подписание прошло с ошибкой, подпись имеет нулевую длину");
}
Полученные файлы не проходят проверку в АРМ КБР.
Ошибка:Неверный тип сообщения в формате PKCS#7 (код: 0xE0700022)
В АРМ КБР было выполнено преобразование файлов УФЭБС для АРМ РКС Сигнатуры.
Проверка закончилась успешно
Отделенная ЭП в формате PKCS#7:
pkcs7-signedData cryptographic message:
Версия: 2 (0x1)
Алгоритмы Хэш-функции:
Хэш ГОСТ Р 34.11-2012
Количество ЭП: 1
Данные о Создателе ЭП:
Издатель: CN=CA,OU=UBZI,O=CBR,ST=52,C=RU
Серийный Номер: 40:50:14:C0:56:D5:50:FD:41:7B:78:AC:59:B6:26:F4
Аутентифицируемые Атрибуты:
Тип данных :pkcs7-data
Время создания ЭП :16 Окт 2017 10:03:36 GMT
Значение хэш-функции :
B3:EF:A5:56:3D:F2:9C:85:A2:F6:EF:CE:25:45:B1:A6:4C:F0:
06:E6:CD:15:43:3C:1F:B0:02:DB:03:ED:FF:B5
Алгоритм ЭП: Подпись ГОСТ Р 34.10-2012
DA:56:C3:BF:43:BB:E5:AE:17:B2:C6:47:7F:E2:66:96:DC:F8:
08:CE:AB:23:06:96:E2:1A:4E:C2:4B:47:28:16:0F:E9:B0:0F:
84:38:4A:F8:7F:2C:F4:FD:22:35:E7:DF:A3:FE:9C:32:84:BE:
58:96:BC:A8:3E:B3:B9:5D:3C:C9
Общий результат:
Результат проверки: Подпись верна.
при анализе подписи было выяснено что подпись на несколько байт длинее обычной (полученной spki1utl или PKI.VCERT)
MIIBaQYJKoZIhvcNAQcCoIIBWjCCAVYCAQExDjAMBggqhQMHAQECAgUAMBMGCSqG
SIb3DQEHAaAGBASAANUCMYIBKjCCASYCAQEwWDBEMQswCQYDVQQGEwJSVTELMAkG
A1UECBMCNTIxDDAKBgNVBAoTA0NCUjENMAsGA1UECxMEVUJaSTELMAkGA1UEAxMC
Q0ECEEBQFMBW1VD9QXt4rFm2JvQwDAYIKoUDBwEBAgIFAKBpMBgGCSqGSIb3DQEJ
AzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTE3MTAxNjEwMDgyNlowLwYJ
KoZIhvcNAQkEMSIEIMH3444QED8ZNXNrXQZOHhfxj0PJ1dFN0xgrdex3kJ21MAwG
CCqFAwcBAQEBBQAEQEUU/73Bb1NHFGnYDNHwNlVd0rGV9WzzBT/37aFhiNPp8P3G
aK7NUeuUxZUPd2AY7ECwcX6CNXqBUQF5Vdyt5Oo=
Анализ ASN.1 показал что почему то заполнен SignedData/contentInfo/content
SignedData/contentInfo/contentType = 1.2.840.113549.1.7.1
Вопроса два:
1. Как он смог заполнится?
2. Почему АРМ РКС успешно проверил эту подпись?