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

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

?? des3test.cpp

?? PKCS#11 讀取USB KEY證書
?? CPP
字號:

#include "common.h"
#include "Des3Test.h"

Des3Test::Des3Test(char* dll_file_path):CP11TestBase(dll_file_path)
{
	m_hKey = 0;
}

Des3Test::~Des3Test()
{

}

void Des3Test::Test()
{
	if(CKR_OK != Initialize())
		return;
	GenerateKey();
	if(m_hKey == 0)
	{
		Finalize();
		return ;
	}
	crypt_Single();
	crypt_Update();
	Finalize();
}
void Des3Test::GenerateKey()
{
	CK_OBJECT_CLASS oClass = CKO_SECRET_KEY;
	CK_KEY_TYPE keyType = CKK_DES3; 
	CK_BBOOL bTrue = true;
	CK_BBOOL bFalse = false;
	CK_ULONG ulLen = 24;
	CK_MECHANISM mechanism = {CKM_DES3_KEY_GEN, NULL_PTR, 0};
	CK_ATTRIBUTE Des3tem[] = {
		{CKA_CLASS, &oClass, sizeof(CK_OBJECT_CLASS)},
		{CKA_KEY_TYPE, &keyType, sizeof(CK_KEY_TYPE)},
		{CKA_TOKEN, &bFalse, sizeof(CK_BBOOL)},
		{CKA_PRIVATE, &bTrue, sizeof(CK_BBOOL)},
		{CKA_ENCRYPT, &bTrue, sizeof(CK_BBOOL)},
		{CKA_DECRYPT, &bTrue, sizeof(CK_BBOOL)},
		{CKA_VALUE_LEN, &ulLen, sizeof(CK_ULONG)}, 
	};
	CK_ULONG ulCount = 7;
	CK_RV rv =  m_p11->C_GenerateKey(m_hSession, &mechanism, Des3tem, ulCount, &m_hKey); 
	_CheckRV("Generate 3DES key...", rv);
}

void Des3Test::crypt_Single()
{
	const CK_ULONG DATA_LENGTH = 1024;
	CK_BYTE bIn[DATA_LENGTH] = {0}, bTemp[DATA_LENGTH] = {0}, bOut[DATA_LENGTH] = {0};
	CK_ULONG ulIn = 0, ulOut = 0, ulTemp = 0;
	CK_ULONG Mechanism[3] = {CKM_DES3_CBC, CKM_DES3_ECB, CKM_DES3_CBC_PAD};
	CK_BYTE_PTR bHint[3] = {
		(CK_BYTE_PTR)"CKM_DES3_CBC: ",\
		(CK_BYTE_PTR)"CKM_DES3_ECB: ",
		(CK_BYTE_PTR)"CKM_DES3_CBC_PAD: "
	};

	for(int i = 0; i < 3; ++i)
	{
		ulIn = 256;
		if(i==2)
			ulIn = 337;
		for(register CK_ULONG i0 = 0;i0<ulIn;i0++)
			bIn[i0] = (CK_BYTE)i0;
		
		
		printf("\nDES: C_Encrypt()/C_Decrypt(): %s\n", bHint[i]);

		//ecnrypt init:
		CK_BYTE iv[8] = {'u','s','b','t','o','k','e','n'};
		CK_MECHANISM ckMechanism = {Mechanism[i], iv, 8};

		CK_RV rv =  m_p11->C_EncryptInit(m_hSession, &ckMechanism, m_hKey); 
		if(!_CheckRV("C_EncryptInit()", rv))
			break;

		rv =  m_p11->C_Encrypt(m_hSession, bIn, ulIn, NULL, &ulTemp);
		if(CKR_OK == rv)
			rv =  m_p11->C_Encrypt(m_hSession, bIn, ulIn, bTemp, &ulTemp);
		if(!_CheckRV("C_Encrypt()", rv))
			break;

		ShowData("Data to be encrypted: ", bIn, ulIn);
		ShowData("Data encrypted: ", bTemp, ulTemp);

		rv =  m_p11->C_DecryptInit(m_hSession, &ckMechanism, m_hKey);
		if(!_CheckRV("C_DecryptInit()", rv))
			break;

		rv =  m_p11->C_Decrypt(m_hSession, bTemp, ulTemp, NULL, &ulOut);
		if(CKR_OK == rv)
			rv =  m_p11->C_Decrypt(m_hSession, bTemp, ulTemp, bOut, &ulOut);
		if(!_CheckRV("C_Decrypt()", rv))
			break;

		ShowData("Data decrypted: ", bOut, ulOut);
		
		if(0 == memcmp(bIn, bOut, ulOut))
			_CheckRV("Check data", CKR_OK);
		else
			_CheckRV("Check data", CKR_FUNCTION_FAILED);
	}
}

