public MessageModel GetServerMessage([FromBody] MessageModel _clientMessage) { if (_clientMessage.IsValid()) { try { using (SqlProvider sqlOp = new SqlProvider()) using (AESOperations aesOp = new AESOperations()) { KeyModel sessionParameters = sqlOp.GetSessionKeys(new Guid(_clientMessage.SessionId)); if (sessionParameters != null && !string.IsNullOrEmpty(sessionParameters.PrivateKey) && !string.IsNullOrEmpty(sessionParameters.EncKey) && !string.IsNullOrEmpty(sessionParameters.IVKey)) { string clientMessage = aesOp.Decrypt(_clientMessage.Message, Encoding.ASCII.GetBytes(sessionParameters.EncKey), Encoding.ASCII.GetBytes(sessionParameters.IVKey)); if (clientMessage.Equals("MESSAGE FROM CLIENT")) { return(new MessageModel() { Message = aesOp.Encrypt("LEGIT CLIENT", Encoding.ASCII.GetBytes(sessionParameters.EncKey), Encoding.ASCII.GetBytes(sessionParameters.IVKey)) }); } } } } catch { } } return(null); }
public Guid Invoke(MessageModel message) { if (!message.IsValid()) { return(Guid.Empty); } var dbMessage = AutoMapper.Mapper.Map <DataAccess.Models.Message>(message); messageRepository.Add(dbMessage); _unitOfWork.Save(); return(dbMessage.Id); }