【问题标题】:Sign XML with digital signature使用数字签名签署 XML
【发布时间】:2016-12-14 06:45:43
【问题描述】:

我正在使用一些网络服务,它需要通过 HTTP 发布请求发布经过数字签名的 XML。
他们只给了我一个文件 (key.dat),我应该将其应用于我的 XML。
我该怎么做?

【问题讨论】:

    标签: c# xml digital-signature signing


    【解决方案1】:

    你可以看一下here:

    private static XmlElement GetXmlDigitalSignature(XmlDocument x, AsymmetricAlgorithm key)
    {
        var signedXml = new SignedXml(x) { SigningKey = key };
        var reference = new Reference { Uri = "", TransformChain = new TransformChain(), };
    
        reference.AddTransform(new XmlDsigEnvelopedSignatureTransform());
    
        signedXml.AddReference(reference);
        signedXml.ComputeSignature();
    
        return signedXml.GetXml();
    }
    
    var signature = GetXmlDigitalSignature(xmlDocument, algorithm);
    xmlDocument.FirstChild.AppendChild(xmlDocument.ImportNode(signature, true));
    

    【讨论】:

    • 谢谢,但我真正需要的是将我的 key.dat 加密到 AssymmetricAlgorithm 密钥中。
    猜你喜欢
    • 2020-10-19
    • 2018-02-24
    • 1970-01-01
    • 2014-11-02
    • 2021-11-02
    • 2021-02-28
    • 2022-07-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多