mirror of
https://github.com/libAthena/athena.git
synced 2025-12-09 05:27:50 +00:00
significant virtual-method refactor to streaming interface
This commit is contained in:
23
include/aes.hpp
Normal file
23
include/aes.hpp
Normal file
@@ -0,0 +1,23 @@
|
||||
#ifndef __AES_HPP__
|
||||
#define __AES_HPP__
|
||||
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <memory>
|
||||
|
||||
namespace Athena
|
||||
{
|
||||
|
||||
class IAES
|
||||
{
|
||||
public:
|
||||
virtual void encrypt(const uint8_t* iv, const uint8_t* inbuf, uint8_t* outbuf, uint64_t len)=0;
|
||||
virtual void decrypt(const uint8_t* iv, const uint8_t* inbuf, uint8_t* outbuf, uint64_t len)=0;
|
||||
virtual void setKey(const uint8_t* key)=0;
|
||||
};
|
||||
|
||||
std::unique_ptr<IAES> NewAES();
|
||||
|
||||
}
|
||||
|
||||
#endif //__AES_HPP__
|
||||
Reference in New Issue
Block a user