📄 key_produce.h
字号:
// 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 + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -