Форум КриптоПро
»
Средства криптографической защиты информации
»
КриптоПро CSP 5.0
»
Ошибка подписи хэша при использовании плагина и кастомного алгоритма хэша
|
НаталияНаталия |
|
|
Статус: Участник Группы: Участники Сказал(а) «Спасибо»: 4 раз |
Добрый день. Планировалось подписание в браузере с использованием КриптоПро плагина, однако если выставить алогоритм шифрования, отличный от CADESCOM_HASH_ALGORITHM_SHA1, возникает ошибка: Версия плагина: 2.0.14071 Версия криптопровайдера: 5.0.10874 Код:
Может кто-то подсказать как подписать хэш? Отредактировано пользователем 20 июля 2020 г. 19:04:19(UTC) |
![]() |
|
|
Андрей * |
|
|
Статус: Сотрудник Группы: Участники Сказал «Спасибо»: 451 раз |
Здравствуйте. В сертификате — открый ключ по какому алгоритму? |
|
Техническую поддержку оказываем тут |
|
![]() |
WWW |
|
Андрей * |
|
|
Статус: Сотрудник Группы: Участники Сказал «Спасибо»: 451 раз |
Цитата: .Find(CAPICOM_CERTIFICATE_FIND_SUBJECT_NAME, certSubjectName) А если у меня 2 сертификата и попадётся первый с rsa…? |
|
Техническую поддержку оказываем тут |
|
![]() |
WWW |
|
НаталияНаталия |
|
|
Статус: Участник Группы: Участники Сказал(а) «Спасибо»: 4 раз |
Автор: Андрей * Цитата: .Find(CAPICOM_CERTIFICATE_FIND_SUBJECT_NAME, certSubjectName) А если у меня 2 сертификата и попадётся первый с rsa…? Это тестовый пример, сертификат точно один Отредактировано пользователем 20 июля 2020 г. 19:26:12(UTC) |
![]() |
|
|
Андрей * |
|
|
Статус: Сотрудник Группы: Участники Сказал «Спасибо»: 451 раз |
Автор: НаталияНаталия Автор: Андрей * Цитата: .Find(CAPICOM_CERTIFICATE_FIND_SUBJECT_NAME, certSubjectName) А если у меня 2 сертификата и попадётся первый с rsa…? Это тестовый пример, сертификат точно один. Алгоритм ключа: RSA Разве это как-то влияет на то, каким образом у меня вычислен хэш? Конечно, Подпись вычисляется с учётом хеша — его значения и алгоритма. |
|
Техническую поддержку оказываем тут |
|
![]() |
WWW |
|
Андрей * |
|
|
Статус: Сотрудник Группы: Участники Сказал «Спасибо»: 451 раз |
Так что с сертификатомалгоритмом? Делайте правильно, пример будет работать. |
|
Техническую поддержку оказываем тут |
|
![]() |
WWW |
|
НаталияНаталия |
|
|
Статус: Участник Группы: Участники Сказал(а) «Спасибо»: 4 раз |
Автор: Андрей * Конечно, Подпись вычисляется с учётом хеша — его значения и алгоритма. Спасибо! Код:
и подписываю ключом с RSA, все равно возникает та же ошибка. |
![]() |
|
|
Андрей * |
|
|
Статус: Сотрудник Группы: Участники Сказал «Спасибо»: 451 раз |
На тестовой странице — работает подписание этим сертификатом? |
|
Техническую поддержку оказываем тут |
|
![]() |
WWW |
|
Андрей * |
|
|
Статус: Сотрудник Группы: Участники Сказал «Спасибо»: 451 раз |
Автор: НаталияНаталия Автор: Андрей * Конечно, Подпись вычисляется с учётом хеша — его значения и алгоритма. Спасибо! Код:
и подписываю ключом с RSA, все равно возникает та же ошибка. RSA сертификат и алгоритм хеширования MD5… ? Почему бы для начала не получить тестовый сертификат по ГОСТ 2012? |
|
Техническую поддержку оказываем тут |
|
![]() |
WWW |
|
|
НаталияНаталия
оставлено 20.07.2020(UTC) |
|
Андрей * |
|
|
Статус: Сотрудник Группы: Участники Сказал «Спасибо»: 451 раз |
+ sHashValue — в каком виде? Подпись файла с использованием FileAPI и чтением файла по частям |
|
Техническую поддержку оказываем тут |
|
![]() |
WWW |
| Пользователи, просматривающие эту тему |
|
Guest |
Форум КриптоПро
»
Средства криптографической защиты информации
»
КриптоПро CSP 5.0
»
Ошибка подписи хэша при использовании плагина и кастомного алгоритма хэша
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Добрый день, @vgoma.
Спасибо за разработанную библиотеку.
Есть проблемы с подписанием XML отделенной подписью.
Окружение:
OS Astra Linux (Smolensk) 1.6 64bit
Browser Firefox 72.0.1 (64bit)
cadesVersion 2.0.13642
cspVersion 5.0.11998
Воспроизведение:
- Получаем ArrayBuffer из XML файла
- Передаем ArrayBuffer в функцию createHash
- Полученный хеш и отпечаток ЭЦП передаем в функцию createDetachedSignature
Результат:
Подпись не создана, в консоли браузера ошибка:
«The parameter is incorrect (0x80070057)»
Ожидаемый результат:
Получаем подпись в формате PKCS7
Дополнительная информация:
Пробовали подписывать на MacOS 10.15.4 на cadesVersion 2.0.13642 (сертифицированная), получаем ошибку.
Пробовали подписывать на MacOS 10.15.4 на cadesVersion 2.0.14071, ошибки нет, подпись работает.
Версии CSP на MacOS и на Astra Linux идентичные.
Возможно Вы сталкивались с похожими проблемами, что можно предпринять в данном случае ? Не уверен что мы можем использовать версию 2.0.14071 т.к. она не сертифицирована.
Готов предоставить любую дополнительную информацию которая может потребоваться для разрешения данной проблемы.
Заранее благодарен.
С Уважением.
UPD:
Пробовали на версии CSP «5.0.11944», тоже получаем ошибку.
/Носитель ключевого контейнера не поддерживается данной лицензией (0x80070057)
Носитель ключевого контейнера не поддерживается данной лицензией (0x80070057)
Текст ошибки:
Носитель ключевого контейнера не поддерживается данной лицензией (0x80070057)
Как выглядит ошибка:

