public Dictionary <string, byte[]> Decrypt(Dictionary <string, byte[]> data, RSAParameters publicKeySender) { Dictionary <string, byte[]> output = new Dictionary <string, byte[]>(); try { output.Add("key", RsaHelper.Decryption(data["key"], RsaHelper.PrivateKey, false)); //file 2: decrypteren met eigen prive -> geeft tripledes sleutel output.Add("text", TripleDESHelper.Decrypt(data["text"], output["key"])); //file 1: decrypteren met de zo juist verkregen tripledes sleutel byte[] hashComparison = new byte[] { Convert.ToByte(RsaHelper.VerifyData(md5helper.GenerateHash(output["text"]), data["hash"], publicKeySender)) }; //decrypteer meegestuurde hash met public key van zender en vergelijk output.Add("hash", hashComparison); return(output); } catch (NullReferenceException ex) { throw new NullReferenceException(ex.Message); } }