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

Уведомление

Icon
Error

2 Страницы12>
Опции
К последнему сообщению К первому непрочитанному
Offline Павел Смирнов  
#1 Оставлено : 9 декабря 2010 г. 18:30:14(UTC)
Павел Смирнов

Статус: Вам и не снилось

Группы: Администраторы
Зарегистрирован: 24.12.2007(UTC)
Сообщений: 831
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 1 раз
Поблагодарили: 48 раз в 44 постах
При использовании CAdESCOM (и CAPICOM) из .NET существует проблема с кодировками данных, передаваемых в виде строк, которая описана здесь.

Пример интероп-ассембли для CAdESCOM (и CAPICOM), в которой решена эта проблема, можно скачать по ссылке, приведённой ниже.

Interop.CAPICOM.dll
Interop.CAdESCOM.dll

Отредактировано модератором 25 ноября 2016 г. 15:51:22(UTC)  | Причина: Не указана

Техническую поддержку оказываем тут.
Наша база знаний.
Offline Vladimir2008  
#2 Оставлено : 5 декабря 2013 г. 15:38:01(UTC)
Vladimir2008

Статус: Активный участник

Группы: Участники
Зарегистрирован: 04.06.2008(UTC)
Сообщений: 41
Откуда: Москва

Сказал(а) «Спасибо»: 1 раз
Существуют ли новые версии таких интероп-ассамблей для КриптоПро ЭЦП SDK (версия 1.05.1055)?
Или в данной версии (1.05.1055) проблема решена?
Offline Новожилова Елена  
#3 Оставлено : 5 декабря 2013 г. 16:44:36(UTC)
Новожилова Елена

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

Группы: Администраторы, Участники
Зарегистрирован: 10.12.2008(UTC)
Сообщений: 893
Женщина
Откуда: Крипто-Про

Поблагодарили: 84 раз в 81 постах
Какая именно проблема вас интересует?
Offline Vladimir2008  
#4 Оставлено : 19 декабря 2013 г. 11:02:21(UTC)
Vladimir2008

Статус: Активный участник

Группы: Участники
Зарегистрирован: 04.06.2008(UTC)
Сообщений: 41
Откуда: Москва

Сказал(а) «Спасибо»: 1 раз
Автор: Новожилова Елена Перейти к цитате
Какая именно проблема вас интересует?

Автор: Смирнов Перейти к цитате
При использовании CAdESCOM из .NET существует проблема с кодировками данных, передаваемых в виде строк, которая описана здесь.
Пример интероп-ассембли для CAdESCOM, в которой решена эта проблема, можно скачать по ссылке, приведённой ниже.


Просьба пояснить, как интероп-ассембли от 09.12.2010 будут стыковаться с новыми версиями OCSP (1.05.1053), TSP (1.05.1057), Cades (1.05.1055) и по возможности выложить новые интероп-ассембли.
Offline Новожилова Елена  
#5 Оставлено : 19 декабря 2013 г. 12:15:56(UTC)
Новожилова Елена

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

Группы: Администраторы, Участники
Зарегистрирован: 10.12.2008(UTC)
Сообщений: 893
Женщина
Откуда: Крипто-Про

Поблагодарили: 84 раз в 81 постах
Интероп-ассембли не привязаны к конкретным версиям dll. В новых версиях OCSP и TSP все свойства и методы, для которых требовалось использовать Interop, продублированы аналогами, для которых специальные Interop не требуются, достаточно тех, которые будут созданы автоматически при подключении библиотеки.

Для cadescom.dll со старым Interop не будут доступны новые объекты и методы, старые будут работать. Поэтому я и спрашиваю, для каких именно целей нужны Interop.

Отредактировано пользователем 19 декабря 2013 г. 12:28:35(UTC)  | Причина: Не указана

Offline Vladimir2008  
#6 Оставлено : 19 декабря 2013 г. 12:21:25(UTC)
Vladimir2008

Статус: Активный участник

Группы: Участники
Зарегистрирован: 04.06.2008(UTC)
Сообщений: 41
Откуда: Москва

Сказал(а) «Спасибо»: 1 раз
Я потому и спрашивал, осталась ли проблема:
Автор: Vladimir2008 Перейти к цитате
Существуют ли новые версии таких интероп-ассамблей для КриптоПро ЭЦП SDK (версия 1.05.1055)?
Или в данной версии (1.05.1055) проблема решена?

