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

Уведомление

Icon
Error

2 Страницы<12
Опции
К последнему сообщению К первому непрочитанному
Offline tyger  
#11 Оставлено : 22 мая 2009 г. 0:26:19(UTC)
tyger

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

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

Челпанов А. написал:
Вообще-то и при проверке CMS подписи (и еще в паре мест, например при двухсторонней аудентификации в TLS) почти все работает корректно. Вот это почти Sharpei и исправляет; не реализует, а именно чуть правит.

Гм. Тогда встречный вопрос: Является ли установка Sharpei RTE строгонеобходимым действием или можно обойтись простым перетаскиванием библиотек (сборок) в папке с программой? Там что-то серьезное при инсталяции происходит, кроме регистрации сборок в GAC?
Offline Максим Коллегин  
#12 Оставлено : 22 мая 2009 г. 3:39:45(UTC)
Максим Коллегин

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

Группы: Администраторы
Зарегистрирован: 12.12.2007(UTC)
Сообщений: 6,393
Мужчина
Откуда: КРИПТО-ПРО

Сказал «Спасибо»: 37 раз
Поблагодарили: 717 раз в 621 постах
Установка необходима.
Знания в базе знаний, поддержка в техподдержке
Offline Arseniy  
#13 Оставлено : 16 июня 2009 г. 12:53:28(UTC)
Arseniy

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

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

Здравствуйте.

У меня возникла похожая проблема.

Мне необходимо подписать XML файл и отправить его на сайт для проверки.

В JavaScript это делается через CAPICOM:

А на C# подготавливаю SignedXML так:

Код:

                                string dsigObjectId = "TS_SO_Zayavka_polzovatelya";
                                SignedXml signedXml = new SignedXml();
                                signedXml.SignedInfo.CanonicalizationMethod = "http://www.w3.org/TR/2001/REC-xml-c14n-20010315";
                                signedXml.SignedInfo.SignatureMethod = "http://www.w3.org/2001/04/xmldsig-more#gostr34102001-gostr3411";
                                signedXml.SigningKey = x509.PrivateKey;

                                Reference reference = new Reference("#TS_SO_Zayavka_polzovatelya");
                                reference.DigestMethod = "http://www.w3.org/2001/04/xmldsig-more#gostr3411";
                                reference.Type = "http://www.w3.org/2000/09/xmldsig#;Object";
                                signedXml.AddReference(reference);

                                XmlDocument xdoc = new XmlDocument();
                                xdoc.PreserveWhitespace = false;
                                string normilize_xmlstring = xmlstring.Replace("&lt;", "<").Replace("&quot;", "\"");
                                xdoc.LoadXml(normilize_xmlstring);
                                DataObject dataObject = new DataObject(dsigObjectId, "text/plain", "", xdoc.DocumentElement);
                                signedXml.AddObject(dataObject);
                                signedXml.KeyInfo = new KeyInfo();
                                KeyInfoX509Data keyX509 = new KeyInfoX509Data();
                                keyX509.AddCertificate(x509);
                                signedXml.KeyInfo.AddClause(keyX509);
                                signedXml.ComputeSignature();
                                XmlElement xelement = signedXml.GetXml();
                                XmlDocument xd = new XmlDocument();
                                xd.AppendChild(xd.ImportNode(xelement, true));
                                xmlsingnedstring = xd.InnerXml;


И отправляю на сервер, но на сервере проверка не проходит.

В чем может быть проблема? Может есть примеры, как это делать?
Вложение(я):
JavaScriptCAPICOM.txt (4kb) загружен 81 раз(а).

У Вас нет прав для просмотра или загрузки вложений. Попробуйте зарегистрироваться.
Offline Челпанов А.  
#14 Оставлено : 16 июня 2009 г. 16:45:27(UTC)
Челпанов А.

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

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

Поблагодарили: 2 раз в 2 постах
Не понял какими средствами Вы проверяете подпись (У вас в тексте и через CAPICOM и на C# реализована только подпись).
Проходит ли подпись на себя (C# на C# и CAPICOM на CAPICOM)?
Примеры подписи и проверки подписи на C# есть в КриптоПро Sharpei SDK Simple.zip каталог xml
Примеры подписи и проверки подписи через CAPICOM есть в Microsoft Platform SDK C:\Program Files\Microsoft SDKs\Windows\v6.0\Samples\Security\capicom\vbs\CSignData.vbs
С уважением, Александр.
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest (2)
2 Страницы<12
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.