12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- #ifndef UDP2RAW_ENCRYPTION_H_
- #define UDP2RAW_ENCRYPTION_H_
- //#include "aes.h"
- //#include "md5.h"
- #include "common.h"
- //using namespace std;
- //extern char key[16];
- const int aes_key_optimize=1; //if enabled,once you used a key for aes,you cant change it anymore
- extern int aes128cfb_old;
- int my_init_keys(const char *,int);
- int my_encrypt(const char *data,char *output,int &len);
- int my_decrypt(const char *data,char *output,int &len);
- unsigned short csum(const unsigned short *ptr,int nbytes) ;
- enum auth_mode_t {auth_none=0,auth_md5,auth_crc32,auth_simple,auth_hmac_sha1,auth_end};
- enum cipher_mode_t {cipher_none=0,cipher_aes128cbc,cipher_xor,cipher_aes128cfb,cipher_end};
- extern auth_mode_t auth_mode;
- extern cipher_mode_t cipher_mode;
- extern unordered_map<int, const char *> auth_mode_tostring;
- extern unordered_map<int, const char *> cipher_mode_tostring;
- extern char gro_xor[256+100];
- int cipher_decrypt(const char *data,char *output,int &len,char * key);//internal interface ,exposed for test only
- int cipher_encrypt(const char *data,char *output,int &len,char * key);//internal interface ,exposed for test only
- void aes_ecb_encrypt(const char *data,char *output);
- void aes_ecb_decrypt(const char *data,char *output);
- void aes_ecb_encrypt1(char *data);
- void aes_ecb_decrypt1(char *data);
- #endif
|