验证 .NET 中的 XMLDSIG 链?

2023-12-13

我正在使用 XMLDSIG签署配置文件。我希望我的 CA 能够颁发可用于签署 XML 的密钥。然后我想验证 XML 是否是使用我的 CA 颁发的密钥进行签名的。

如何从签名证书中获取签名证书SignedXml目的?如何沿着证书链回到特定的 CA?

请注意,我的 CA 的公钥将存储在我的可执行文件中,而不是证书存储中。


要将任意证书附加到 XML-DSIG 文件,请添加<X509Data> element。要在 .NET 中执行此操作,请使用:

signedXml.KeyInfo.AddClause(
    new KeyInfoX509Data(certificate, X509IncludeOption.WholeChain));

要从 XML 文件中提取证书,请使用:

var certificates = signedXml.KeyInfo.OfType<KeyInfoX509Data>().Single();

然后,您可以使用以下命令验证链:

var chain = new X509Chain();
chain.ChainPolicy.ExtraStore.AddRange(
    certificates.Cast<X509Certificate2>().ToArray());
var chainIsOk = chain.Build(signingCertificate);

要找出实际用于签名的证书(以及因此的值)signingCertificate),您需要找到包含的证书匹配钥匙从返回CheckSignatureReturningKey.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

验证 .NET 中的 XMLDSIG 链? 的相关文章

  • .Net 中是否有与 HTML 等效的 XmlReader?

    我用过Html敏捷包 http html agility pack net z codeplex过去在 Net 中解析 HTML 但我不喜欢它只使用 DOM 模型 在大型文档和 或具有大量嵌套的文档上 可能会遇到堆栈溢出或内存不足异常 另外
  • 使 .net web api 队列请求以“单线程”方式运行

    我们有一个 c net Web API 服务调用代码 该代码无法一次处理多个数据库请求 该系统适用于需求相对较小的账单在线支付 我们无法控制代码来进行可以解决问题的更改 另一个使用相同代码的小组使用 WCF API 和服务配置将并发请求限制
  • MonoState、Singleton 或派生形式:CRUD 应用程序的最佳方法?

    我有一个相当大的 CRUD WinForm 应用程序 其中有许多对象 人员 注册 计划 案例注释等 该应用程序由 30 多种表单组成 UI 逻辑上被分解 会员 注册 计划 案例说明等 我正在尝试弄清楚如何创建我的人物对象搜索后搜索表格并将对
  • 从 .net 应用程序登录 OpenID 站点

    我一直在考虑编写一个小工具来登录 SO 并定期使用一些主题 当前信息更新我的个人资料信息 例如我最新的博客文章或我需要帮助的问题等 为了让它工作 我需要以某种方式从控制台应用程序登录到SO 是否有一个 Net 库可以简化使用原始 http
  • WPF Datagrid 循环/选择具有特定属性的单元格

    全新的 WPF 对 WinForms 非常熟悉 这可能会让过渡变得更加困难 我正在尝试将旧 WinForms 项目中的一些功能移植到 WPF 中作为学习体验 目标是在 DataGrid 中查找与 TextBox 中的字符串匹配的单元格值 我
  • 模拟 WCF 客户端代理的最佳方法

    有没有办法使用 Rhino 模拟框架来模拟 WCF 客户端代理 以便我可以访问 Channel 属性 我正在尝试对 Proxy Close 方法进行单元测试 但由于代理是使用抽象基类构造的ClientBase
  • 删除 TableLayoutPanel 中的特定行

    我有 TableLayoutPanel 我以编程方式添加行 用户基本上选择一个属性 然后与一些控件一起显示在表中 我想我在这里有一个一般性的理解问题 我会尽力解释它 每行中的控件之一是 删除 按钮 该按钮应该删除它所在的行 我所做的是将事件
  • 如何使用AutoMapper按照类中定义的顺序映射对象?

    给定这两个对象 我使用非常不同的对象来更好地阐明 public class Car public string Brand get set public int Speed get set public class Apple public
  • 如何在 wpf 应用程序的代码隐藏中创建集合视图源

    我有以下代码 public partial class MainWindow Window public MainWindow InitializeComponent var entities new DemoEntities var de
  • MySQL - 多个结果集

    我正在使用 NET Connector 连接到 MySQL 在我的应用程序中 很少有线程使用相同的连接 因此如果 MySQLDataReader 尚未关闭并且某个线程正在尝试执行查询 则会出现该错误 已经有一个打开的 DataReader
  • 模拟对象 - 将所有方法声明为虚拟方法还是使用接口?

    与 Java 不同 net 中的方法默认不是虚拟的 为了使用大多数模拟对象框架 您要么必须将要在模拟上使用的方法标记为 真实 对象上的虚拟方法 要么必须有一个可以模拟被测试类将使用的接口接受代替执行 将每个方法标记为虚拟似乎是一种不好的形式
  • WPF画布性能-children.add调用多次

    我在长画布上绘制了很多线条 想想条形图 并对其性能进行了相当好的调整 使用低级几何类并冻结它们等 这极大地提高了性能 但仍然需要几秒钟将几千个项目加载到画布中 我对应用程序进行了性能分析 看起来每次调用都花费了很大一部分时间canvas c
  • 运算符“">”不能应用于类型“ulong”和“int”

    我很好奇为什么 C 编译器只为第二个 if 语句提供错误消息 enum Permissions ulong ViewListItems 1L public void Method int mask 138612833 int compare
  • MS Source Server - 使用 srctool 查看时源流显然不存在

    我一直在尝试安装 MS 调试工具中的 MS Source Server 内容 目前 我正在通过 Subversion 索引命令运行我的代码 pdbs 该命令现在按预期运行 它为给定的 pdb 文件创建流并将其写入 pdb 文件 但是 当我在
  • 确保应用程序独立于用户的屏幕分辨率

    有没有简单的方法可以在任何不同的 PC 上运行在 Visual Studio 2005 上用 C 创建的应用程序 无论其屏幕分辨率如何 屏幕分辨率 NET 2 0 中的 Windows 窗体具有一些处理不同 DPI 的机制 并且具有比 NE
  • .net 中的 deflate、gzip 和 zlib 的一个库

    首先 我们来定义一些容易混淆的术语 deflate compression algorithm zlib header deflate trailer gzip header deflate trailer 我正在寻找一个基本上可以让我执行
  • CLR 2.0 与 4.0 性能比较?

    如果在 CLR 4 0 下运行 为 CLR 2 0 编译的 NET 程序会运行得更快吗 应用程序配置
  • 尝试使用 VS 2012 打开我的 asp.net 4.5 MVC Web 应用程序时出错。Asp.net 尚未在服务器上注册

    我有一个Windows Server 2012 R2 Visual Studio 专业版 2012 现在我用来开发 ASP NET 4 5 MVC 4 Web 应用程序 没有任何问题 但现在当我尝试打开该项目时 我会收到此错误 如果我单击
  • DataTable.GetChanges() 不断返回 NULL

    我正在尝试获取存在于的所有行allData但不在removeData public static DataTable RemoveDuplicateRows DataTable allData DataTable removeData re
  • 如何在richtextbox中使用多颜色[重复]

    这个问题在这里已经有答案了 我使用 C windows 窗体 并且有 richtextbox 我想将一些文本设置为红色 一些设置为绿色 一些设置为黑色 怎么办呢 附图片 System Windows Forms RichTextBox有一个