Решение
В сборках, выпущенных ранее, для того чтобы КриптоАРМ мог извлечь сертификат из облачного хранилища, ему нужна была дополнительная лицензия на модуль поддержки КриптоПро DSS. Ошибка “Носитель ключевого контейнера не поддерживается данной лицензией (0x80070057)” возникает в том случае, если лицензии нет.
В КриптоАРМе сборки 5.4.4.4 отдельная лицензия на модуль КриптоПро DSS не нужна, в связи с этим она была снята с продаж. Поддержка модуля КриптоПро DSS включена в состав лицензии на версию КриптоАРМ Стандарт Плюс 5.
Что такое ошибка 0x80070057 и как её исправить
Error 0x80070057 — распространенная проблема, с которой сталкиваются многие пользователи Windows при очередном обновлении операционной системы. Неисправность мешает установке и вызвана несколькими причинами: например, повреждены компоненты обновления или системные файлы. Далее мы расскажем, как исправить ошибку 0x80070057 на Windows 10 и избежать ее появления в будущем.
Инструкции по исправлению ошибки 0x80070057
Код ошибки Windows 0x80070057 в первую очередь связан с проблемами хранения. Обычно неполадка возникает, когда вы пытаетесь обновить ОС или установить новое программное обеспечение. Это также может произойти при обновлении Виндовс со старой версии до новой. Существует несколько способов исправить ошибку:
Устраните неполадки с помощью встроенного средства
Самый распространенный и эффективный метод — использование средства устранения неполадок Центра обновления. Чтобы выполнить необходимую диагностику, следуйте инструкции:
1. Нажмите одновременно клавиши Win и I для открытия меню «Параметры». Выберите категорию «Обновление и безопасность», а затем перейдите на вкладку «Устранение неполадок».

Она расположена в левом блоке
2. Нажмите на «Центр обновления Windows».

Начните диагностику
3. По завершении процесса перезагрузите компьютер, а затем проверьте наличие неполадки.
Изменение параметров десятичного символа
Когда вы получаете сообщение с текстом: «Произошла внутренняя ошибка: параметр задан неверно: 0x80070057», у вас есть возможность настроить параметры десятичного символа. Для этого выполните несколько простых действий:
1. С помощью меню «Пуск» откройте «Параметры». В поиске задайте «Панель управления» и откройте предложенный вариант.

Он отобразится в результатах поиска
2. Перейдите в раздел «Часы и регион» — «Изменение форматов даты, времени и чисел».

Возникнет новое окно
3. Нажмите «Дополнительные параметры». В блоке «Разделитель целой и дробной части» установите точку.

Примените изменения
4. Перезагрузите ПК, чтобы проверить, исчезла ли ошибка.
Сканирование компьютера на наличие вирусов
Иногда вирус или вредоносный софт также могут вызывать ошибки с кодом 0x80070057 при установке операционной системы Windows. Запустите антивирусную программу, чтобы начать полное сканирование устройства. После завершения обработки удалите обнаруженные вирусы или поместите их в карантин.

