public override byte[] Decrypt(ITransformedData PublicKeyTransformedData) { if (!(PublicKeyTransformedData is PublicKeyTransformedRSAData RSAData)) { return(null); } var csp = new RSACryptoServiceProvider(ModN.Length * 8); RSAParameters param = GetFullPrivateParameters(); csp.ImportParameters(param); return(csp.Decrypt(RSAData.M_E_ModN, false)); }
public override void Parse(TreeBuilder tree) { Version = tree.ReadByte("Version"); KeyId = tree.ReadBytes("Key Id", 8); PKAlgoCode = tree.ReadByte("PK Algorithm", PKAlgorithmTypes.Get); var PublicKeyAlgorithm = PKAlgorithm.CreatePKAlgorithm(PKAlgoCode); PublicKeyTransformedData = null; if (PublicKeyAlgorithm == null) { tree.ReadBytes("Unknowon Encrypted Session Key"); } else { PublicKeyTransformedData = PublicKeyAlgorithm.LoadPublicKeyTransformedData(tree); } }
public override byte[] Decrypt(ITransformedData PublicKeyTransformedData) { throw new NotImplementedException(); }
public abstract byte[] Decrypt(ITransformedData PublicKeyTransformedData);