我遇到的问题是,使用
加载keyinfo数据var encryptedKey = new EncryptedKey();
encryptedkey.LoadXml(rawData);
不再起作用了。由于额外的Mailformed element keyinfo
属性:
xsi:type
SecurityException
<ds:KeyInfo xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="KeyInfoType">
深入研究框架代码,我发现了一个可以禁用严格属性强制执行的注册表查询。
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\Security]
"SignedXmlSkipSignatureAttributeEnforcement"=dword:00000001
使用此键可以加载keyinfo。我没有找到任何信息,为什么这已被Windows更新更改。有没有想法如何在不设置注册表项的情况下解决此问题?当然,我可以删除属性,但必须有另一种解决方案。