Я пытаюсь проверить подпись XML-файла. XML-файл представляет собой файл электронного счета, соответствующий стандартам UBL. Подпись в файле является лишь образцом. Это недействительно. Я просто хочу узнать отправную точку для проверки подписи.
Ссылка на файл счета
Я использовал следующий код и получил следующую ошибку.
Не удалось создать описание подписи для предоставленного алгоритма подписи.
private void Validate(string XmlFilePath)
{
//Create [Doc]
#region
var Doc = new XmlDocument();
Doc.PreserveWhitespace = true;
Doc.Load(XmlFilePath);
#endregion
//Create [Namespaces]
#region
var Namespaces = new XmlNamespaceManager(Doc.NameTable);
//IDictionary localNamespaces = null;
var Navigator = Doc.CreateNavigator();
while (Navigator.MoveToFollowing(XPathNodeType.Element))
{
var LocalNamespaces = Navigator.GetNamespacesInScope(XmlNamespaceScope.Local);
foreach (var localNamespace in LocalNamespaces)
{
var Prefix = localNamespace.Key;
if (string.IsNullOrEmpty(Prefix))
{
Prefix = "tst";
}
Namespaces.AddNamespace(Prefix, localNamespace.Value);
}
}
#endregion
//Get [Certificate_Base64]
var Certificate_Base64 = Doc.DocumentElement.SelectSingleNode("ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/ds:Signature/ds:KeyInfo/ds:X509Data/ds:X509Certificate", Namespaces).InnerText;
//Create [Certificate]
var Certificate = new X509Certificate2(Convert.FromBase64String(Certificate_Base64));
var SignedDoc = new SignedXml(Doc);
var Result = SignedDoc.CheckSignature(Certificate, true);
}
Подробнее здесь: https://stackoverflow.com/questions/797 ... n-xml-file
Как проверить подпись в XML-файле? ⇐ C#
Место общения программистов C#
1760352074
Anonymous
Я пытаюсь проверить подпись XML-файла. XML-файл представляет собой файл электронного счета, соответствующий стандартам UBL. Подпись в файле является лишь образцом. Это недействительно. Я просто хочу узнать отправную точку для проверки подписи.
Ссылка на файл счета
Я использовал следующий код и получил следующую ошибку.
Не удалось создать описание подписи для предоставленного алгоритма подписи.
private void Validate(string XmlFilePath)
{
//Create [Doc]
#region
var Doc = new XmlDocument();
Doc.PreserveWhitespace = true;
Doc.Load(XmlFilePath);
#endregion
//Create [Namespaces]
#region
var Namespaces = new XmlNamespaceManager(Doc.NameTable);
//IDictionary localNamespaces = null;
var Navigator = Doc.CreateNavigator();
while (Navigator.MoveToFollowing(XPathNodeType.Element))
{
var LocalNamespaces = Navigator.GetNamespacesInScope(XmlNamespaceScope.Local);
foreach (var localNamespace in LocalNamespaces)
{
var Prefix = localNamespace.Key;
if (string.IsNullOrEmpty(Prefix))
{
Prefix = "tst";
}
Namespaces.AddNamespace(Prefix, localNamespace.Value);
}
}
#endregion
//Get [Certificate_Base64]
var Certificate_Base64 = Doc.DocumentElement.SelectSingleNode("ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/ds:Signature/ds:KeyInfo/ds:X509Data/ds:X509Certificate", Namespaces).InnerText;
//Create [Certificate]
var Certificate = new X509Certificate2(Convert.FromBase64String(Certificate_Base64));
var SignedDoc = new SignedXml(Doc);
var Result = SignedDoc.CheckSignature(Certificate, true);
}
Подробнее здесь: [url]https://stackoverflow.com/questions/79789178/how-to-validate-signature-on-an-xml-file[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия