summaryrefslogtreecommitdiffstatshomepage
path: root/src/lib/util/aes256cbc.h
blob: 74d0822f3abedd22e18e085da09f9a1c00f90c8c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// license:BSD-3-Clause
// copyright-holders:
/***************************************************************************

    aes256cbc.h

    AES256CBC helpers.

***************************************************************************/
#ifndef MAME_LIB_UTIL_AES256CBC_H
#define MAME_LIB_UTIL_AES256CBC_H

namespace aes256cbc {

#define AES_BLOCK_SIZE 16

typedef struct {
	unsigned int roundkey[60];
	unsigned int iv[4];
} AES_CTX;

void AES_DecryptInit(AES_CTX *ctx, const unsigned char *key, const unsigned char *iv);
void AES_Decrypt(AES_CTX* ctx, const unsigned char in_data[AES_BLOCK_SIZE], unsigned char out_data[AES_BLOCK_SIZE]);
void AES_CTX_Free(AES_CTX *ctx);

} // namespace aes256cbc

#endif // MAME_LIB_UTIL_AES256CBC_H