Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

2 Страницы12>
Опции
К последнему сообщению К первому непрочитанному
Offline Андрей Писарев  
#1 Оставлено : 10 ноября 2013 г. 13:45:52(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 13,357
Мужчина
Российская Федерация

Сказал «Спасибо»: 550 раз
Поблагодарили: 2217 раз в 1731 постах
Добрый день всем.

Задача: создание и проверка подписей в разных CSP с ГОСТ-2012

Исходные данные:
Создал два сертификата по ГОСТ-2012 (512 и 1024 бит) в ViPNet CSP 4.0.0.19743 (в Windows 2003R2)
Создал две подписи с помощью этих сертификатов - успешно.
Проверил две подписи с помощью этих сертификатов - успешно.

Перенес файл и подписи на машину с КриптоПРО CSP 4.0.9007
Ни одна из подписей не прошла проверку:
Цитата:

Подпись не верна [2148086017] :либо внутренняя ошибка ASN1 либо ошибка дешифровки


Создал тестовый сертификат на машине с КриптоПРО CSP 4.0
Цитата:

csptest -keyset -newkeyset -makecer -exportable -cont certificate_1024 -length 1024 -keytype exchange

Создал подпись, проверилась успешно (через CryptoAPI и через Capicom)

Тестирование контейнера:



Перенес файл и подпись на машину с ViPNet CSP 4
Проверил (через Capicom и CryptoAPI):
Цитата:
Подпись не верна [2148077575] :Неправильное значение хеша



Проверил создание подписей и через Capicom:
на той машине где создавал подписи: ОК
на другой машине с другим CSP: Неправильное значение хеша

При использовании ГОСТ-2001: все ОК.

Вопрос:
криптопровайдеры еще не совместимы или что-то я сделал не так?

Прикладываю сертификаты, файлы и подписи к ним.

Спасибо.
Вложение(я):
Тестирование.zip (12kb) загружен 10 раз(а).

У Вас нет прав для просмотра или загрузки вложений. Попробуйте зарегистрироваться.
Техническую поддержку оказываем тут
Наша база знаний
Offline Андрей Писарев  
#2 Оставлено : 10 ноября 2013 г. 19:50:06(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 13,357
Мужчина
Российская Федерация

Сказал «Спасибо»: 550 раз
Поблагодарили: 2217 раз в 1731 постах
Аналогичное поведение и в КриптоПРО CSP 4.0.9071
+ пришлось сгенерировать новые контейнеры и сертификаты (старые стали выдавать ошибку при обращении к ЗК:
Цитата:

Код [2148073499]: Тип поставщика не соответствует зарегистрированному значению


Создал для 80 и 81


Подписи создаются и проверяются на этой же машине, но если перезапустить приложение и проверить подпись:
выдается сбой:


Что делать?
Предыдущая сборка (4.0.9007) вела себя корректнее, приложение успешно проверяло созданные ранее подписи (после перезапуска)

Техническую поддержку оказываем тут
Наша база знаний
Offline Андрей Писарев  
#3 Оставлено : 10 ноября 2013 г. 19:56:21(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 13,357
Мужчина
Российская Федерация

Сказал «Спасибо»: 550 раз
Поблагодарили: 2217 раз в 1731 постах
Решил проверить сертификаты, которые по ГОСТ-2001 на этой машине были.
В КриптоПРО CSP 4.0.9071 подпись создается и тут же проверяется,
но если перезапустить приложение и сделать только проверку - сбой: Указан неправильный алгоритм

Если (закрыть приложение\не закрывая) сделать новую подпись по ГОСТ-2001 (сохранить в другой файл)
и следом проверить предыдущую подпись (которая давала сбой) - она успешно проверяется.


Перенес файл+подпись на машину с сертифицированный провайдером (ГОСТ-2001) - подпись успешно проверяется.
Техническую поддержку оказываем тут
Наша база знаний
Offline Андрей Писарев  
#4 Оставлено : 10 ноября 2013 г. 22:18:17(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 13,357
Мужчина
Российская Федерация

Сказал «Спасибо»: 550 раз
Поблагодарили: 2217 раз в 1731 постах
csptest.exe -sfsign -sign -my c_512 -in "c:\test.txt" -detached -out "c:\test.txt.sig"
Цитата:
#0:
Subject: E=test@cryptopro.ru, CN=c_512
Valid : 10.11.2013 16:36:11 - 01.11.2030 16:36:11 (UTC)
Issuer : E=test@cryptopro.ru, CN=c_512

A CSP has been acquired.
Source message length: 2716
Calculated signature (or signed message) length: 476
An error occurred in running the program.
signtsf.c:513:Signature creation error
Error number 0x80090008 (2148073480).
Указан неправильный алгоритм.

Total: SYS: 0,219 sec USR: 0,094 sec UTC: 2,031 sec
[ErrorCode: 0x80090008]

Отредактировано пользователем 10 ноября 2013 г. 22:23:26(UTC)  | Причина: Не указана

Техническую поддержку оказываем тут
Наша база знаний
Offline Андрей Писарев  
#5 Оставлено : 10 ноября 2013 г. 23:04:47(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 13,357
Мужчина
Российская Федерация

Сказал «Спасибо»: 550 раз
Поблагодарили: 2217 раз в 1731 постах
Следующий опыт:
КриптоПРО CSP 4.0.9071 (Windows XP sp3)
Создаю в браузере запрос на сертификат к MS CA (Windows 2003R2, 32x, ViPNet CSP 4.0)

Выбираю из списка 80 тип криптопровайдера:
Crypto-Pro GOST R 34.10-2012 Cryptographic Service Provider
Генерируется контейнер, запрос...

Получаю в ответ от сервера:
"Ошибка при обработке запроса Неправильная подпись. 0x80090006 (-2146893818)".


Выбираю из списка 81 тип криптопровайдера:
Crypto-Pro GOST R 34.10-2012 Strong Cryptographic Service Provider
Размер ключа: 1024, хеш 512 (устанавливается по умолчанию)

Генерируется контейнер, запрос...

Получаю в ответ от сервера:
"Ошибка при обработке запроса Неправильная подпись. 0x80090006 (-2146893818)".
Техническую поддержку оказываем тут
Наша база знаний
Offline Ray  
#6 Оставлено : 11 ноября 2013 г. 20:05:51(UTC)
Ray

Статус: Новичок

Группы: Участники
Зарегистрирован: 11.11.2013(UTC)
Сообщений: 2

Поблагодарили: 1 раз в 1 постах
Имеются две следующие причины подобных ошибок:
1)В ключевых блобах у этих двух провайдеров указаны разные алгиды подписи, для старого стандарта они были одинаковые (поэтому вылезает сообщение: Указан неправильный алгоритм )
2)Значения новых хэшей в этих двух провайдерах зеркально отражены друг относительно друга (поэтому проверка подписи не проходит)

Данные проблемы в скором времени будут исправлены.
thanks 1 пользователь поблагодарил Ray за этот пост.
Андрей * оставлено 11.11.2013(UTC)
Offline Андрей Писарев  
#7 Оставлено : 11 ноября 2013 г. 22:31:14(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 13,357
Мужчина
Российская Федерация

Сказал «Спасибо»: 550 раз
Поблагодарили: 2217 раз в 1731 постах
Автор: Ray Перейти к цитате
Имеются две следующие причины подобных ошибок:
1)В ключевых блобах у этих двух провайдеров указаны разные алгиды подписи, для старого стандарта они были одинаковые (поэтому вылезает сообщение: Указан неправильный алгоритм )
2)Значения новых хэшей в этих двух провайдерах зеркально отражены друг относительно друга (поэтому проверка подписи не проходит)

Данные проблемы в скором времени будут исправлены.


Спасибо. Буду ждать обновления.
Техническую поддержку оказываем тут
Наша база знаний
Offline Андрей Писарев  
#8 Оставлено : 11 ноября 2013 г. 22:40:57(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 13,357
Мужчина
Российская Федерация

Сказал «Спасибо»: 550 раз
Поблагодарили: 2217 раз в 1731 постах
Автор: Ray Перейти к цитате
Имеются две следующие причины подобных ошибок:
1)В ключевых блобах у этих двух провайдеров указаны разные алгиды подписи, для старого стандарта они были одинаковые (поэтому вылезает сообщение: Указан неправильный алгоритм )


Насчет сообщения про "неправильный алгоритм" - дело вовсе не в ключевых блобах и не в другом CSP.






Техническую поддержку оказываем тут
Наша база знаний
Offline Андрей Писарев  
#9 Оставлено : 11 ноября 2013 г. 22:50:49(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 13,357
Мужчина
Российская Федерация

Сказал «Спасибо»: 550 раз
Поблагодарили: 2217 раз в 1731 постах
Автор: Андрей * Перейти к цитате
Автор: Ray Перейти к цитате
Имеются две следующие причины подобных ошибок:
1)В ключевых блобах у этих двух провайдеров указаны разные алгиды подписи, для старого стандарта они были одинаковые (поэтому вылезает сообщение: Указан неправильный алгоритм )


Насчет сообщения про "неправильный алгоритм" - дело вовсе не в ключевых блобах и не в другом CSP.


Ray,
или я не так понял и сообщении имелись ввиду 80 и 81 типы криптопровайдеров КриптоПРО,
а не ViPNet CSP (типы 77,78)?
Техническую поддержку оказываем тут
Наша база знаний
Offline Ray  
#10 Оставлено : 12 ноября 2013 г. 14:09:38(UTC)
Ray

Статус: Новичок

Группы: Участники
Зарегистрирован: 11.11.2013(UTC)
Сообщений: 2

Поблагодарили: 1 раз в 1 постах
Нет, имелись ввиду не типы провайдеров, а id алгоритмов.
Их можно перечислить для каждого типа провайдера следующим образом:
Код:
    CryptGetProvParam(hCont, PP_ENUMALGS, (BYTE *)&speAlgInfo, &dwAlgInfoSize, CRYPT_FIRST);
    while(GetLastError() != ERROR_NO_MORE_ITEMS)
    {
	printf("%x %s\n", speAlgInfo.aiAlgid, speAlgInfo.szName);
	CryptGetProvParam(hCont, PP_ENUMALGS, (BYTE *)&speAlgInfo, &dwAlgInfoSize, CRYPT_NEXT);
    }

Id алгоритмов подписи 2012 года (длинной и короткой) в этих двух провайдерах имеют разное значение. В связи с этим при импорте болоба с открытым ключом из провайдера крипто-про в провайдер випнет возникает ошибка проверки id алгоритмов (в обратную сторону тестирование не проводилось)
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
2 Страницы12>
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.