Форум КриптоПро
»
Средства криптографической защиты информации
»
КриптоПро CSP 5.0
»
StreamDecrypt и Decrypt падают в ошибку в КриптоПро ЭЦП Browser plug-in
Статус: Участник
Группы: Участники
Зарегистрирован: 15.12.2025(UTC) Сообщений: 10  Откуда: Екатеринбург Сказал(а) «Спасибо»: 3 раз Поблагодарили: 4 раз в 2 постах
|
Сейчас при передаче зашифрованного ЭС в base64 в Decrypt/StreamDecrypt - метод падает в ошибку. Внутренние логи мака показывают что процесс cryptsrv выкидывает такую ошибку - RecipientIdentifier is not supported: Код:
2025-12-15 14:38:37.642583+0500 0x10075d6 Default 0x0 47707 0 mcades: (librdrsup.4.dylib) <capi20>CryptMsgGetParam!(dwParamType = 36) Exception :'KeyIdentifier field as KeyTransRecipientInfo->RecipientIdentifier is not supported.' at file:'/dailybuildsbranches/CSP_5_0r4w/CSPbuild/CSP/capilite/CMSEnvelopedMessage.cpp' line:2281
2025-12-15 14:38:37.642792+0500 0x10075d6 Default 0x0 47707 0 nmcades: (librdrsup.4.dylib) <capi20>CryptDecryptMessage!failed: LastError = 0x57
Сам плагин в браузер выкидывает вот такую ошибку: Код:
{
"message": "The parameter is incorrect.\n (0x80070057)",
"requestid": 7,
"type": "error"
}
Какие варианты решения проблемы? На мобилке в нативном приложении с ПМБР от ЦБ - все ок, у них поддерживается RecipientIdentifier, да и сам идентификатор был выбран не просто так (на бэке тяжело будет это переделать). Код дешифрования можно сказать, что из доки Код:
// здесь в base64 приходит зашифрованная и сжатая xml, нужно ее сначала дешифровать, а потом расжать :) только после этого получится достать данные xml
async function decryptGOST(base64: string): Promise<string> {
// эт наши обвязки над cadesplugin, ни на что не влияет вообще
const envResult = await cadesExtensionBridgeService.createObjectAsync('CAdESCOM.CPEnvelopedData');
const env = envResult.unwrap();
await env.Decrypt(base64);
return env.Content;
}
Отредактировано пользователем 15 декабря 2025 г. 12:58:34(UTC)
| Причина: Не указана |
о как |
 1 пользователь поблагодарил АнтонФорумный за этот пост.
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 14,072   Сказал «Спасибо»: 612 раз Поблагодарили: 2370 раз в 1865 постах
|
Здравствуйте.
Приложите в тестовом файле строку (base64), что передаёте в decryptGOST(base64) |
|
|
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 15.12.2025(UTC) Сообщений: 10  Откуда: Екатеринбург Сказал(а) «Спасибо»: 3 раз Поблагодарили: 4 раз в 2 постах
|
Автор: Андрей *  Здравствуйте.
Приложите в тестовом файле строку (base64), что передаёте в decryptGOST(base64) Код:
MIIEowYJKoZIhvcNAQcDoIIElDCCBJACAQIxggHuMIH0AgECgBQbB/j6EDxQdDLFLPxLbnXJYSdxazAXBgkqhQMHAQEHAgEwCgYIKoUDBwEBBgEEgb8wgbwEMCPJCYEy012lMaAtrsYATMr0+IBUvlfzCnp5HQqWTJN/LOvdvSiGQq6ba0EPQVj/HDBmMB8GCCqFAwcBAQEBMBMGByqFAwICJAAGCCqFAwcBAQICA0MABEDa9bKif6+D//6DBW1VBdQBJ7mq00X/M+2dGqE/38WqtwgRGoRKowB5Py/IIYdQFFA2Zwn5WPRf8TYeTzaiLFOLBCBA38wycmbwDjtUvyu3xPmcrqtV1w5Y15rDkNdUAXc9VDCB9AIBAoAUo/j9sKf/GPI+eY5GBGzXzju4F4YwFwYJKoUDBwEBBwIBMAoGCCqFAwcBAQYBBIG/MIG8BDDMf/5x9TJL5SFCR5dCEK5AQJ3EY1X8bqbjDm/oXB8nTJLy1vAAWizXwxKYdKGqkm0wZjAfBggqhQMHAQEBATATBgcqhQMCAiQABggqhQMHAQECAgNDAARATGChSSh+z79Hlbv/8gUyfE6n6r6huULI38l92/F/mBkmemNmDD51yCq1eWHIcEThs65do/sZob12d81t6ccKWAQggPtxv7vsMjHjVgvgVGK/oyA2JNb10zVYWe+M5PI5yKswggJ0BgkqhkiG9w0BBwEwHwYJKoUDBwEBBQICMBIEEEveKXnSvhae+UMLIpjTsf2AggJEt2LC4wKbqkdkfo5p19IGdS1NOv36XrODW3tfKJZfA8lTE2Ccm90sZLjZw1PaaBr5Hc7XP4c0Q+cAKfXHu+t/a3Cfey+R8xYOSMTaS39FejsujVS1BUp/06utWZ7EOq0mFx5Smr5WsD75o7kbN74CW3Xpa78lA2QgqdvoLjTB6xd65ja8kPxEWIryRD9kmPa/QwyVLNmi8vBngKGTEBhdyT9a++hGUoqOOHQ6zXMs9cLpnaEHqn/itzYRLj3/XSz1Y2Ggg8NzAc9j+U2lvkSJKSU7XO3QnCVX5F8+jmiKKN5arXa3OL3PYt0JZqVHrSjiXdnKdBGfOgU2P7dtgchbxJLGhKoXqlp0EavZhV6PUvRRzOHg+yxQo84GX/61JPNaZjqcixLI19jo425rmpYoD7cnLNnTbS3gnftfZWBbWdyutxRbvq9u4L6DEY5xN59LhhBfqHaCxfwyd+WjqLgvMfWbXWrpHI75HUOhdRDmxPUfigPESm7YfRcNKOgcoxEMLMSnxSCr/qMjQJ/voYkHQMSSOtn0Jl2pTEsI3YJIiHU8Y2Ssn2uC9M5ePiujOFfjvW4HCmXz357sjGUADEkpr/w5BTDXvzhpHZFifYGqxYWYSf7R762I4mXrc9zxWEb37I423iG/LxkxM/Q7jwNGl2dW/87+k26u5W5mx4c7V2ubDpDjl4K6LdJ7G+DaycRmLHnK/WcIuNIQGS+bP9KH6B5XXKAIRV4/LhZdln503G0ZFmAv8/4HruBPi7q8EIGfNijKp6EhMB8GCSqFAwcBAAYBATESBBDfWoi52Ne0r5un+wmrN9Tq
|
о как |
|
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 14,072   Сказал «Спасибо»: 612 раз Поблагодарили: 2370 раз в 1865 постах
|
Алгоритм шифрования: ГОСТ Р 34.12-2015 Кузнечик (CTR-ACPKM) с имитовставкой, OID: 1.2.643.7.1.1.5.2.2 2 сертификата с серийником 00? Цитата: у них поддерживается RecipientIdentifier, да и сам идентификатор был выбран не просто так
Но при этом не проверялась работа с другими решениями (в данном случае - через плагин)... так? |
|
|
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 15.12.2025(UTC) Сообщений: 10  Откуда: Екатеринбург Сказал(а) «Спасибо»: 3 раз Поблагодарили: 4 раз в 2 постах
|
Автор: Андрей *  Алгоритм шифрования: ГОСТ Р 34.12-2015 Кузнечик (CTR-ACPKM) с имитовставкой, OID: 1.2.643.7.1.1.5.2.2 2 сертификата с серийником 00? Цитата: у них поддерживается RecipientIdentifier, да и сам идентификатор был выбран не просто так
Но при этом не проверялась работа с другими решениями (в данном случае - через плагин)... так? Цитата:Алгоритм шифрования: ГОСТ Р 34.12-2015 Кузнечик (CTR-ACPKM) с имитовставкой, OID: 1.2.643.7.1.1.5.2.2 Да Цитата:2 сертификата с серийником 00? Да, все так, только серийники не нули там, а 4060xxxxx Цитата:Но при этом не проверялась работа с другими решениями (в данном случае - через плагин)... так? Получается так... Сначала делалось нативное приложение с ПМБР, а теперь пришло время веба и встряли на этом этапе (дешифровки данных с бэка) При этом забавно, но зашифровались на клиенте данные корректно для бэка и он смог потом расшифровать их...А вот я уже с бэка полученные данные не могу расшифровать Отредактировано пользователем 15 декабря 2025 г. 15:03:55(UTC)
| Причина: Не указана |
о как |
|
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 14,072   Сказал «Спасибо»: 612 раз Поблагодарили: 2370 раз в 1865 постах
|
Потому что серверная часть умеет клиентский вариант обрабатывать... А по идее, должна отказывать (не тот вариант)?
|
|
|
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 15.12.2025(UTC) Сообщений: 10  Откуда: Екатеринбург Сказал(а) «Спасибо»: 3 раз Поблагодарили: 4 раз в 2 постах
|
Автор: Андрей *  Потому что серверная часть умеет клиентский вариант обрабатывать... А по идее, должна отказывать (не тот вариант)?
Да нет, ребята говорят что клиентский вариант веба на 100% повторяет мобильный. Само шифрование тоже можно сказать почти полностью из документации....Только передача алгоритма из техподдержки (в доке не нашел как добиться кузнечика) Код:
async function encryptGOST(base64: string, thumbprintEncrypt: Array<string>) {
const certs: Array<TCertificate> = [];
for (const thumbprint of thumbprintEncrypt) {
const cert = await getCertificate(thumbprint);
certs.push(cert);
}
const envResult = await cadesExtensionBridgeService.createObjectAsync('CAdESCOM.CPEnvelopedData');
if (envResult.isErr()) {
throw new Error(envResult.unwrap().cryptoProInternalError.message);
}
const env = envResult.unwrap();
const oAlgorithm = await env.Algorithm;
await oAlgorithm.propset_Name(CADES_PLUGIN_CONSTS.CADESCOM_ENCRYPTION_ALGORITHM_GOST_KUZNYECHIK_OMAC);
const recipients = await env.Recipients;
for (const cert of certs) {
await recipients.Add(cert);
}
return await env.StreamEncrypt(base64);
}
Отредактировано пользователем 15 декабря 2025 г. 15:13:19(UTC)
| Причина: Не указана |
о как |
|
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 02.11.2017(UTC) Сообщений: 69  Сказал «Спасибо»: 14 раз Поблагодарили: 31 раз в 28 постах
|
Здравствуйте! Видимо, весь сыр-бор из-за вот этой ошибки, с неё всё начинается: <capi20>CryptMsgGetParam!(dwParamType = 36) Exception :'KeyIdentifier field as KeyTransRecipientInfo->RecipientIdentifier is not supported.' at file:'/dailybuildsbranches/CSP_5_0r4w/CSPbuild/CSP/capilite/CMSEnvelopedMessage.cpp' line:2281 По иронии судьбы, независимо от вашей жалобы мы починили её 10 дней назад в CSP в рамках запроса CPCSP-15545. Во всех последующих релизах этой ошибки быть не должно. По идентификатору запроса можно отслеживать наличие решения в конкретном релизе. Спасибо за неравнодушие вам! Если что не работает, то жалуйтесь пожалуйста, будем чинить! Отредактировано пользователем 15 декабря 2025 г. 16:05:24(UTC)
| Причина: уточнил, что починили в CSP |
|
 1 пользователь поблагодарил Зубов Иван за этот пост.
