Tag: xml dsig

使用PHP对XML文件进行数字签名

我需要使用私有RSA密钥签署一个XML文件,以便用我的C#应用​​程序进行validation。 当我用我的C#应用​​程序签署xml时,这是最终输出: VIRRzqwb20aCSXrRTX1Y5vW//IA= mS3JQ/KmyXCayLly4hHRXKM51jPy230B3h4ngjzOhq0xR/7BRDQP2wfp7ugVcL5kMWaV+pBHbJgdvvu8OrzyxCUQ+R7RYqWpEBYJHUARov0Pws7oFybFpmzRnwhg2gPaPEzcVpK4VL4G1iM07XgmoSKM8Id0fRQ1lD+4BEcAxNY= 登录C#: public static void SignXmlDocument(RSA key, XmlDocument doc) { var sxml = new SignedXml(doc); sxml.SigningKey = key; sxml.SignedInfo.CanonicalizationMethod = SignedXml.XmlDsigCanonicalizationUrl; var r = new Reference(“”); r.AddTransform(new XmlDsigEnvelopedSignatureTransform(false)); sxml.AddReference(r); sxml.ComputeSignature(); var sig = sxml.GetXml(); doc.DocumentElement.AppendChild(sig); } 我怎样才能在PHP中做同样的事情?