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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? si_ver.cpp

?? 基于ElGamal的數(shù)字簽名系統(tǒng)可以對報文在不同的密鑰長度上進(jìn)行簽名與驗證.
?? CPP
字號:
// si_ver.cpp : implementation file
//

#include "stdafx.h"
#include "forward_secure.h"
#include "si_ver.h"
#include "stdlib.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// si_ver dialog


si_ver::si_ver(CWnd* pParent /*=NULL*/)
	: CDialog(si_ver::IDD, pParent)
{
	//{{AFX_DATA_INIT(si_ver)
	m_Vm = _T("");
	m_Va = _T("");
	m_Vb = _T("");
	m_Vi = 0;
	m_Vri = _T("");
	m_Vet = 0.0;
	m_Vthis = 0.0;
	m_Vsint = 0.0;
	
	//}}AFX_DATA_INIT
}


void si_ver::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(si_ver)
	DDX_Control(pDX, IDC_BUTTONsin, m_Csin);
	DDX_Control(pDX, IDC_BUTTONres, m_Cres);
	DDX_Control(pDX, IDC_COMBOi, m_CCi);
	DDX_Control(pDX, IDC_BUTTONthis, m_Bthis);
	DDX_Control(pDX, IDC_BUTTONet, m_Bet);
	DDX_Text(pDX, IDC_EDITM, m_Vm);
	DDX_Text(pDX, IDC_EDITa, m_Va);
	DDX_Text(pDX, IDC_EDITb, m_Vb);
	DDX_Text(pDX, IDC_EDITi, m_Vi);
	DDX_Text(pDX, IDC_EDITri, m_Vri);
	DDX_Text(pDX, IDC_EDITet, m_Vet);
	DDX_Text(pDX, IDC_EDITthis, m_Vthis);
	DDX_Text(pDX, IDC_EDITsin, m_Vsint);
	DDX_CBString(pDX, IDC_COMBOi, m_CVi);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(si_ver, CDialog)
	//{{AFX_MSG_MAP(si_ver)
	ON_BN_CLICKED(IDC_BUTTONres, OnBUTTONres)
	ON_BN_CLICKED(IDC_BUTTONet, OnBUTTONet)
	ON_BN_CLICKED(IDC_BUTTONthis, OnBUTTONthis)
	ON_BN_CLICKED(IDC_BUTTONkeysure, OnBUTTONkeysure)
	ON_BN_CLICKED(IDC_BUTTONsin, OnBUTTONsin)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// si_ver message handlers

BOOL si_ver::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	// TODO: Add extra initialization here
	m_Vm="合肥工業(yè)大學(xué)";
    UpdateData(true);
	m_Bet.EnableWindow(false);
	m_Bthis.EnableWindow(false);
    m_Csin.EnableWindow(false);
	m_Cres.EnableWindow(false);
	m_CCi.SetCurSel (0);
	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

void si_ver::OnBUTTONres() 
{
	// TODO: Add your control notification handler code here
	 LARGE_INTEGER litmp;
	LONGLONG QPart1,QPart2;
	double dfMinus,dfFreq,dfTim;
	QueryPerformanceFrequency(&litmp);
	//獲得計數(shù)器的時鐘頻率d
	dfFreq=(double)litmp.QuadPart;
	CBigInt d,deuc,temp,temp2;
	char buffer[9];
	CString stemp;
	
    M.m_ulValue[0]=0xbacfb7ca;
    M.m_ulValue[1]=0xb9a4d2b5;
	M.m_ulValue[2]=0xb4f3d1a7;
	M.m_nLength=3;
	QueryPerformanceCounter(&litmp);
		//獲得初始值
	QPart1 = litmp.QuadPart;
	d.GetPrime(t_length);
	a=g.RsaTrans(d,p);
	deuc=d.Euc(p.Sub(1));
	temp2=a.Mul(temps);
	temp2=temp2.Mod(p.Sub(1));
	temp=M.Add(p.Sub(1));
    temp=temp.Sub(temp2);
	temp=temp.Mod(p.Sub(1));
	temp=deuc.Mul(temp);
	b=temp.Mod(p.Sub(1));
    QueryPerformanceCounter(&litmp); 
	//獲得終止值 
	QPart2=litmp.QuadPart;
	dfMinus=(double)(QPart2-QPart1);
	dfTim=dfMinus/dfFreq;
	m_Vsint=dfTim;

    for(int i=a.m_nLength-1;i>=0;i--)
	{
       _ltoa( a.m_ulValue[i], buffer, 16 );
       stemp.Format("%8s",buffer);       
       m_Va+=stemp;
	}
   m_Va.Replace (' ','0');
   //
   for( i=b.m_nLength-1;i>=0;i--)
	{
       _ltoa( b.m_ulValue[i], buffer, 16 );
       stemp.Format("%8s",buffer);       
       m_Vb+=stemp;
	}
   m_Vb.Replace (' ','0');
   //
   for( i=tempR.m_nLength-1;i>=0;i--)
	{
       _ltoa(tempR.m_ulValue[i], buffer, 16 );
       stemp.Format("%8s",buffer);       
       m_Vri+=stemp;
	}
   m_Vri.Replace (' ','0');
   //
       
   //_ltoa( timemark, buffer, 10 );
   //stemp.Format("%s",buffer);       
    m_Vi=tempi;
	
   UpdateData(false);
   m_Bet.EnableWindow(true);
   m_Bthis.EnableWindow(true);
}

