key_produce.h

来自「对文件加密解密 附带文件传输功能,感觉还可以哦!」· C头文件 代码 · 共 36 行

H
36
字号
// KEY_PRODUCE.h: interface for the CKEY_PRODUCE class.
//
//////////////////////////////////////////////////////////////////////
//==本程序提供密钥产生的一些基本数学实现
#if !defined(AFX_KEY_PRODUCE_H__11AA2A94_D7F2_4237_95B2_53B62E156FEE__INCLUDED_)
#define AFX_KEY_PRODUCE_H__11AA2A94_D7F2_4237_95B2_53B62E156FEE__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include <math.h>
class CKEY_PRODUCE  
{
public:
	int JudgePrime(unsigned int prime);//==========判prime是否为素数
	//============================================算出p*q的欧拉值
	int Count_N_AoLa_Num(unsigned int p, unsigned int q, unsigned int * ao_la);
	//============================================求两个数的最大公因数
	unsigned int CountCommonData(unsigned int a, unsigned int b);
	//=============================================随机选择公钥e
	int RandSelect_e( unsigned int ao_la, unsigned int* e );
	//=============================================求b的e次方除d的余数
	unsigned int GetOutNum(unsigned int b,unsigned int e , unsigned int d);
	//=============================================求任意大于2的整数的欧拉值
	unsigned int CountAnyNumAola(unsigned int number);
	//=============================================产生RSA 公_私 密钥
	int Produce_RSA_Key(unsigned int p,unsigned int q, unsigned int* Ke, unsigned int* Kd, unsigned int* model);
	//===========================利用加的模等于模的加求e*d = 1 mod model 中的d
	int OverOneNum(unsigned int e,unsigned int model, unsigned int* d);
	CKEY_PRODUCE();
	virtual ~CKEY_PRODUCE();
	
};

#endif // !defined(AFX_KEY_PRODUCE_H__11AA2A94_D7F2_4237_95B2_53B62E156FEE__INCLUDED_)

⌨️ 快捷键说明

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