예제 #1
0
        public MessageModel DecryptMessage(MessageModel message)
        {
            MessageModel newMessage;

            if (message is ReplyModel)
            {
                newMessage = message.Clone() as ReplyModel;
            }
            else
            {
                newMessage = message.Clone() as MessageModel;
            }
            newMessage.IsBodyEncrypted = false;
            newMessage.DESIV           = asymHandler.RSADecryptToBase64(message.DESIV);
            newMessage.DESKey          = asymHandler.RSADecryptToBase64(message.DESKey);
            symHandler      = new SymmetricEncryptionHandler(newMessage.DESIV, newMessage.DESKey);
            newMessage.Body = symHandler.DESDecrypt(message.Body);
            return(newMessage);
        }
예제 #2
0
 public MessageEncryptionHandler(AsymmetricEncryptionHandler asym)
 {
     asymHandler = asym;
     symHandler  = new SymmetricEncryptionHandler();
 }