亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? rsa.cpp

?? 東北大學編寫的DES、RSA混合密碼系統
?? CPP
字號:
// Rsa.cpp: implementation of the CRsa class.
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "MixedCS.h"
#include "Window.h"
#include "Rsa.h"
#include "GfL.h"

#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif

///////////////////////////////////////////////////////////////////////////////
// Construction
///////////////////////////////////////////////////////////////////////////////
CRsa::CRsa()
{
    Zero = BI.New(0);
	key = n = Zero;
}

///////////////////////////////////////////////////////////////////////////////
// CRsa Functions
///////////////////////////////////////////////////////////////////////////////
#define CHECK(x)			{if( !(x) ) return false;}
#define CHECK_MSG(x,msg)	{if( !(x) ){CWindow::ShowMessage(msg);return false;}}

/******************************************************************************/
//	名稱:Encrypt
//	功能:加密
//  參數:len為加密內容的長度;KeyStr,ModStr為0結尾的密鑰串,用于設置RSA密鑰和模n
//	返回:加密(解密)后的密文(明文)長度
//  備注:
//	更新:2003/1/25
//	作者:0200950原常青
/******************************************************************************/
int  CRsa::Encrypt(char *Out,char *In,UINT len,char *KeyStr,char *ModStr)
{
	static BigInt  a,c;

	CHECK( Out && In && len && SetKey(KeyStr,ModStr) )
    // 由輸入構造一個大數a
	CHECK_MSG( BI.BuildBIFromByte(a,In,len) && a.len <= n.len, "錯誤:RSA加密(解密)的內容過長!" )
	// 加密(解密)
	CHECK( BI.PowMod(c,a,key,n) )
    CGfL::HalfByteToByte(Out,c.bit,c.len);

	return	(c.len+1)>>1;
}
/******************************************************************************/
//	名稱:SetKey
//	功能:由輸入密鑰串設置RSA密鑰和模n
//  參數:KeyStr,ModStr為0結尾的密鑰串,對應密鑰和模n
//	返回:設置成功返回true,否則返回false
//  備注:
//	更新:2003/1/25
//	作者:0200950原常青
/******************************************************************************/
bool CRsa::SetKey(char *KeyStr,char *ModStr)
{
	int		klen,nlen;

	key = n = Zero;
	CHECK_MSG( KeyStr && ModStr && KeyStr && (klen=strlen(KeyStr)) && (nlen=strlen(ModStr)) &&
		       klen<=nlen && BI.BuildBIFromStr(key,KeyStr,klen) && BI.BuildBIFromStr(n,ModStr,nlen), 
			   "設置RSA密鑰出錯:空密鑰,或密鑰太長!" )

	return true;
}
/******************************************************************************/
//	名稱:GetKey
//	功能:獲取RSA密鑰對
//  參數:
//	返回:獲取成功返回true,否則返回false
//  備注:如果p,q非空,請保證其為素數。如果需要產生素數p,q,請在調用前將p,q置0
//	更新:2003/1/25
//	作者:0200950原常青
/******************************************************************************/
bool CRsa::GetKey(BigInt &p,BigInt &q,BigInt &e,BigInt &d,BigInt &n,
		          UINT plen,UINT qlen,UINT elen)

{
	BigInt  p_1,q_1,n_1,tmp;

    // 如果p,q=0,則產生素數
	if( !p.len )
		CHECK( BI.GetPrime(p,plen) )
	if( !q.len )
		CHECK( BI.GetPrime(q,qlen) )
    
	CHECK_MSG( p.len>4 && p.len<=BI_MAXLEN/4 && q.len>4 && q.len<=BI_MAXLEN/4 &&
	           elen>=max(p.len,q.len) && elen<=p.len+q.len, "長度不在合法范圍之內! " )
	CHECK_MSG( BI.Cmp(p,q), "錯誤:素數p,q相同!  " )
    // 計算n
	CHECK( BI.Mul(n,p,q) )
	// 防止密鑰長度超過N,以免造成死循環
	if( elen>n.len )
		elen = n.len;
    p_1 = p; p_1.bit[0] -= 1;
    q_1 = q; q_1.bit[0] -= 1;
	CHECK( BI.Mul(n_1,p_1,q_1) )

	while( true )
	{
		BI.RandVal(e,elen);
		if( BI.Cmp(e,n)<0 && BI.Inverse(e,d,n_1,tmp) )
			return true;
	}
}

