Я использую XmlDsigEnvelopedSignatureTransform для цифровой подписи файла XML с использованием секретного ключа RSA.XML DSIG: преобразование подписи в .NET
Однако, я действительно хочу, чтобы подписать xml с помощью «обволакивающей» подписи. У .NET есть встроенная поддержка для этого?
Кстати, вот мой код:
public static void SignXml(XmlDocument xmlDoc, RSA key)
{
// Check arguments.
if (xmlDoc == null)
throw new ArgumentException("xmlDoc");
if (key == null)
throw new ArgumentException("Key");
SignedXml xml = new SignedXml(xmlDoc);
xml.SigningKey = key;
Reference reference = new Reference();
reference.Uri = "";
XmlDsigEnvelopedSignatureTransform env = new XmlDsigEnvelopedSignatureTransform(true);
reference.AddTransform(env);
xml.AddReference(reference);
xml.ComputeSignature();
XmlElement element = xml.GetXml();
MessageBox.Show(element.OuterXml);
xmlDoc.DocumentElement.AppendChild(xmlDoc.ImportNode(element, true));
}
Как я могу это сделать? Я вставил свой код выше. Можете ли вы показать мне, как это сделать? – Ian
@Ian: Я добавил несколько примеров кода. –