由于对我施加的规范,我编写了自己的 C# 代码来签署 XML,并验证签署的 XML。很像 SignedXml 类,但这样我更灵活,例如是否使用 XML 命名空间前缀(似乎 SignedXml 不喜欢签名 XML 中的命名空间前缀,但我的 XML 规范说我必须拥有它们),并且在签名算法(规范现在说 sha256)。
一切似乎都有效,但困扰我的一个“不完美”是 - 例如 - 在验证 xml 时,我需要使用特定类别的对象来转换或验证数据,而我所要做的只是指定的算法 URI在 XML 中。一个例子是规范化:如果 XML 说"http://www.w3.org/2001/10/xml-exc-c14n#"
我知道我可以使用XmlDsigExcC14NTransform
该类,但我的问题是:有没有办法从这样的 URI(或任何 URI)到特定的对象类?
我现在使用我已知的 URI 列表和它们引用的对象类(我认为)(或将其与已知对象类列表的算法属性进行比较,例如XmlDsigExcC14NTransform.Algorithm
),这并不是我真正喜欢的。