///////////////////////////////////////////////////////////////////////////////
// End of Files
///////////////////////////////////////////////////////////////////////////////

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美第一区第二区| 免费在线观看一区二区三区| 首页国产丝袜综合| 成人激情免费视频| 日韩一卡二卡三卡国产欧美| 国产精品日产欧美久久久久| 午夜婷婷国产麻豆精品| 99视频一区二区三区| 欧美成人精品3d动漫h| 亚洲午夜精品在线| 91香蕉视频mp4| 久久久精品天堂| 久久99精品国产.久久久久| 欧美性xxxxx极品少妇| 国产精品乱码一区二区三区软件 | 日韩福利视频导航| 99久久免费视频.com| 欧美精品一区二区三区很污很色的 | 国产精品久久久久久久久久免费看 | 成人动漫一区二区在线| 欧美变态tickle挠乳网站| 亚洲电影激情视频网站| 91在线观看地址| 中文一区二区在线观看| 狠狠色丁香久久婷婷综合丁香| 欧美日韩国产区一| 视频一区二区欧美| 337p亚洲精品色噜噜噜| 午夜日韩在线电影| 欧美日韩在线不卡| 午夜国产精品一区| 欧美一区二区三区在| 首页国产丝袜综合| 日韩精品中午字幕| 狠狠色丁香婷婷综合| 精品国产一二三区| 国产一区不卡视频| 国产色产综合色产在线视频| 国产成人午夜视频| 丝袜美腿成人在线| 91精品视频网| 亚洲综合久久av| 欧美在线观看视频一区二区三区| 一区二区三区鲁丝不卡| 日本高清不卡aⅴ免费网站| 亚洲欧美一区二区久久| 欧美日韩精品高清| 麻豆免费精品视频| 中文字幕不卡三区| 色婷婷亚洲婷婷| 五月综合激情日本mⅴ| 欧美不卡在线视频| 国产精品亚洲成人| 亚洲欧美欧美一区二区三区| 欧美午夜精品一区二区蜜桃| 亚洲成av人片www| 欧美精品一区二区三区四区 | 精品亚洲国产成人av制服丝袜 | 欧美剧在线免费观看网站| 视频一区二区三区入口| 精品国产一区二区三区久久影院| 国产精品资源在线看| 亚洲男人天堂av| 欧美少妇bbb| 国产精一品亚洲二区在线视频| 国产精品乱码一区二区三区软件| 91成人在线精品| 激情综合亚洲精品| 亚洲精品自拍动漫在线| 91麻豆精品国产91久久久资源速度| 看电视剧不卡顿的网站| 综合久久一区二区三区| 777久久久精品| 高清不卡一区二区在线| 亚洲成人av在线电影| 国产情人综合久久777777| 精品视频在线视频| 成人免费观看av| 日本中文一区二区三区| 国产精品视频线看| 欧美一级淫片007| 91国偷自产一区二区使用方法| 亚洲成人在线网站| 国产精品久久久久影院色老大| 欧美精品高清视频| 99视频有精品| 国产成人在线观看免费网站| 亚洲一级电影视频| 亚洲视频你懂的| 国产亚洲一区二区三区| 91精品欧美福利在线观看| 91视频国产资源| 国产精品1区2区3区| 五月天精品一区二区三区| 国产偷国产偷亚洲高清人白洁| 欧美精品v日韩精品v韩国精品v| 床上的激情91.| 国产剧情在线观看一区二区| 偷拍亚洲欧洲综合| 亚洲一区在线观看免费| 日韩美女精品在线| 中文字幕精品一区二区精品绿巨人 | 欧美综合天天夜夜久久| 暴力调教一区二区三区| 极品美女销魂一区二区三区| 免费人成精品欧美精品| 婷婷国产v国产偷v亚洲高清| 一级特黄大欧美久久久| 成人欧美一区二区三区小说| 中文字幕免费不卡在线| 国产精品视频一二| 日本一区二区动态图| 国产亚洲欧美色| 久久精品网站免费观看| 国产婷婷一区二区| 国产精品午夜免费| 国产精品区一区二区三| 中文字幕免费不卡在线| 国产精品久久久久久久久久久免费看| 日本一区二区视频在线观看| 国产三级久久久| 国产精品国产三级国产| 亚洲人吸女人奶水| 亚洲欧美偷拍另类a∨色屁股| 亚洲欧洲三级电影| 亚洲欧美日韩久久精品| 亚洲激情图片小说视频| 亚洲一区二区三区中文字幕在线| 一区二区三区电影在线播| 中文字幕一区二区三区精华液| 欧美国产成人在线| 亚洲视频每日更新| 亚洲图片一区二区| 秋霞电影一区二区| 国产精品66部| 91电影在线观看| 日韩精品中文字幕一区二区三区| 亚洲精品一区二区精华| 国产精品福利av| 亚洲成a人片在线不卡一二三区| 免费人成在线不卡| 成人手机在线视频| 欧美三级乱人伦电影| 日韩三区在线观看| 中文字幕乱码亚洲精品一区| 一区二区激情视频| 经典三级视频一区| 一本大道久久a久久综合| 欧美一区二区三区免费在线看 | 国产在线精品一区二区不卡了| 国产精品一区二区黑丝| 色综合色综合色综合| 91精品综合久久久久久| 国产午夜久久久久| 亚洲成人先锋电影| 国产成人99久久亚洲综合精品| 91看片淫黄大片一级| 日韩亚洲国产中文字幕欧美| 中文字幕制服丝袜成人av| 三级在线观看一区二区| 成人综合婷婷国产精品久久蜜臀| 欧美色综合久久| 久久精品亚洲国产奇米99| 亚洲国产一区二区三区| 色婷婷精品久久二区二区蜜臂av| 欧美一区二区三区人| 亚洲三级小视频| 狠狠狠色丁香婷婷综合激情| 91麻豆国产福利精品| 日韩欧美国产综合| 亚洲永久精品国产| 成人av动漫网站| www一区二区| 日韩不卡一区二区三区| 一本大道久久a久久综合婷婷| 久久久国际精品| 欧美a级理论片| 欧美在线综合视频| 中文字幕人成不卡一区| 国产精品一区2区| 欧美一区二区三区喷汁尤物| 一区二区三区国产豹纹内裤在线| 国产成人av一区二区三区在线 | 欧美大尺度电影在线| 一区二区三区四区不卡视频| 成人一区二区三区| 精品乱人伦小说| 视频在线观看91| 欧美午夜电影网| 亚洲另类在线视频| 91美女精品福利| 亚洲免费av网站| 91久久久免费一区二区| 一区在线播放视频| 波多野结衣精品在线| 日本一区二区久久| 成人国产电影网| 综合婷婷亚洲小说| 91麻豆精东视频| 亚洲一二三区视频在线观看|