Пример антивирусной программы
Переименуйте папку распространения ПО
Для исправления проблемы вы можете переименовать папку распространения ПО. Следуйте простой инструкции:
1. Зажмите клавиши Win + R. Затем введите «%systemroot%» в диалоговом окне «Выполнить».

Нажмите Enter на клавиатуре или «ОК» на экране
2. Найдите папку под именем «Software Distribution». Щелкните по ней правой кнопкой мыши и в выпадающем списке выберите опцию «Переименовать». Смените исходное название на «Old».

При запросе разрешения администратора нажмите кнопку «Да»
3. Откройте «Пуск» и найдите строку «Средства администрирования». Выберите «Службы» и откройте их.

Расположение службы в списке ПО
4. Найдите «Центр обновления Windows» и убедитесь, что служба работает. Для этого правой кнопки откройте «Свойства».

В разделе «Состояние» должен быть статус: «Выполняется»
5. Перезапустите систему, чтобы сохранить изменения.
Причины возникновения ошибки
Неисправность может показывать различные сообщения: об остановке служб, неверно заданном параметре или проблемах при установке ПО. Также может возникнуть сообщение: «Не удалось создать подпись: ошибка 0x80070057». Неполадка имеет широкий спектр причин, например, она может быть связана с проблемами программирования страницы, а также с несовместимостью между браузером и веб-страницей.
Также частыми причинами появления кода 0x80070057 являются:
- Проблемы с устройством хранения: внешние накопители или жесткий диск. У вас может не хватать свободной памяти или отсутствовать драйвера для работы внешнего устройства.
- Использование неправильной файловой системы.
- Повреждение раздела жесткого диска. Такое может произойти при форматировании данных.
- Раздел System Reserved поврежден при попытке установить систему Windows.
- Поврежденные записи реестра.
Чтобы предотвратить возникновение неисправности в будущем, вам следует очищать память устройства, проводить сканирование реестра и оптимизировать систему. Вы можете сделать это с помощью простого программного обеспечения для улучшения производительности ПК. Приложение «Ускоритель Компьютера» позволит вовремя обнаружить ошибки в реестре, удалить лишние файлы, а также следить за загруженностью системы.
Ускоритель отличается удобным русскоязычным интерфейсом и предлагает следующие функции:
- Быстрая очистка жесткого диска: удаление лишних и больших файлов, кэша, дубликатов.
- Поиск и исправление ошибок в работе реестра: удаление неверных расширений и отсутствующих приложений.
- Настройка автозагрузки приложений при запуске оборудования.
- Регулярная оптимизация устройства и системный мониторинг.
Читайте так же:
Как очистить оперативную память компьютера
Что делать, если компьютер тормозит и зависает?
Как найти дубликаты файлов
Hi,
I have purchased a certificate for code signing and managed to follow the process for signing the EXE and MSI files. Most of them work fine — but there are several that fail at the cross-signing stage.
Thie is the command line that I am using. I am using this after successfully signing the file with our own certificate. The paths must be correct, otherwise it would not work on some of the EXE files.
signtool.exe sign /v /ac «C:CERTIFICATEMSCV-VSClass3.cer» /s MY /n «Sedao Ltd» /t
http://timestamp.verisign.com/scripts/timstamp.dll «filename.exe»
The error message I am getting is:
——
Done Adding Additional Store
SignTool Error: SignedCode::Sign returned error: 0x80070057
The parameter is incorrect.
SignTool Error: An error occurred while attempting to sign:
Filename.exe
Number of files successfully Signed: 0
Number of warnings: 0
Number of errors: 1
——
I have tried to get support from the certificate company but they won’t comment — saying it’s not a tool they can provide support on.
Do you have any suggestions?
Thanks.
Hi,
I have purchased a certificate for code signing and managed to follow the process for signing the EXE and MSI files. Most of them work fine — but there are several that fail at the cross-signing stage.
Thie is the command line that I am using. I am using this after successfully signing the file with our own certificate. The paths must be correct, otherwise it would not work on some of the EXE files.
signtool.exe sign /v /ac «C:CERTIFICATEMSCV-VSClass3.cer» /s MY /n «Sedao Ltd» /t
http://timestamp.verisign.com/scripts/timstamp.dll «filename.exe»
The error message I am getting is:
——
Done Adding Additional Store
SignTool Error: SignedCode::Sign returned error: 0x80070057
The parameter is incorrect.
SignTool Error: An error occurred while attempting to sign:
Filename.exe
Number of files successfully Signed: 0
Number of warnings: 0
Number of errors: 1
——
I have tried to get support from the certificate company but they won’t comment — saying it’s not a tool they can provide support on.
Do you have any suggestions?
Thanks.




1 пользователь поблагодарил Андрей * за этот пост.