25 lines
541 B
C++
25 lines
541 B
C++
// Copyright 2017 Dolphin Emulator Project
|
|
// Licensed under GPLv2+
|
|
// Refer to the license.txt file included.
|
|
|
|
#include <mbedtls/aes.h>
|
|
|
|
#include "Common/Crypto/AES.h"
|
|
|
|
namespace Common
|
|
{
|
|
namespace AES
|
|
{
|
|
std::vector<u8> Decrypt(const u8* key, u8* iv, const u8* src, size_t size)
|
|
{
|
|
mbedtls_aes_context aes_ctx;
|
|
std::vector<u8> buffer(size);
|
|
|
|
mbedtls_aes_setkey_dec(&aes_ctx, key, 128);
|
|
mbedtls_aes_crypt_cbc(&aes_ctx, MBEDTLS_AES_DECRYPT, size, iv, src, buffer.data());
|
|
|
|
return buffer;
|
|
}
|
|
} // namespace AES
|
|
} // namespace Common
|