void si_ver::OnBUTTONet() 
{
	// TODO: Add your control notification handler code here
	//DWORD dwStart1, dwStop1,duration1; 
    LARGE_INTEGER litmp;
	LONGLONG QPart1,QPart2;
	double dfMinus,dfFreq,dfTim;
	QueryPerformanceFrequency(&litmp);
	//獲得計數(shù)器的時鐘頻率d
	dfFreq=(double)litmp.QuadPart;
	CBigInt left,right,epk,temp1,temp2;
	int succ1;
	epk=g.RsaTrans(temps,p);
	QueryPerformanceCounter(&litmp);
		//獲得初始值
	QPart1 = litmp.QuadPart;
	//dwStart1=GetTickCount(); 
	temp1=epk.RsaTrans(a,p);
	temp2=a.RsaTrans(b,p);
	left=temp1.Mul(temp2);
	left=left.Mod(p);
	right=g.RsaTrans(M,p);
	succ1=left.Cmp(right);
	QueryPerformanceCounter(&litmp); 
	//獲得終止值 
	QPart2=litmp.QuadPart;
	dfMinus=(double)(QPart2-QPart1);
	dfTim=dfMinus/dfFreq;
	//dwStop1=GetTickCount(); 
	//duration1=dwStop1-dwStart1;

	if(succ1==0) 
     m_Vet=dfTim*1000;  
     //m_Vet=duration1;
	UpdateData(false);

}

void si_ver::OnBUTTONthis() 
{
	// TODO: Add your control notification handler code here
	//DWORD dwStart2, dwStop2,duration2; 
	LARGE_INTEGER litmp;
	LONGLONG QPart1,QPart2;
	double dfMinus,dfFreq,dfTim;
	QueryPerformanceFrequency(&litmp);
	//獲得計數(shù)器的時鐘頻率d
	dfFreq=(double)litmp.QuadPart;
	//獲得初始值
	CBigInt left,right,temp1,temp2,temp;
	int succ2;
    //dwStart2=GetTickCount(); 
	QueryPerformanceCounter(&litmp);
		//獲得初始值
	QPart1 = litmp.QuadPart;
	right=g.RsaTrans(M,p);
	temp1.Mov(2);//=tempR.Mul(tempR);
	temp1=tempR.RsaTrans(temp1,p);
	temp.Mov(tempi*(tempi+1)/2);
	temp=g.RsaTrans(temp,p);
	/*temp.Mov(g);
	for(int i=1;i<tempi*(tempi+1)/2;i++)
	{	 
		temp=temp.Mul(temp);
	    temp=temp.Mod(p);
	}*/
	
	temp1=temp.Mul(temp1);
	temp1=temp1.Mod(p);
	temp1=temp1.Mul(PK);
	temp1=temp1.Mod(p);
	temp1=temp1.RsaTrans(a,p);
	//temp1=temp1.Mod(p);
	temp2=a.RsaTrans(b,p);
	left=temp1.Mul(temp2);
	left=left.Mod(p);
	right=right.Mod(p);
	succ2=left.Cmp(right);
	//dwStop2=GetTickCount(); 
	//duration2=dwStop2-dwStart2;
	QueryPerformanceCounter(&litmp); 
	//獲得終止值 
	QPart2=litmp.QuadPart;
	dfMinus=(double)(QPart2-QPart1);
	dfTim=dfMinus/dfFreq;
	if(succ2==0) 
     m_Vthis=dfTim*1000;
		//m_Vthis=duration2;
	UpdateData(false);

}

