genkey.h

来自「aes的原代码」· C头文件 代码 · 共 41 行

H
41
字号
#pragma once
#ifndef INI_KEY_LEN
#define INI_KEY_LEN 1500
#endif
#ifndef GEN_KEY_LEN
#define GEN_KEY_LEN 128
#endif
#ifndef PN
#define PN 127
#endif
#ifndef FIN_KEY_LEN
#define FIN_KEY_LEN 16
#endif

//128位自制密钥散列器
class GenKey
{
public:
	GenKey(unsigned char *pcstr, unsigned char *username, unsigned char *psw, int len1, int len2, int len3);
	GenKey(unsigned char *pcstr, unsigned char *username, int len1, int len2);
	unsigned char *getKey(unsigned char*);
	~GenKey(void);
private:
	//字节二进制展开
	void unfold(unsigned char *source, int len);
	//填充
	int fillTest();
	//a的b次方模
	int modPow(int a,int b,int c);
	//筛选
	void selByte();
	//压缩
	void compressKey();
	//存放展开后的二进制序列
	short seed[INI_KEY_LEN];
	//存放筛选后的128位二进制序列
	short stmp[GEN_KEY_LEN];
	unsigned char *key;
	int count;
};

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?