summaryrefslogtreecommitdiffstats
path: root/src/mbedTLS++/AesCfb128Decryptor.h
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/mbedTLS++/AesCfb128Decryptor.h19
1 files changed, 12 insertions, 7 deletions
diff --git a/src/mbedTLS++/AesCfb128Decryptor.h b/src/mbedTLS++/AesCfb128Decryptor.h
index 601699998..a2c9d6a05 100644
--- a/src/mbedTLS++/AesCfb128Decryptor.h
+++ b/src/mbedTLS++/AesCfb128Decryptor.h
@@ -9,7 +9,11 @@
#pragma once
+#ifdef _WIN32
+#include <wincrypt.h>
+#else
#include "mbedtls/aes.h"
+#endif
@@ -26,14 +30,20 @@ public:
/** Initializes the decryptor with the specified Key / IV */
void Init(const Byte a_Key[16], const Byte a_IV[16]);
- /** Decrypts a_Length bytes of the encrypted data; produces a_Length output bytes */
- void ProcessData(std::byte * a_DecryptedOut, const Byte * a_EncryptedIn, size_t a_Length);
+ /** Decrypts a_Length bytes of the encrypted data in-place; produces a_Length output bytes */
+ void ProcessData(std::byte * a_EncryptedIn, size_t a_Length);
/** Returns true if the object has been initialized with the Key / IV */
bool IsValid(void) const { return m_IsValid; }
protected:
+
+#ifdef _WIN32
+ HCRYPTPROV m_Aes;
+ HCRYPTKEY m_Key;
+#else
mbedtls_aes_context m_Aes;
+#endif
/** The InitialVector, used by the CFB mode decryption */
Byte m_IV[16];
@@ -41,8 +51,3 @@ protected:
/** Indicates whether the object has been initialized with the Key / IV */
bool m_IsValid;
} ;
-
-
-
-
-