Re: Работа с функциями библиотеки rtPKCS11ECP

Сделаем возможность явно задавать CKA_ID. В ближайшие дни.

Re: Работа с функциями библиотеки rtPKCS11ECP

Добрый день. Можно тоже получить обертку для c# (64, 32)?

Заранее благодарен.

Re: Работа с функциями библиотеки rtPKCS11ECP

dedov пишет:

День добрый.
Пользуюсь вашей оберткой для C# для работы с рутокен эцп для егаис.
Появилась новая проблема.
ПО УТМ для егаис не хочет работать с ключами из ГОСТ части рутокен эцп, по причине некорректного CKA_ID.
Что за проблема не известно! Да и влиять на идентификтор ключевой пары нет возможности. В обертке не реализована эта возможность.

Срочно нужна помощь.

Добрый день.

Отправил вам на почту библиотеку с возможностью явной установки CKA_ID.

string keyId = cc.generateKeyPair(devices[0], "A", "", keyOps, "12312341234");

12312341234 будет CKA_ID.

Re: Работа с функциями библиотеки rtPKCS11ECP

wwago пишет:

Добрый день. Можно тоже получить обертку для c# (64, 32)?

Заранее благодарен.

Добрый день.

Отправил вам на почту.

Re: Работа с функциями библиотеки rtPKCS11ECP

Виктор Ткаченко пишет:
wwago пишет:

Добрый день. Можно тоже получить обертку для c# (64, 32)?

Заранее благодарен.

Добрый день.

Отправил вам на почту.


Спасибо, получил.

Re: Работа с функциями библиотеки rtPKCS11ECP

Виктор Ткаченко пишет:

Добрый день.

Отправил вам на почту библиотеку с возможностью явной установки CKA_ID.

string keyId = cc.generateKeyPair(devices[0], "A", "", keyOps, "12312341234");

12312341234 будет CKA_ID.

День добрый
Спасибо получил!

Вопрос, значение CKA_ID как-то регламентировано по содержанию символов, знаков и по длине?

(2016-05-18 14:16:47 отредактировано Виктор Ткаченко)

Re: Работа с функциями библиотеки rtPKCS11ECP

Примерно в таком ключе:

string key;

if(КПП > 0)
    key = yy + month + dd + hh + minutes + "-" + ИНН + "-" + КПП;
else
    key = yy + month + dd + hh + minutes + "-" + ИНН;

Re: Работа с функциями библиотеки rtPKCS11ECP

Назрел еще вопрос!
В апреле получал от вас сборку и в ней rtPKCS11ECP.dll был 1.3.7.0 версии!!!
А в той сборке что была прислана 16 мая 2016 rtPKCS11ECP.dll 1.2.1.0 версии и файл годичной давности!!!

Что это косяк или так задумано?

Re: Работа с функциями библиотеки rtPKCS11ECP

Если у вас все хорошо работает с 1.3.7.0, то ее и используйте.

(2016-05-20 19:41:51 отредактировано dedov)

Re: Работа с функциями библиотеки rtPKCS11ECP

Подскажите!
Почему если делаю так:
CryptoCore Crypto = ...
//какие-то действия
Crypto.logout(dv);
Crypto.Dispose();

и на Dispose приложение валится (просто закрывается молча и без предупреждений), даже без возможности перехватить ошибку????

и если через VS2015Com, то пишет в выводе "Программа "[10356] zapros.vshost.exe" завершилась с кодом -1073740940 (0xc0000374)."

upd: появилась еще такая проблема, в программе делаю запрос, тут же записываю его на токен и приложение в 95% "вылетает". бывает "вылетает" после создания запроса. до этой сборки таких проблем не было!

upd2:
делаю простой метод:
делаю enumerateDevices
логинюсь = все ок
тут же далаю logout
и не делая ничего в приложении, оно (приложение) падает(схлопывается)!
если же я не обращаюсь к компонентам рутокена вообще в приложении, то приложение работает всегда стабильно.
!!!

upd3: это события в "приложениях" https://yadi.sk/d/rMKEVsa2rrbR5, если запускать из студии

upd4: 0xC0000374 STATUS_HEAP_CORRUPTION

upd5: кстати проблемы описанные в upd1-4 реализовывались без Dispose!!!

и все еще очень нужна помощь!!!!!!

Re: Работа с функциями библиотеки rtPKCS11ECP

Уважаемые ПАРТНЕРЫ!
Как бы помощь еще нужна! Ответьте хоть что-нибудь!

Re: Работа с функциями библиотеки rtPKCS11ECP

Оперативней было бы такие вопросы решать через почту...

Re: Работа с функциями библиотеки rtPKCS11ECP

Здравствуйте. Имеется ЭЦП Рутокен Флеш. Есть необходимость проверять на валидность отсоединенную подпись, поставляемую росреестром.
Имеется два файла:
res_31617d0b-ba19-f044-0e05-30a800690e40.zip
res_31617d0b-ba19-f044-0e05-30a800690e40.zip.sig
Вот архив с файлами, если нужны: https://cloud.mail.ru/public/Mw62/SfhFJmcWu

Алгоритм подписи: ГОСТ Р 34.10-2001/ГОСТ Р 34.11-94
Тип содержимого PKCS#7 - data

Проверяю следующим образом:

var core = CryptoCore.getInstance();
string cms = Convert.ToBase64String(File.ReadAllBytes(@"res_31617d0b-ba19-f044-0e05-30a800690e40.zip.sig"));
string data = Convert.ToBase64String(File.ReadAllBytes(@"res_31617d0b-ba19-f044-0e05-30a800690e40.zip"));
var options = new OptionsMap() {{"verifyCertificate", false}, {"base64", true}};
var result = core.verify(0, cms, data, new StringVector(), new StringVector(), new StringVector(), options);

core.verify выдает ошибку:

1102:error:0D07207B:asn1 encoding routines:func(114):reason(123)

Через криптопро арм подпись открывается, виден результат проверки (Подпись недействительна. Сертификат недействителен)

Есть ли возможность проверить подобную подпись? Если есть, подскажите пожалуйста, что я делаю не так?

Re: Работа с функциями библиотеки rtPKCS11ECP

Добрый день, если криптоарм говорит что подпись невалидна, то чего вы хотите тогда добиться?
она же валидной не станет :)

У вас есть пример когда проверка подписи должна проходить?

Re: Работа с функциями библиотеки rtPKCS11ECP

Добрый день, miron_valentin!
попробуйте перекодировать в PEM саму подпись и не вызывать для нее
string cms = Convert.ToBase64String(File.ReadAllBytes(@"res_31617d0b-ba19-f044-0e05-30a800690e40.zip.sig"));