protected byte[] SignData(byte[] data, SignKeyPair kp) { if (kp.Version != SignVersion.A005) { throw new CryptographicException($"Only signature version {SignVersion.A005} is supported right now"); } return(kp.PrivateKey.SignData(data, HashAlgorithmName.SHA256, RSASignaturePadding.Pkcs1)); }
protected byte[] SignData(byte[] data, SignKeyPair kp) { switch (kp.Version) { case SignVersion.A005: return(kp.PrivateKey.SignData(data, HashAlgorithmName.SHA256, RSASignaturePadding.Pkcs1)); case SignVersion.A006: return(kp.PrivateKey.SignData(data, HashAlgorithmName.SHA256, RSASignaturePadding.Pss)); default: throw new CryptographicException("Signature version not supported"); } }
protected XElement SignData(ebics.UserSignatureDataSigBookType sd, byte[] data, SignKeyPair kp) { var sig = SignData(data, kp); var s = sd.Items.OfType <ebics.OrderSignatureDataType>().Last(); s.SignatureValue = sig; s.SignatureVersion = kp.Version.ToString(); var doc = SerializeToDocument(sd); return(doc.Elements().First()); }