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

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

?? strciphr.cpp

?? 常用字符串hash算法
?? CPP
字號(hào):
// strciphr.cpp - written and placed in the public domain by Wei Dai#include "pch.h"#include "strciphr.h"NAMESPACE_BEGIN(CryptoPP)template <class S>byte AdditiveCipherTemplate<S>::GenerateByte(){	PolicyInterface &policy = AccessPolicy();	if (m_leftOver == 0)	{		policy.WriteKeystream(m_buffer, policy.GetIterationsToBuffer());		m_leftOver = policy.GetBytesPerIteration();	}	return *(KeystreamBufferEnd()-m_leftOver--);}template <class S>inline void AdditiveCipherTemplate<S>::ProcessData(byte *outString, const byte *inString, unsigned int length){	if (m_leftOver > 0)	{		unsigned int len = STDMIN(m_leftOver, length);		xorbuf(outString, inString, KeystreamBufferEnd()-m_leftOver, len);		length -= len;		m_leftOver -= len;		inString += len;		outString += len;	}	if (!length)		return;	assert(m_leftOver == 0);	PolicyInterface &policy = AccessPolicy();	unsigned int bytesPerIteration = policy.GetBytesPerIteration();	unsigned int alignment = policy.GetAlignment();	if (policy.CanOperateKeystream() && length >= bytesPerIteration && IsAlignedOn(outString, alignment))	{		if (IsAlignedOn(inString, alignment))			policy.OperateKeystream(XOR_KEYSTREAM, outString, inString, length / bytesPerIteration);		else		{			memcpy(outString, inString, length);			policy.OperateKeystream(XOR_KEYSTREAM_INPLACE, outString, outString, length / bytesPerIteration);		}		inString += length - length % bytesPerIteration;		outString += length - length % bytesPerIteration;		length %= bytesPerIteration;		if (!length)			return;	}	unsigned int bufferByteSize = GetBufferByteSize(policy);	unsigned int bufferIterations = policy.GetIterationsToBuffer();	while (length >= bufferByteSize)	{		policy.WriteKeystream(m_buffer, bufferIterations);		xorbuf(outString, inString, KeystreamBufferBegin(), bufferByteSize);		length -= bufferByteSize;		inString += bufferByteSize;		outString += bufferByteSize;	}	if (length > 0)	{		policy.WriteKeystream(m_buffer, bufferIterations);		xorbuf(outString, inString, KeystreamBufferBegin(), length);		m_leftOver = bytesPerIteration - length;	}}template <class S>void AdditiveCipherTemplate<S>::Resynchronize(const byte *iv){	PolicyInterface &policy = AccessPolicy();	m_leftOver = 0;	m_buffer.New(GetBufferByteSize(policy));	policy.CipherResynchronize(m_buffer, iv);}template <class BASE>void AdditiveCipherTemplate<BASE>::Seek(dword position){	PolicyInterface &policy = AccessPolicy();	unsigned int bytesPerIteration = policy.GetBytesPerIteration();	policy.SeekToIteration(position / bytesPerIteration);	position %= bytesPerIteration;	if (position > 0)	{		policy.WriteKeystream(m_buffer, 1);		m_leftOver = bytesPerIteration - (unsigned int)position;	}	else		m_leftOver = 0;}template <class BASE>void CFB_CipherTemplate<BASE>::Resynchronize(const byte *iv){	PolicyInterface &policy = AccessPolicy();	policy.CipherResynchronize(iv);	m_leftOver = policy.GetBytesPerIteration();}template <class BASE>void CFB_CipherTemplate<BASE>::ProcessData(byte *outString, const byte *inString, unsigned int length){	PolicyInterface &policy = AccessPolicy();	unsigned int bytesPerIteration = policy.GetBytesPerIteration();	unsigned int alignment = policy.GetAlignment();	byte *reg = policy.GetRegisterBegin();	if (m_leftOver)	{		unsigned int len = STDMIN(m_leftOver, length);		CombineMessageAndShiftRegister(outString, reg + bytesPerIteration - m_leftOver, inString, len);		m_leftOver -= len;		length -= len;		inString += len;		outString += len;	}	if (!length)		return;	assert(m_leftOver == 0);	if (policy.CanIterate() && length >= bytesPerIteration && IsAlignedOn(outString, alignment))	{		if (IsAlignedOn(inString, alignment))			policy.Iterate(outString, inString, GetCipherDir(*this), length / bytesPerIteration);		else		{			memcpy(outString, inString, length);			policy.Iterate(outString, outString, GetCipherDir(*this), length / bytesPerIteration);		}		inString += length - length % bytesPerIteration;		outString += length - length % bytesPerIteration;		length %= bytesPerIteration;	}	while (length >= bytesPerIteration)	{		policy.TransformRegister();		CombineMessageAndShiftRegister(outString, reg, inString, bytesPerIteration);		length -= bytesPerIteration;		inString += bytesPerIteration;		outString += bytesPerIteration;	}	if (length > 0)	{		policy.TransformRegister();		CombineMessageAndShiftRegister(outString, reg, inString, length);		m_leftOver = bytesPerIteration - length;	}}template <class BASE>void CFB_EncryptionTemplate<BASE>::CombineMessageAndShiftRegister(byte *output, byte *reg, const byte *message, unsigned int length){	xorbuf(reg, message, length);	memcpy(output, reg, length);}template <class BASE>void CFB_DecryptionTemplate<BASE>::CombineMessageAndShiftRegister(byte *output, byte *reg, const byte *message, unsigned int length){	for (unsigned int i=0; i<length; i++)	{		byte b = message[i];		output[i] = reg[i] ^ b;		reg[i] = b;	}}NAMESPACE_END

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本在线不卡一区| 中文字幕一区不卡| 美腿丝袜亚洲色图| 精品国精品国产尤物美女| 蜜臀91精品一区二区三区| 日韩精品影音先锋| 粉嫩嫩av羞羞动漫久久久| 中文字幕一区二区三区av| 欧美亚洲综合久久| 蜜臀av性久久久久av蜜臀妖精| 精品日韩99亚洲| 欧美一级高清片在线观看| 精品一区二区三区影院在线午夜| 久久影视一区二区| 99久久99久久免费精品蜜臀| 亚洲成人av一区二区三区| 欧美电影免费观看高清完整版| 成人免费毛片aaaaa**| 亚洲第一主播视频| 久久人人超碰精品| 91社区在线播放| 免费在线观看一区| 自拍偷拍欧美激情| 日韩欧美专区在线| 波多野结衣亚洲| 蜜臀av性久久久久蜜臀aⅴ流畅| 久久久久久一级片| 欧美日韩国产一二三| 成人免费视频播放| 蜜臀av亚洲一区中文字幕| 国产精品灌醉下药二区| 欧美一区二区三区视频| 99久久777色| 久久丁香综合五月国产三级网站| 中文字幕在线视频一区| 日韩精品一区二区三区视频 | 中文字幕一区二区三区乱码在线| 欧美肥大bbwbbw高潮| 高清不卡一区二区在线| 日韩国产精品久久久久久亚洲| 国产欧美日韩久久| 欧美一区二区女人| 色屁屁一区二区| 国产成人综合网站| 久久国产精品99久久久久久老狼| 亚洲精品v日韩精品| 欧美国产精品久久| 精品久久人人做人人爽| 欧美日韩一区二区三区四区| 成人av在线资源网| 国产大陆亚洲精品国产| 欧美aaaaa成人免费观看视频| 一二三区精品视频| 国产精品的网站| 国产欧美日韩亚州综合| 精品久久人人做人人爰| 日韩一区二区麻豆国产| 欧美日韩亚洲综合一区二区三区 | 国产一区二区三区免费在线观看| 亚洲福利视频一区| 亚洲伦理在线免费看| 136国产福利精品导航| 国产午夜精品一区二区三区视频| 欧美xxxxxxxx| 日韩精品一区二区在线观看| 欧美肥妇毛茸茸| 51午夜精品国产| 欧美日韩一级片在线观看| 色婷婷综合久久久| 97国产一区二区| 91免费观看视频| 国产无遮挡一区二区三区毛片日本| 欧美一区二区三区免费大片| 欧美日韩一级二级| 欧美日韩一区二区三区高清 | 欧美一区二区三区小说| 555夜色666亚洲国产免| 日韩一区二区在线观看视频播放| 欧美福利视频一区| 欧美一区二区三区免费| 欧美一区二区在线观看| 欧美一区在线视频| 精品国产伦一区二区三区观看体验| 日韩欧美一二区| 久久久久久**毛片大全| 中文av一区特黄| 成人欧美一区二区三区白人 | 欧美va在线播放| 亚洲精品一区在线观看| 日本一区二区三区高清不卡| 国产精品日日摸夜夜摸av| 亚洲人快播电影网| 亚洲成av人片在线| 精品制服美女久久| 在线视频中文字幕一区二区| aaa国产一区| 色综合色狠狠综合色| 色婷婷久久久综合中文字幕| 欧美亚一区二区| 欧美一区二区三区免费在线看 | 91一区二区三区在线观看| 日本精品裸体写真集在线观看| 欧美日韩精品免费观看视频 | 中文字幕欧美国产| 尤物在线观看一区| 久久精品国产999大香线蕉| 国产成人午夜精品影院观看视频 | 欧美精品久久天天躁| 久久一二三国产| 亚洲欧美日韩在线| 久久国产免费看| www.久久精品| 在线成人高清不卡| 欧美极品美女视频| 91在线精品一区二区三区| 成人高清av在线| 久久综合九色综合97_久久久| 久久精品无码一区二区三区| 国产精品网曝门| 亚洲超丰满肉感bbw| 精品亚洲免费视频| 91激情在线视频| 26uuu精品一区二区| 亚洲精品美腿丝袜| 国产一区 二区 三区一级| 欧美又粗又大又爽| 国产精品色呦呦| 免费xxxx性欧美18vr| 一本久道中文字幕精品亚洲嫩| 精品久久久久香蕉网| 精品国产一区二区在线观看| 亚洲人亚洲人成电影网站色| 免费成人在线观看| 欧美在线色视频| 国产精品家庭影院| 黄网站免费久久| 91精品国产乱| 亚洲不卡av一区二区三区| 波多野结衣中文字幕一区二区三区 | 亚洲色图一区二区三区| 精一区二区三区| 欧美一区二区福利在线| 亚洲一区二区在线观看视频| 成人精品国产免费网站| 久久网站热最新地址| 轻轻草成人在线| 欧美裸体bbwbbwbbw| 亚洲精品成人少妇| 99久久99久久免费精品蜜臀| 亚洲国产精品高清| 国产精品18久久久久久久网站| 欧美一区二区三区在线观看| 五月婷婷综合激情| 欧美性色aⅴ视频一区日韩精品| 亚洲人成人一区二区在线观看| 国产91丝袜在线观看| 日韩精品一区二区三区在线 | 国产福利精品导航| 久久久亚洲欧洲日产国码αv| 免费欧美日韩国产三级电影| 欧美男女性生活在线直播观看| 亚洲一区中文日韩| 91丨九色丨蝌蚪丨老版| 国产精品传媒在线| 一本大道久久a久久综合| 国产精品久久久一本精品| 成人激情视频网站| 中文字幕色av一区二区三区| 成人av在线电影| 亚洲女性喷水在线观看一区| 91在线一区二区| 亚洲国产成人91porn| 91精品国模一区二区三区| 久久精品国产精品亚洲红杏| 精品成人佐山爱一区二区| 国产精品一级片| **性色生活片久久毛片| 一道本成人在线| 丝袜美腿亚洲综合| 欧美r级电影在线观看| 国产精一区二区三区| 国产精品国产成人国产三级 | 亚洲欧美视频在线观看视频| 在线影视一区二区三区| 欧美在线不卡视频| 三级不卡在线观看| 2020国产精品久久精品美国| 成人午夜短视频| 亚洲一区二区三区小说| 欧美肥妇bbw| 国产69精品久久久久毛片 | 欧美videossexotv100| 国产成人精品三级| 一二三区精品福利视频| 精品免费国产一区二区三区四区| 国产成人精品三级| 亚洲成人一区二区| 国产午夜精品美女毛片视频| 色综合久久88色综合天天| 天天操天天综合网|