Esempio n. 1
0
        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));
        }
Esempio n. 2
0
        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");
            }
        }
Esempio n. 3
0
        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());
        }