public static byte[] Decrypt(byte[] encryptedBytes, byte[] cryptKey, byte[] iv) { using (var aes = CreateSymmetricAlgorithm()) using (var decryptor = aes.CreateDecryptor(cryptKey, iv)) using (var ms = MemoryStreamFactory.GetStream(encryptedBytes)) using (var cryptStream = new CryptoStream(ms, decryptor, CryptoStreamMode.Read)) { return cryptStream.ReadFully(); } } }
public WebServiceException DecryptedException(WebServiceException ex, SymmetricAlgorithm aes) { var encResponse = ex.ResponseDto as EncryptedMessageResponse; if (encResponse != null) { var responseJson = AesUtils.Decrypt(encResponse.EncryptedBody, aes.Key, aes.IV); var errorResponse = JsonServiceClient.FromJson <ErrorResponse>(responseJson); ex.ResponseDto = errorResponse; } return(ex); }