void si_ver::OnBUTTONkeysure() 
{
	// TODO: Add your control notification handler code here
	int numi;
	UpdateData(true);
	numi=atoi(m_CVi);
    CBigInt temp1,temp2;
    tempk.Mov(k);
    tempR.Mov(R);
    temps.Mov(s);
    tempi=timemark;
    for(int i=1;i<numi;i++)
	{
	  tempi++;
	  
	  do{
        temp1=g.RsaTrans(tempk,p);
		tempR=tempR.Mul(temp1);
		tempR=tempR.Mod(p);
		temp2=tempR.Mul(tempR);
        temp2=temp2.Mod(p);
		temps=tempk.Add(tempk);
        temps=temps.Add(tempi);
        temps=temps.Add(s);
		temps=temps.Mod(p.Sub(1));
		tempk=tempk.Mul(tempk);
		tempk=tempk.Mod(q);
	  }
	while((temps.m_nLength==1&&temps.m_ulValue[0]==0)
		||(temp1.m_nLength==1&&temp1.m_ulValue[0]==1)
		||(temp2.m_nLength==1&&temp2.m_ulValue[0]==1));
    
	}
    
	m_Va = _T("");
	m_Vb = _T("");
	m_Vi = 0;
	m_Vri = _T("");
	m_Vet = 0.0;
	m_Vthis = 0.0;
	m_Vsint = 0.0;
	m_Cres.EnableWindow(true);
    m_Csin.EnableWindow(true);
    UpdateData(false);

}