|
nickm оставлено 15.12.2025(UTC)
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 15.12.2025(UTC) Сообщений: 10  Откуда: Екатеринбург Сказал(а) «Спасибо»: 3 раз Поблагодарили: 4 раз в 2 постах
|
Автор: Зубов Иван  Здравствуйте!
Видимо, весь сыр-бор из-за вот этой ошибки, с неё всё начинается: <capi20>CryptMsgGetParam!(dwParamType = 36) Exception :'KeyIdentifier field as KeyTransRecipientInfo->RecipientIdentifier is not supported.' at file:'/dailybuildsbranches/CSP_5_0r4w/CSPbuild/CSP/capilite/CMSEnvelopedMessage.cpp' line:2281
По иронии судьбы, независимо от вашей жалобы мы починили её 10 дней назад в рамках запроса CPCSP-15545. Во всех последующих релизах этой ошибки быть не должно. По идентификатору запроса можно отслеживать наличие решения в конкретном релизе. Спасибо за неравнодушие вам! Если что не работает, то жалуйтесь пожалуйста, будем чинить! Подскажите пожалуйста, могу ли я скачать где-то альфа версию? У меня сейчас: Версия плагина: 2.0.15500 Версия криптопровайдера: 5.0.13600 |
о как |
|
|
|
|
|
Статус: Сотрудник
Группы: Администраторы, Участники Зарегистрирован: 16.04.2008(UTC) Сообщений: 1,577
Сказал(а) «Спасибо»: 46 раз Поблагодарили: 662 раз в 457 постах
|
Автор: АнтонФорумный  Подскажите пожалуйста, могу ли я скачать где-то альфа версию? Скинул в личку. |
|
|
|
|
|
|
Форум КриптоПро
»
Средства криптографической защиты информации
»
КриптоПро CSP 5.0
»
StreamDecrypt и Decrypt падают в ошибку в КриптоПро ЭЦП Browser plug-in
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close