void Des3Test::crypt_Update()
{
	const CK_ULONG DATA_LENGTH = 1024;
	CK_BYTE bIn[DATA_LENGTH] = {0}, bTemp[DATA_LENGTH] = {0}, bOut[DATA_LENGTH] = {0};
	CK_ULONG ulIn = 0, ulOut = 0, ulTemp = 0;
	CK_ULONG Mechanism[3] = {CKM_DES3_CBC, CKM_DES3_ECB, CKM_DES3_CBC_PAD};
	CK_BYTE_PTR bHint[3] = {
		(CK_BYTE_PTR)"CKM_DES3_CBC: ",
		(CK_BYTE_PTR)"CKM_DES3_ECB: ",
		(CK_BYTE_PTR)"CKM_DES3_CBC_PAD: "
	};

	for(int i=0;i<3;i++)
	{
		ulIn = 256;
		if(i == 2)
		{//CKM_RC2_CBC_PAD
			ulIn = 253;
		}
		for(register CK_ULONG i0 = 0;i0<ulIn;i0++)
			bIn[i0] = (CK_BYTE)i0;

		printf("\nDES: C_EncryptUpdate()/C_DecryptUpdate(): %s\n", bHint[i]);

		//ecnrypt init:
		CK_BYTE iv[8] = {'u','s','b','t','o','k','e','n'};
		CK_MECHANISM ckMechanism = {Mechanism[i], iv, sizeof(iv)};

		CK_RV rv =  m_p11->C_EncryptInit(m_hSession, &ckMechanism, m_hKey); 
		if(!_CheckRV("C_EncryptInit()", rv))
			break;
		
		CK_ULONG ulEncrypted = 0;
		const CK_ULONG ulEnc1stPice = 33;

		rv =  m_p11->C_EncryptUpdate(m_hSession, bIn, ulEnc1stPice, NULL, &ulTemp);
		if(CKR_OK == rv)
			rv =  m_p11->C_EncryptUpdate(m_hSession, bIn, ulEnc1stPice, bTemp, &ulTemp);
		if(!_CheckRV("C_EncryptUpdate(1)", rv))
			break;

		ulEncrypted+=ulTemp;
		ulTemp = 0;

		rv =  m_p11->C_EncryptUpdate(m_hSession,  &(bIn[ulEnc1stPice]), ulIn-ulEnc1stPice, NULL, &ulTemp);
		if(CKR_OK == rv)
			rv =  m_p11->C_EncryptUpdate(m_hSession, &(bIn[ulEnc1stPice]), ulIn-ulEnc1stPice, &(bTemp[ulEncrypted]), &ulTemp);
		if(!_CheckRV("C_EncryptUpdate(2)", rv))
			break;

		ulEncrypted+=ulTemp;
		ulTemp = 0;

		rv = m_p11->C_EncryptFinal(m_hSession, &(bTemp[ulEncrypted]), &ulTemp);
		if(!_CheckRV("C_EncryptFinal()", rv))
			break;

		ulEncrypted+=ulTemp;
		ulTemp = 0;

		ShowData("Data to be encrypted: ", bIn, ulIn);
		ShowData("Data encrypted: ", bTemp, ulEncrypted);

		rv =  m_p11->C_DecryptInit(m_hSession, &ckMechanism, m_hKey);
		if(!_CheckRV("C_DecryptInit()", rv))
			break;

		CK_ULONG ulDecrypt = 0;
		const CK_ULONG ulDec1stPice = 11;

		rv =  m_p11->C_DecryptUpdate(m_hSession, bTemp, ulDec1stPice, NULL, &ulOut);
		if(CKR_OK == rv)
			rv =  m_p11->C_DecryptUpdate(m_hSession, bTemp, ulDec1stPice, bOut, &ulOut);
		if(!_CheckRV("C_DecryptUpdate(1)", rv))
			break;

		ulDecrypt +=ulOut;
		ulOut = 0;

		//Get decrypted data:
		rv =  m_p11->C_DecryptUpdate(m_hSession, &(bTemp[ulDec1stPice]), ulEncrypted-ulDec1stPice, NULL, &ulOut);
		if(CKR_OK == rv)
			rv =  m_p11->C_DecryptUpdate(m_hSession, &(bTemp[ulDec1stPice]), ulEncrypted-ulDec1stPice, &(bOut[ulDecrypt]), &ulOut);
		if(!_CheckRV("C_DecryptUpdate(2)", rv))
			break;

		ulDecrypt +=ulOut;
		ulOut = 0;

		rv = m_p11->C_DecryptFinal(m_hSession, &(bOut[ulDecrypt]), &ulOut);
		if(!_CheckRV("C_DecryptFinal()", rv))
			break;

		ulDecrypt +=ulOut;
		
		ShowData("Data decrypted: ", bOut, ulDecrypt);
		
		if(0 == memcmp(bIn, bOut, ulDecrypt))
			_CheckRV("Check data", CKR_OK);
		else
			_CheckRV("Check data", CKR_FUNCTION_FAILED);
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色综合视频在线观看| 26uuu精品一区二区三区四区在线| 欧美一区二区免费视频| 成人免费福利片| 免费av成人在线| 亚洲美女屁股眼交| 久久人人97超碰com| 欧美日韩一级视频| 成人av在线资源网站| 国产精品福利影院| 99久久精品免费看| 成人亚洲一区二区一| 蜜臀av在线播放一区二区三区| 亚洲视频在线观看一区| 欧美日韩国产免费一区二区 | 国产成人福利片| 亚洲va天堂va国产va久| 亚洲精品五月天| 亚洲免费观看高清完整版在线观看熊| 国产成人自拍网| caoporn国产精品| 99视频一区二区三区| 大胆亚洲人体视频| 激情综合网激情| 色婷婷香蕉在线一区二区| 免费欧美在线视频| 最好看的中文字幕久久| 精品国产人成亚洲区| 色av一区二区| 91网上在线视频| 欧美在线视频日韩| 精品久久一区二区| 久久先锋影音av鲁色资源网| 亚洲国产精品国自产拍av| 久久综合久久99| 国产日产欧美一区二区三区| 久久久噜噜噜久噜久久综合| 日韩午夜av一区| 国产精品久久久久久久久图文区 | 国产精品久久久久久久久晋中| 国产女人水真多18毛片18精品视频| 国产日韩v精品一区二区| 亚洲欧洲精品一区二区三区| 亚洲裸体在线观看| 免费在线看成人av| 一区二区高清免费观看影视大全| 亚洲成人免费看| www.日韩大片| 99久久免费精品高清特色大片| 欧美在线观看禁18| 在线视频亚洲一区| 亚洲国产欧美在线| 欧美一区二区三区视频免费| 国产专区综合网| 中文字幕一区二区三区四区不卡 | 久久久精品国产99久久精品芒果| 国产原创一区二区三区| 国产精品蜜臀在线观看| 色吊一区二区三区| 国模大尺度一区二区三区| 欧美激情一区二区三区不卡| 色哟哟在线观看一区二区三区| 亚洲国产精品自拍| 久久色在线观看| 在线观看精品一区| 国产成人精品一区二区三区网站观看| 中文字幕在线观看一区| 日韩欧美中文字幕公布| 91视频免费观看| 精品亚洲免费视频| 亚洲三级视频在线观看| 久久午夜羞羞影院免费观看| 欧美亚洲日本一区| 北条麻妃国产九九精品视频| 日韩电影在线免费看| 亚洲天堂成人在线观看| 久久精品一区二区三区av| 欧美日韩成人综合| 欧美影院一区二区| 北岛玲一区二区三区四区| 国产一区二区三区在线观看精品 | 日韩区在线观看| 欧美午夜电影网| 91一区二区三区在线观看| 国产成人欧美日韩在线电影| 国产精品影视网| 成人在线一区二区三区| 国产高清精品网站| 国产一区二区三区免费在线观看| 九九热在线视频观看这里只有精品| 亚洲第一综合色| 男女男精品视频| 国产精品一二三| 成人黄色777网| 99精品视频在线播放观看| 91麻豆福利精品推荐| 欧美亚洲图片小说| 日韩午夜在线播放| 国产色婷婷亚洲99精品小说| 综合自拍亚洲综合图不卡区| 亚洲色图另类专区| 天天射综合影视| 国产一区二区三区四区五区美女| 国产激情一区二区三区| 91蜜桃传媒精品久久久一区二区| 色婷婷精品大视频在线蜜桃视频| 欧美久久一区二区| 欧美肥大bbwbbw高潮| 国产欧美日韩精品一区| 午夜国产精品一区| 成人动漫在线一区| 欧美另类z0zxhd电影| 中国av一区二区三区| 视频一区欧美日韩| 91亚洲精品一区二区乱码| 在线播放/欧美激情| 中文字幕一区在线观看视频| 蜜芽一区二区三区| 欧美日韩国产系列| 中文字幕在线不卡视频| 久久99国产精品久久99果冻传媒| 在线欧美一区二区| 亚洲精品视频一区| 成人丝袜18视频在线观看| 欧美电影免费观看高清完整版在线观看 | 欧美日韩在线播| 亚洲欧洲av另类| 成人免费看的视频| 国产亚洲1区2区3区| 久久99精品视频| 日韩欧美激情在线| 日本不卡的三区四区五区| 欧美日韩黄视频| 蜜臀精品一区二区三区在线观看| 欧美日韩成人高清| 日本v片在线高清不卡在线观看| 欧美日韩免费高清一区色橹橹| 尤物视频一区二区| 欧美久久久影院| 麻豆精品久久精品色综合| 精品福利一二区| 顶级嫩模精品视频在线看| 国产精品久久精品日日| 欧美在线制服丝袜| 精油按摩中文字幕久久| 2023国产精品| 一本大道av一区二区在线播放| 亚洲精品写真福利| 日韩精品一区二区三区四区| 国产一区二区三区香蕉| 亚洲黄色小视频| 日韩午夜激情视频| 91丨porny丨最新| 午夜成人在线视频| 亚洲欧洲成人精品av97| 欧美一区二区在线免费观看| 成人动漫精品一区二区| 秋霞影院一区二区| 最新久久zyz资源站| 精品免费国产二区三区| 色天天综合久久久久综合片| 男人操女人的视频在线观看欧美| 国产精品久久久久一区二区三区 | 蜜桃av一区二区三区电影| 555夜色666亚洲国产免| 91小视频免费观看| 麻豆91在线播放免费| 亚洲一区二区三区三| 国产精品视频在线看| 亚洲精品在线观看网站| 欧美日韩久久久| 91国模大尺度私拍在线视频| av不卡一区二区三区| 极品少妇一区二区| 美女视频黄频大全不卡视频在线播放| 亚洲欧美日本韩国| 亚洲精品写真福利| 亚洲一线二线三线视频| 一区二区三区色| 亚洲国产精品久久艾草纯爱| 综合激情网...| 亚洲国产精品一区二区久久| 五月婷婷激情综合| 日本欧美加勒比视频| 日韩国产精品大片| 国产在线不卡一区| 大胆欧美人体老妇| 欧洲在线/亚洲| 精品久久久久香蕉网| 欧美韩日一区二区三区| 亚洲激情av在线| 日韩成人av影视| 成人免费视频caoporn| 91成人在线免费观看| 欧美精品一级二级| 中文字幕免费观看一区| 亚洲欧美另类图片小说| 日本不卡在线视频| 国产精品一级在线| 色婷婷综合久久久|