Судя по Вашему ответу - проблема решена.
Спасибо!
Offline smartchaos  
#7 Оставлено : 19 декабря 2013 г. 13:40:31(UTC)
smartchaos

Статус: Участник

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

Сказал(а) «Спасибо»: 3 раз
Я скачал Interop.CAPICOM.dll но при регистрации с помощью команды regsvr32 возникает ошибка: Модуль "Interop.CAPICOM.dll" загружен, но точка входа DLLRegisterServer не найдена. В чем может быть проблема?
Offline Новожилова Елена  
#8 Оставлено : 19 декабря 2013 г. 14:05:25(UTC)
Новожилова Елена

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

Группы: Администраторы, Участники
Зарегистрирован: 10.12.2008(UTC)
Сообщений: 893
Женщина
Откуда: Крипто-Про

Поблагодарили: 84 раз в 81 постах
А зачем вы хотите зарегистрировать модуль Interop.CAPICOM.dll при помощи regsvr32?
Offline smartchaos  
#9 Оставлено : 20 декабря 2013 г. 5:14:36(UTC)
smartchaos

Статус: Участник

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

Сказал(а) «Спасибо»: 3 раз
Мне нужно в C# получить усовершенствованую ЭЦП
При выполнении этого кода
CAdESCOM.CPAttribute atr = new CPAttribute();
atr.OID.Value = "1.2.3.4.5";
atr.Value = result;
var oSigner = new CAdESCOM.CPSigner();
oSigner.UnauthenticatedAttributes.Add(atr);
var oSignedData = new CAdESCOM.CadesSignedData();
oSignedData.Content = signedMessage;
signedMessage = oSignedData.SignCades(oSigner, CAdESCOM.CADESCOM_CADES_TYPE.CADESCOM_CADES_BES,
true, CAPICOM_ENCODING_TYPE.CAPICOM_ENCODE_BASE64);
возникает следующая ошибка
Retrieving the COM class factory for component with CLSID {FE98A77F-7D50-4210-AED4-5B2AE2EDAEF1} failed due to the following error: 80040154 Класс не зарегистрирован (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).
Или Я что то не правильно делаю?
Offline Новожилова Елена  
#10 Оставлено : 20 декабря 2013 г. 11:54:20(UTC)
Новожилова Елена

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

Группы: Администраторы, Участники
Зарегистрирован: 10.12.2008(UTC)
Сообщений: 893
Женщина
Откуда: Крипто-Про

Поблагодарили: 84 раз в 81 постах
Какой продукт и какой версии вы устанавливали? Какой битности? Какой битности процесс вы запускаете?
Offline smartchaos  
#11 Оставлено : 20 декабря 2013 г. 12:09:55(UTC)
smartchaos

Статус: Участник

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

Сказал(а) «Спасибо»: 3 раз
Установлен CryptoPRO CSP 3.6791, tspsvc-x64.msi последняя версия, процесс запускается 32 битный. Какая еще информация нужна?
Offline Новожилова Елена  
#12 Оставлено : 20 декабря 2013 г. 12:15:55(UTC)
Новожилова Елена

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

Группы: Администраторы, Участники
Зарегистрирован: 10.12.2008(UTC)
Сообщений: 893
Женщина
Откуда: Крипто-Про

Поблагодарили: 84 раз в 81 постах
То есть, ни КриптоПро ЭЦП SDK, ни CAdESCOM, ни КриптоПро ЭЦП Browser plug-in вы не ставили?
Без одного из этих компонентов ваш код работать не будет.
thanks 1 пользователь поблагодарил Новожилова Елена за этот пост.
smartchaos оставлено 20.12.2013(UTC)
Offline smartchaos  
#13 Оставлено : 20 декабря 2013 г. 12:28:41(UTC)
smartchaos

Статус: Участник

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

Сказал(а) «Спасибо»: 3 раз
Да не был установлен КриптоПро CADESCOM, Спасибо.
Offline smartchaos  
#14 Оставлено : 20 декабря 2013 г. 12:35:12(UTC)
smartchaos

Статус: Участник

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

Сказал(а) «Спасибо»: 3 раз
Еще вопрос я тут пытаюсь добавить в подписанное сообщение штамп

var oSignedData = new CAdESCOM.CadesSignedData();
oSignedData.Content = signedMessage;
signedMessage = oSignedData.SignCades(oSigner, CAdESCOM.CADESCOM_CADES_TYPE.CADESCOM_CADES_BES,
true, CAPICOM_ENCODING_TYPE.CAPICOM_ENCODE_BASE64);

