private byte[] Sign(byte[] data) { byte[] buffer; try { using (MemoryStream stream = new MemoryStream(data)) { XmlDocument document = new XmlDocument(); document.Load(stream); Encoding encoding = GetEncoding(document); buffer = new XmlSigned().SignXml(data, settings.CspProfile, "", encoding); } } catch (Exception exception2) { Logger.Add(exception2); throw new Exception(exception2.Message, exception2); } return(buffer); }
private SignatureValidateStatus Verify(byte[] data, byte[] signature) { SignatureValidateStatus noValidate; try { XmlSigned signed = new XmlSigned(); using (MemoryStream stream = new MemoryStream(data)) { XmlDocument document = new XmlDocument(); document.Load(stream); stream.Position = 0L; noValidate = signed.VerifyXml(stream, signature, GetEncoding(document)) ? SignatureValidateStatus.Valid : SignatureValidateStatus.EdsIncorrect; } } catch (Exception exception2) { throw new Exception(exception2.Message, exception2); } return(noValidate); }