void si_ver::OnBUTTONsin() 
{
	// TODO: Add your control notification handler code here
	UpdateData(false);	
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一本到不卡免费一区二区| 亚洲乱码精品一二三四区日韩在线 | 国产91综合网| 欧美午夜精品一区二区三区| 午夜免费久久看| 精品久久久久久无| 成人国产精品免费| 日韩综合小视频| 亚洲精品免费在线观看| 日韩视频一区在线观看| 97久久超碰精品国产| 青青草国产精品97视觉盛宴| 亚洲成年人网站在线观看| 精品久久久久一区| 丁香六月综合激情| 亚洲欧洲av另类| 日韩美女视频在线| 91国产精品成人| 国产不卡一区视频| 日韩av不卡一区二区| 一区二区在线免费| 国产日韩欧美精品一区| 欧美三级电影一区| 久久国产精品露脸对白| 午夜精品福利久久久| 国产精品久久久久婷婷| 中文字幕av一区二区三区 | 久久国产精品免费| 欧美一级高清大全免费观看| 日本欧洲一区二区| 一级日本不卡的影视| 国产欧美一区二区精品仙草咪 | 国产精品亚洲一区二区三区在线| 亚洲成人福利片| 国产精品国产三级国产aⅴ原创| 中文字幕一区二区三区蜜月 | 亚洲大片一区二区三区| 亚洲欧美日韩久久| 天天操天天色综合| 亚洲视频一区在线观看| 国产无一区二区| 精品少妇一区二区三区在线播放 | 亚洲综合色噜噜狠狠| 日韩一区二区三| 欧洲另类一二三四区| 99国产精品国产精品久久| 国内精品第一页| 国产精品一二三区| 成人小视频免费观看| 国产一区二区不卡老阿姨| 亚洲成人手机在线| 视频一区二区欧美| 成人免费一区二区三区视频| 日韩毛片视频在线看| 日韩欧美卡一卡二| 成人免费不卡视频| 成年人网站91| jizz一区二区| 国产老妇另类xxxxx| 国产美女精品在线| 不卡的av电影| 亚洲欧美成aⅴ人在线观看| 久久女同性恋中文字幕| 777久久久精品| 正在播放亚洲一区| 777xxx欧美| 色婷婷av一区二区三区软件| 亚洲伦在线观看| 国产精品国产三级国产普通话蜜臀| 亚洲视频在线观看一区| 亚洲综合激情小说| 久久精品国产澳门| 99riav久久精品riav| 91麻豆精品国产91久久久资源速度| 精品少妇一区二区三区在线视频| 国产欧美一区在线| 亚洲第一二三四区| 国产激情91久久精品导航| 99精品视频在线免费观看| 欧美午夜精品一区二区三区| 精品日韩在线观看| 成人av免费网站| 日韩一区二区三区四区| 久久久亚洲午夜电影| 有码一区二区三区| 久久精品国产精品亚洲综合| 蜜臀国产一区二区三区在线播放| 成人免费精品视频| 成人免费视频一区| 精品福利av导航| 亚洲一区二区三区在线| 国产精品传媒视频| 日韩电影在线观看电影| 麻豆91精品91久久久的内涵| av中文字幕不卡| 欧美美女直播网站| 国产精品毛片a∨一区二区三区| 亚洲另类在线一区| 精品国产乱码91久久久久久网站| 国产精品女主播av| 久久女同精品一区二区| 在线观看免费成人| 国产一区二区中文字幕| 91美女片黄在线观看91美女| 欧美年轻男男videosbes| 中文字幕久久午夜不卡| 美女视频第一区二区三区免费观看网站| 国产综合成人久久大片91| 欧美日韩一二三| 亚洲日本乱码在线观看| 国产盗摄精品一区二区三区在线| 欧美电影免费提供在线观看| 日韩精品1区2区3区| 成人av综合在线| 日本一区二区高清| 不卡视频在线观看| 国产欧美综合色| 国产宾馆实践打屁股91| 国产一区二区三区日韩| 日韩一区二区高清| 一区二区三区在线视频播放| 一区二区日韩电影| 色综合久久综合网欧美综合网 | 亚洲品质自拍视频网站| 国产乱码字幕精品高清av| 91黄色小视频| 国产精品第五页| 国产99精品国产| 久久夜色精品一区| 美女视频黄免费的久久| 欧美日韩一区久久| 懂色av中文一区二区三区| 亚洲一区二区av在线| 国产目拍亚洲精品99久久精品| 成人av在线影院| 婷婷中文字幕综合| 久久午夜羞羞影院免费观看| 成人av电影在线播放| 人禽交欧美网站| 亚洲欧美日韩系列| 国产欧美一区二区在线观看| 欧美精品在线观看播放| 成年人午夜久久久| av在线免费不卡| 丝袜美腿一区二区三区| 粉嫩在线一区二区三区视频| 日韩二区在线观看| 日韩一区二区三区四区 | 亚洲国产一区二区在线播放| 精品av综合导航| 欧美挠脚心视频网站| av中文字幕亚洲| 国内成人精品2018免费看| 中文字幕亚洲在| 日韩精品在线一区| 欧美久久久久久蜜桃| 91亚洲精品乱码久久久久久蜜桃| 日韩福利视频导航| 天天爽夜夜爽夜夜爽精品视频| 亚洲一区在线电影| 亚洲视频小说图片| 亚洲三级在线观看| ...av二区三区久久精品| 国产精品久久影院| **性色生活片久久毛片| 日本一区二区免费在线| 精品乱人伦小说| 91精品欧美久久久久久动漫 | 国产精品久久久久久久裸模| 欧美精品一二三四| 欧美日韩激情一区| 欧美一区午夜视频在线观看| 欧美精三区欧美精三区| 欧美精品亚洲一区二区在线播放| 欧美日韩一卡二卡| 91成人免费网站| 欧美人与性动xxxx| 欧美一卡在线观看| 精品少妇一区二区三区在线视频| 日韩午夜中文字幕| 久久综合久久综合亚洲| 欧美极品美女视频| 一区二区三区日韩欧美精品| 亚洲成人av中文| 喷水一区二区三区| 国产一区二区剧情av在线| 成人毛片老司机大片| 色狠狠色狠狠综合| 欧美一二三四在线| 国产欧美日韩在线看| 亚洲精品乱码久久久久久 | 91网站最新网址| 欧美日韩美少妇| 日韩精品一区二区三区在线观看| 亚洲精品一区二区三区影院 | 成a人片国产精品| 色综合久久久网| 欧美一级xxx| 中文字幕五月欧美| 日本aⅴ亚洲精品中文乱码|