и выдает следующую ошибку
Could not load file or assembly 'Interop.CAPICOM, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. Не удается найти указанный файл.

Я же установил CAPICOM почему он не может найти эту сборку?
Offline Новожилова Елена  
#15 Оставлено : 20 декабря 2013 г. 12:38:24(UTC)
Новожилова Елена

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

Группы: Администраторы, Участники
Зарегистрирован: 10.12.2008(UTC)
Сообщений: 893
Женщина
Откуда: Крипто-Про

Поблагодарили: 84 раз в 81 постах
А в проект вы ее добавили?
Offline smartchaos  
#16 Оставлено : 20 декабря 2013 г. 12:44:57(UTC)
smartchaos

Статус: Участник

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

Сказал(а) «Спасибо»: 3 раз
Если бы я её не добавил тогда у меня ничего не компилировалось.
Да только другая версия 2.1 а просит 1.0, почему так.
Offline smartchaos  
#17 Оставлено : 23 декабря 2013 г. 6:05:53(UTC)
smartchaos

Статус: Участник

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

Сказал(а) «Спасибо»: 3 раз
Добавил ссылку на Interop.Capicom.dll с первого поста, после этого возникает следующая ошибка: Could not load type 'CAPICOM.StringBlobMarshaler' from assembly 'CryptoSelect.Providers.CryptoPro, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'.
в этой строчки кода
TSPRequest oRequest = new TSPCOM.TSPRequest();
TSPCOM.TSPStamp oStamp;
CAPICOM.HashedData oHash = new CAPICOM.HashedData();
CAPICOM.Utilities utils = new Utilities();

oHash.Algorithm = (CAPICOM.CAPICOM_HASH_ALGORITHM)CAPICOM.CAPICOM_HASH_ALGORITHM.CAPICOM_HASH_ALGORITHM_SHA_256;
oHash.Hash(message);
Что я делаю не так?
Offline Новожилова Елена  
#18 Оставлено : 23 декабря 2013 г. 11:10:06(UTC)
Новожилова Елена

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

Группы: Администраторы, Участники
Зарегистрирован: 10.12.2008(UTC)
Сообщений: 893
Женщина
Откуда: Крипто-Про

Поблагодарили: 84 раз в 81 постах
Посмотрите это:

TSPRequest2::HashAlgorithm2

и это:

TSPRequest2::AddData
thanks 1 пользователь поблагодарил Новожилова Елена за этот пост.
smartchaos оставлено 23.12.2013(UTC)
Offline bazooka  
#19 Оставлено : 27 февраля 2015 г. 14:10:01(UTC)
bazooka

Статус: Активный участник

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

Сказал «Спасибо»: 5 раз
Поблагодарили: 2 раз в 2 постах
Добрый день! Подскажите, в сборке Interop.CAdESCOM.dll отсутствует тип ICPSigner4 и ICPSigner5. Без первого нельзя задать программно пин код для подписи. При использовании вот такой конструкции
var signerDyn = signer as dynamic;
signerDyn.KeyPin = keyPin;
Где signer - это объект типа ICPSigner3.

Ругается при выполнении метода SignCades, что неполучилось неявно преобразовать string к byte[]

Подскажите, как быть? и возможно ли выложить полную версию Interop.CAdESCOM.dll?

Дата изменения: пользователем 27 февраля 2015 г. 14:38:28(UTC)  | Причина: Не указана

Offline bazooka  
#20 Оставлено : 27 февраля 2015 г. 16:14:09(UTC)
bazooka

Статус: Активный участник

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

Сказал «Спасибо»: 5 раз
Поблагодарили: 2 раз в 2 постах
Очень странно... Проблема в том, что метод Sign, как и SignCades возвращали не byte[], хотя у меня подключены обе исправленные сборки из этого топика. А возвращали string. Причем тип возвращаемого значения этими методами указан все таки как byte[], как и должно быть. В этом случае, следующий код даже не должен компилироваться, т.к. метод FromBase64String принимает строку. Но он компилируется... Ничего не пойму. Как то на лету подменяется метод на старый (не исправленный, без маршаллера) что-ли?? Но и компилироваться не должно же...

byte[] signedData=null;
string str = data.Sign(signerDyn, _detached);
signedData = Convert.FromBase64String(data.Sign(signerDyn, _detached));

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