view src/win32/7zip/7z/CPP/7zip/Crypto/MyAes.h @ 1:f9f4f1b99eed

importing src directory
author Robert McIntyre <rlm@mit.edu>
date Sat, 03 Mar 2012 10:31:27 -0600
parents
children
line wrap: on
line source
1 // Crypto/MyAes.h
3 #ifndef __CRYPTO_MY_AES_H
4 #define __CRYPTO_MY_AES_H
6 extern "C"
7 {
8 #include "../../../C/Aes.h"
9 }
11 #include "../../Common/MyCom.h"
12 #include "../../Common/Types.h"
14 #include "../ICoder.h"
16 namespace NCrypto {
18 class CAesCbcEncoder:
19 public ICompressFilter,
20 public ICryptoProperties,
21 public CMyUnknownImp
22 {
23 CAesCbc Aes;
24 public:
25 MY_UNKNOWN_IMP1(ICryptoProperties)
26 STDMETHOD(Init)();
27 STDMETHOD_(UInt32, Filter)(Byte *data, UInt32 size);
28 STDMETHOD(SetKey)(const Byte *data, UInt32 size);
29 STDMETHOD(SetInitVector)(const Byte *data, UInt32 size);
30 };
32 class CAesCbcDecoder:
33 public ICompressFilter,
34 public ICryptoProperties,
35 public CMyUnknownImp
36 {
37 CAesCbc Aes;
38 public:
39 MY_UNKNOWN_IMP1(ICryptoProperties)
40 STDMETHOD(Init)();
41 STDMETHOD_(UInt32, Filter)(Byte *data, UInt32 size);
42 STDMETHOD(SetKey)(const Byte *data, UInt32 size);
43 STDMETHOD(SetInitVector)(const Byte *data, UInt32 size);
44 };
46 }
48 #endif