随机推荐

  • Tableview的Plist搜索

    I have Plist它已填充在带有扩展部分的表格视图上 现在我想搜索表格 下面的图像中 您可以看到当我搜索任何内容时发生的情况 只是因为我正在搜索它 但需要对 cellforrowatindexpath 进行一些更改以获取搜索结果 请检
  • 在Java中按键排序HashMap的最佳方法?

    这是我第一次必须订购HashMap在爪哇 我需要按键执行此操作 但在我的情况下 键是一个对象 因此我需要按特定字段进行排序 尝试自己解决这个问题 我考虑继续编写这个简单的代码 private HashMap
  • 以 Map 作为主体的 Dart HTTP POST

    飞镖http包 s post方法只接受一个String a List
  • 同步期间出错:管道损坏 - 更新 Android Studio 3.2、3.3 后

    将 Android Studio 更新到 3 2 并解决同步 gradle 问题后Gradle 同步失败 将 Android Studio 更新到 3 2 后 我无法安装apk 事件日志 Error during Sync Broken p
  • 如何检索 WiFi Direct MAC 地址?

    我正在尝试检索 Android 设备的 MAC 地址 如果 WiFi 已打开 这通常可以通过 WiFiManager API 实现 如果 WiFi 关闭且 WiFi Direct 打开 有什么方法可以获取 MAC 地址吗 我的手机上无法同时
  • 如何将多个Excel文件合并为一个Excel文件

    所以我试图制作一个 Excel 表格聚合器 在我的工作中 有人向我们发送一堆单独的 Excel 文件 这些文件都是相关的 每个文件只使用了一张纸 我在某种程度上遵循上一篇文章的想法 但这样做后 我复制的一些 Excel 工作表变成了空白 只
  • 我可以创建宽度为百分比高度但像素精确的行高的 HTML 表格吗?

    我需要在网页上创建一个有两行的表 该表格需要填充整个页面 因此我在 CSS 样式表中将表格的高度和宽度设置为 100 并将 HTML 和正文的高度也设置为 100 但是 我需要将表格顶行的高度精确为 100 像素 并扩展第二行以适合表格的其
  • 在模板化嵌套和继承类中未检测到变量

    我有一个像这样的嵌套和继承的结构 template
  • 仅使用给定符号创建固定长度的唯一 ID?

    我试图了解如何在 python 中创建一组固定长度 例如长度 12 的唯一 ID 它使用所有字母数字字符的特定子集 这里的用例是这些 ID 需要被人们读取并在打印文档中引用 因此我试图避免使用字符 L I O 和数字 0 1 我当然需要能够
  • AWS Route 53 - 到应用程序负载均衡器不同端​​口的域名路由

    我们正在AWS中实施微服务架构 我们有几个 EC2 实例 它们将微服务部署在不同的端口上 我们还有一个面向互联网的应用程序负载均衡器 它根据端口路由到不同的服务 eg xxxx xx xx elb amazonaws com 8080 go
  • 使用 Iron-Router 模板内的上下文

    我无法理解exactlyMeteor 使用 Iron Router 调用的模板中的上下文可用作我的上下文 以及这些内容如何继承 以下是我能想到的 我可以在双花括号内引用的内容 的所有潜在来源 内置助手 Handlebars register
  • https 与使用 Cloudfront 签名的 url

    我知道这是一个苹果和橘子的问题 但我想了解使用 https 和 AWS Cloudfront 签名 URL 的优缺点 人们可以评论并添加到这个列表中吗 HTTPS PROS 安全性 https 比 http 更安全 不过 我不确定这意味着什
  • 使用 SCons 管理 Python 3 代码

    在工作中 我的任务是将 Python 2 7 代码的大型库转换为 Python 3 x 该库包含许多使用 boost python for C 制作的脚本和扩展 所有这些都是用 SCons 构建的 它不能与 Python 3 x 解释器一起
  • 如何运行“dotnet dev-certs https --trust”?

    我是 ASP NET 新手 环境 乌班图18 04 视觉工作室代码 NET SDK 2 2 105 我在运行某些命令时遇到麻烦 我正在阅读教程 并运行这个命令 dotnet dev certs https trust 我预计https 本地
  • 当某些项目丢失时,根据单独数组的顺序对一个数组进行排序?

    我有一个存储首选顺序的数组 以及一个需要排序的更大数组 const months March Jan Feb Dec const prefOrder Feb March months sort a b gt prefOrder indexO
  • 无法从 Chrome 64 中的本地 css 文件访问 cssRules

    这是问题的一个简单示例 myStyle cssbody
  • iOS 7 中的新搜索栏

    我在使用 iOS 7 中的新 uisearchbar 时遇到一些问题 在我的应用程序中 tableHeaderView 中有带有搜索栏的表格视图 它是手工制作的 以编程方式添加 故事板中的 tableviewcontroller 在方法 v
  • 如何将多边形延伸到一定距离?

    如何将多边形延伸到一定距离 我在多点周围创建一个凸包 但我需要将范围扩大到几公里 至少在理论上是这样 http img radiokot ru files 21274 1oykzc5pez png 假设你能够得到一个凸包 也许你正在使用Co
  • 将 html/css/js 添加到 mysql 最安全的方法是什么?

    我目前正在使用以下 PHP 类将 html css 和 javascript 代码存储到我的 mysql 数据库中 function filter data data trim htmlentities strip tags data if
  • 验证 .NET 中的 XMLDSIG 链?

    我正在使用 XMLDSIG签署配置文件 我希望我的 CA 能够颁发可用于签署 XML 的密钥 然后我想验证 XML 是否是使用我的 CA 颁发的密钥进行签名的 如何从签名证书中获取签名证书SignedXml目的 如何沿着证书链回到特定的 C