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

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

?? des_enc.c

?? openssl包含TLS
?? C
字號:
/* crypto/des/des_enc.c *//* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) * All rights reserved. * * This package is an SSL implementation written * by Eric Young (eay@cryptsoft.com). * The implementation was written so as to conform with Netscapes SSL. *  * This library is free for commercial and non-commercial use as long as * the following conditions are aheared to.  The following conditions * apply to all code found in this distribution, be it the RC4, RSA, * lhash, DES, etc., code; not just the SSL code.  The SSL documentation * included with this distribution is covered by the same copyright terms * except that the holder is Tim Hudson (tjh@cryptsoft.com). *  * Copyright remains Eric Young's, and as such any Copyright notices in * the code are not to be removed. * If this package is used in a product, Eric Young should be given attribution * as the author of the parts of the library used. * This can be in the form of a textual message at program startup or * in documentation (online or textual) provided with the package. *  * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the copyright *    notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright *    notice, this list of conditions and the following disclaimer in the *    documentation and/or other materials provided with the distribution. * 3. All advertising materials mentioning features or use of this software *    must display the following acknowledgement: *    "This product includes cryptographic software written by *     Eric Young (eay@cryptsoft.com)" *    The word 'cryptographic' can be left out if the rouines from the library *    being used are not cryptographic related :-). * 4. If you include any Windows specific code (or a derivative thereof) from  *    the apps directory (application code) you must include an acknowledgement: *    "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" *  * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. *  * The licence and distribution terms for any publically available version or * derivative of this code cannot be changed.  i.e. this code cannot simply be * copied and put under another distribution licence * [including the GNU Public Licence.] */#include "des_locl.h"#ifndef OPENSSL_FIPSvoid DES_encrypt1(DES_LONG *data, DES_key_schedule *ks, int enc)	{	register DES_LONG l,r,t,u;#ifdef DES_PTR	register const unsigned char *des_SP=(const unsigned char *)DES_SPtrans;#endif#ifndef DES_UNROLL	register int i;#endif	register DES_LONG *s;	r=data[0];	l=data[1];	IP(r,l);	/* Things have been modified so that the initial rotate is	 * done outside the loop.  This required the	 * DES_SPtrans values in sp.h to be rotated 1 bit to the right.	 * One perl script later and things have a 5% speed up on a sparc2.	 * Thanks to Richard Outerbridge <71755.204@CompuServe.COM>	 * for pointing this out. */	/* clear the top bits on machines with 8byte longs */	/* shift left by 2 */	r=ROTATE(r,29)&0xffffffffL;	l=ROTATE(l,29)&0xffffffffL;	s=ks->ks->deslong;	/* I don't know if it is worth the effort of loop unrolling the	 * inner loop */	if (enc)		{#ifdef DES_UNROLL		D_ENCRYPT(l,r, 0); /*  1 */		D_ENCRYPT(r,l, 2); /*  2 */		D_ENCRYPT(l,r, 4); /*  3 */		D_ENCRYPT(r,l, 6); /*  4 */		D_ENCRYPT(l,r, 8); /*  5 */		D_ENCRYPT(r,l,10); /*  6 */		D_ENCRYPT(l,r,12); /*  7 */		D_ENCRYPT(r,l,14); /*  8 */		D_ENCRYPT(l,r,16); /*  9 */		D_ENCRYPT(r,l,18); /*  10 */		D_ENCRYPT(l,r,20); /*  11 */		D_ENCRYPT(r,l,22); /*  12 */		D_ENCRYPT(l,r,24); /*  13 */		D_ENCRYPT(r,l,26); /*  14 */		D_ENCRYPT(l,r,28); /*  15 */		D_ENCRYPT(r,l,30); /*  16 */#else		for (i=0; i<32; i+=8)			{			D_ENCRYPT(l,r,i+0); /*  1 */			D_ENCRYPT(r,l,i+2); /*  2 */			D_ENCRYPT(l,r,i+4); /*  3 */			D_ENCRYPT(r,l,i+6); /*  4 */			}#endif		}	else		{#ifdef DES_UNROLL		D_ENCRYPT(l,r,30); /* 16 */		D_ENCRYPT(r,l,28); /* 15 */		D_ENCRYPT(l,r,26); /* 14 */		D_ENCRYPT(r,l,24); /* 13 */		D_ENCRYPT(l,r,22); /* 12 */		D_ENCRYPT(r,l,20); /* 11 */		D_ENCRYPT(l,r,18); /* 10 */		D_ENCRYPT(r,l,16); /*  9 */		D_ENCRYPT(l,r,14); /*  8 */		D_ENCRYPT(r,l,12); /*  7 */		D_ENCRYPT(l,r,10); /*  6 */		D_ENCRYPT(r,l, 8); /*  5 */		D_ENCRYPT(l,r, 6); /*  4 */		D_ENCRYPT(r,l, 4); /*  3 */		D_ENCRYPT(l,r, 2); /*  2 */		D_ENCRYPT(r,l, 0); /*  1 */#else		for (i=30; i>0; i-=8)			{			D_ENCRYPT(l,r,i-0); /* 16 */			D_ENCRYPT(r,l,i-2); /* 15 */			D_ENCRYPT(l,r,i-4); /* 14 */			D_ENCRYPT(r,l,i-6); /* 13 */			}#endif		}	/* rotate and clear the top bits on machines with 8byte longs */	l=ROTATE(l,3)&0xffffffffL;	r=ROTATE(r,3)&0xffffffffL;	FP(r,l);	data[0]=l;	data[1]=r;	l=r=t=u=0;	}void DES_encrypt2(DES_LONG *data, DES_key_schedule *ks, int enc)	{	register DES_LONG l,r,t,u;#ifdef DES_PTR	register const unsigned char *des_SP=(const unsigned char *)DES_SPtrans;#endif#ifndef DES_UNROLL	register int i;#endif	register DES_LONG *s;	r=data[0];	l=data[1];	/* Things have been modified so that the initial rotate is	 * done outside the loop.  This required the	 * DES_SPtrans values in sp.h to be rotated 1 bit to the right.	 * One perl script later and things have a 5% speed up on a sparc2.	 * Thanks to Richard Outerbridge <71755.204@CompuServe.COM>	 * for pointing this out. */	/* clear the top bits on machines with 8byte longs */	r=ROTATE(r,29)&0xffffffffL;	l=ROTATE(l,29)&0xffffffffL;	s=ks->ks->deslong;	/* I don't know if it is worth the effort of loop unrolling the	 * inner loop */	if (enc)		{#ifdef DES_UNROLL		D_ENCRYPT(l,r, 0); /*  1 */		D_ENCRYPT(r,l, 2); /*  2 */		D_ENCRYPT(l,r, 4); /*  3 */		D_ENCRYPT(r,l, 6); /*  4 */		D_ENCRYPT(l,r, 8); /*  5 */		D_ENCRYPT(r,l,10); /*  6 */		D_ENCRYPT(l,r,12); /*  7 */		D_ENCRYPT(r,l,14); /*  8 */		D_ENCRYPT(l,r,16); /*  9 */		D_ENCRYPT(r,l,18); /*  10 */		D_ENCRYPT(l,r,20); /*  11 */		D_ENCRYPT(r,l,22); /*  12 */		D_ENCRYPT(l,r,24); /*  13 */		D_ENCRYPT(r,l,26); /*  14 */		D_ENCRYPT(l,r,28); /*  15 */		D_ENCRYPT(r,l,30); /*  16 */#else		for (i=0; i<32; i+=8)			{			D_ENCRYPT(l,r,i+0); /*  1 */			D_ENCRYPT(r,l,i+2); /*  2 */			D_ENCRYPT(l,r,i+4); /*  3 */			D_ENCRYPT(r,l,i+6); /*  4 */			}#endif		}	else		{#ifdef DES_UNROLL		D_ENCRYPT(l,r,30); /* 16 */		D_ENCRYPT(r,l,28); /* 15 */		D_ENCRYPT(l,r,26); /* 14 */		D_ENCRYPT(r,l,24); /* 13 */		D_ENCRYPT(l,r,22); /* 12 */		D_ENCRYPT(r,l,20); /* 11 */		D_ENCRYPT(l,r,18); /* 10 */		D_ENCRYPT(r,l,16); /*  9 */		D_ENCRYPT(l,r,14); /*  8 */		D_ENCRYPT(r,l,12); /*  7 */		D_ENCRYPT(l,r,10); /*  6 */		D_ENCRYPT(r,l, 8); /*  5 */		D_ENCRYPT(l,r, 6); /*  4 */		D_ENCRYPT(r,l, 4); /*  3 */		D_ENCRYPT(l,r, 2); /*  2 */		D_ENCRYPT(r,l, 0); /*  1 */#else		for (i=30; i>0; i-=8)			{			D_ENCRYPT(l,r,i-0); /* 16 */			D_ENCRYPT(r,l,i-2); /* 15 */			D_ENCRYPT(l,r,i-4); /* 14 */			D_ENCRYPT(r,l,i-6); /* 13 */			}#endif		}	/* rotate and clear the top bits on machines with 8byte longs */	data[0]=ROTATE(l,3)&0xffffffffL;	data[1]=ROTATE(r,3)&0xffffffffL;	l=r=t=u=0;	}void DES_encrypt3(DES_LONG *data, DES_key_schedule *ks1,		  DES_key_schedule *ks2, DES_key_schedule *ks3)	{	register DES_LONG l,r;	l=data[0];	r=data[1];	IP(l,r);	data[0]=l;	data[1]=r;	DES_encrypt2((DES_LONG *)data,ks1,DES_ENCRYPT);	DES_encrypt2((DES_LONG *)data,ks2,DES_DECRYPT);	DES_encrypt2((DES_LONG *)data,ks3,DES_ENCRYPT);	l=data[0];	r=data[1];	FP(r,l);	data[0]=l;	data[1]=r;	}void DES_decrypt3(DES_LONG *data, DES_key_schedule *ks1,		  DES_key_schedule *ks2, DES_key_schedule *ks3)	{	register DES_LONG l,r;	l=data[0];	r=data[1];	IP(l,r);	data[0]=l;	data[1]=r;	DES_encrypt2((DES_LONG *)data,ks3,DES_DECRYPT);	DES_encrypt2((DES_LONG *)data,ks2,DES_ENCRYPT);	DES_encrypt2((DES_LONG *)data,ks1,DES_DECRYPT);	l=data[0];	r=data[1];	FP(r,l);	data[0]=l;	data[1]=r;	}#endif /* ndef OPENSSL_FIPS */#ifndef DES_DEFAULT_OPTIONS#if !defined(OPENSSL_FIPS_DES_ASM)#undef CBC_ENC_C__DONT_UPDATE_IV#include "ncbc_enc.c" /* DES_ncbc_encrypt */void DES_ede3_cbc_encrypt(const unsigned char *input, unsigned char *output,			  long length, DES_key_schedule *ks1,			  DES_key_schedule *ks2, DES_key_schedule *ks3,			  DES_cblock *ivec, int enc)	{	register DES_LONG tin0,tin1;	register DES_LONG tout0,tout1,xor0,xor1;	register const unsigned char *in;	unsigned char *out;	register long l=length;	DES_LONG tin[2];	unsigned char *iv;	in=input;	out=output;	iv = &(*ivec)[0];	if (enc)		{		c2l(iv,tout0);		c2l(iv,tout1);		for (l-=8; l>=0; l-=8)			{			c2l(in,tin0);			c2l(in,tin1);			tin0^=tout0;			tin1^=tout1;			tin[0]=tin0;			tin[1]=tin1;			DES_encrypt3((DES_LONG *)tin,ks1,ks2,ks3);			tout0=tin[0];			tout1=tin[1];			l2c(tout0,out);			l2c(tout1,out);			}		if (l != -8)			{			c2ln(in,tin0,tin1,l+8);			tin0^=tout0;			tin1^=tout1;			tin[0]=tin0;			tin[1]=tin1;			DES_encrypt3((DES_LONG *)tin,ks1,ks2,ks3);			tout0=tin[0];			tout1=tin[1];			l2c(tout0,out);			l2c(tout1,out);			}		iv = &(*ivec)[0];		l2c(tout0,iv);		l2c(tout1,iv);		}	else		{		register DES_LONG t0,t1;		c2l(iv,xor0);		c2l(iv,xor1);		for (l-=8; l>=0; l-=8)			{			c2l(in,tin0);			c2l(in,tin1);			t0=tin0;			t1=tin1;			tin[0]=tin0;			tin[1]=tin1;			DES_decrypt3((DES_LONG *)tin,ks1,ks2,ks3);			tout0=tin[0];			tout1=tin[1];			tout0^=xor0;			tout1^=xor1;			l2c(tout0,out);			l2c(tout1,out);			xor0=t0;			xor1=t1;			}		if (l != -8)			{			c2l(in,tin0);			c2l(in,tin1);						t0=tin0;			t1=tin1;			tin[0]=tin0;			tin[1]=tin1;			DES_decrypt3((DES_LONG *)tin,ks1,ks2,ks3);			tout0=tin[0];			tout1=tin[1];					tout0^=xor0;			tout1^=xor1;			l2cn(tout0,tout1,out,l+8);			xor0=t0;			xor1=t1;			}		iv = &(*ivec)[0];		l2c(xor0,iv);		l2c(xor1,iv);		}	tin0=tin1=tout0=tout1=xor0=xor1=0;	tin[0]=tin[1]=0;	}#endif /* !defined(OPENSSL_FIPS_DES_ASM) */#endif /* DES_DEFAULT_OPTIONS */

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品国产网站在线观看| 久久99久久99| 亚洲欧洲国产日本综合| 国产欧美一区二区精品秋霞影院| 日韩视频在线永久播放| 91精品国产综合久久福利软件| 欧美色偷偷大香| 欧美丰满少妇xxxxx高潮对白| 4438x亚洲最大成人网| 欧美一二区视频| 2021国产精品久久精品| 亚洲国产电影在线观看| 亚洲欧美另类小说视频| 亚洲乱码日产精品bd| 亚洲一区二三区| 蜜桃视频在线一区| 国产成人综合在线| 色偷偷一区二区三区| 欧美日韩激情在线| 久久综合九色综合97婷婷女人| 爽好多水快深点欧美视频| 日韩黄色片在线观看| 国产精品亚洲一区二区三区妖精| 成人综合婷婷国产精品久久| 欧美最新大片在线看| 日韩欧美精品三级| 国产精品第13页| 性感美女久久精品| 国产福利精品一区| 欧美日韩亚洲综合在线| 26uuu亚洲| 亚洲一区二区三区自拍| 国产精品资源网站| 欧美在线免费观看亚洲| 久久久蜜桃精品| 性感美女极品91精品| 国产999精品久久| 欧美日韩国产片| 中文字幕精品—区二区四季| 午夜精彩视频在线观看不卡| 国产精品自拍av| 依依成人综合视频| 国产丶欧美丶日本不卡视频| 欧美综合在线视频| 国产精品卡一卡二| 国产美女一区二区| 日韩一区二区电影| 亚洲图片欧美色图| 99r国产精品| 久久综合久色欧美综合狠狠| 香蕉加勒比综合久久| av电影在线观看一区| 欧美大片在线观看一区二区| 亚洲福利国产精品| 色综合久久久久综合体桃花网| 久久久久久久久免费| 欧美bbbbb| 欧美日韩国产一级| 夜夜揉揉日日人人青青一国产精品| 国产精品888| 精品少妇一区二区三区视频免付费| 亚洲自拍偷拍av| 色94色欧美sute亚洲线路一ni | 黑人巨大精品欧美一区| 欧美顶级少妇做爰| 亚洲高清免费在线| 日本韩国一区二区| 夜夜嗨av一区二区三区中文字幕| 高清成人在线观看| 国产亚洲一区字幕| 国产不卡免费视频| 国产精品污污网站在线观看| 国产成人小视频| 国产女人水真多18毛片18精品视频| 精品一区二区三区香蕉蜜桃| 精品欧美乱码久久久久久1区2区| 老司机一区二区| 精品国产一区二区亚洲人成毛片 | 成人免费视频播放| 久久精品欧美一区二区三区不卡| 国内精品国产成人| 久久嫩草精品久久久精品| 国产乱码一区二区三区| 久久亚洲综合av| 成人avav影音| 一区二区在线观看免费视频播放| 色av成人天堂桃色av| 五月天久久比比资源色| 日韩一区二区在线看片| 精品亚洲成a人在线观看| 久久久久99精品一区| 暴力调教一区二区三区| 亚洲午夜在线电影| 日韩一级片网站| 丁香亚洲综合激情啪啪综合| 自拍视频在线观看一区二区| 欧美系列日韩一区| 麻豆国产精品777777在线| 国产欧美一区二区精品忘忧草| 成人av网在线| 午夜不卡av在线| 久久综合色播五月| 91福利社在线观看| 六月丁香综合在线视频| 亚洲欧美自拍偷拍色图| 91精品国产综合久久婷婷香蕉| 国产一区欧美一区| 玉米视频成人免费看| 精品日韩在线一区| 91麻豆免费在线观看| 老司机一区二区| 亚洲精品高清在线| 久久久久久一二三区| 色综合久久88色综合天天6| 麻豆精品久久久| 一区二区三区在线观看网站| 欧美α欧美αv大片| 色爱区综合激月婷婷| 国产精品一卡二| 全部av―极品视觉盛宴亚洲| 亚洲三级在线观看| 国产亚洲午夜高清国产拍精品| 欧美日韩国产一二三| 99re这里只有精品视频首页| 精品一区二区久久| 亚洲成人av资源| 《视频一区视频二区| 久久久激情视频| 在线播放亚洲一区| 在线看日本不卡| www.色综合.com| 国产尤物一区二区| 麻豆精品国产91久久久久久| 婷婷六月综合网| 一区二区三区欧美视频| 中文字幕视频一区二区三区久| 久久尤物电影视频在线观看| 777午夜精品视频在线播放| 欧美中文字幕一区| 一本久道久久综合中文字幕| 国产91露脸合集magnet| 国产美女在线观看一区| 极品少妇一区二区| 久久国产尿小便嘘嘘| 久久国产精品免费| 美女视频免费一区| 免费成人在线网站| 人人超碰91尤物精品国产| 五月开心婷婷久久| 日本网站在线观看一区二区三区 | 国产午夜精品久久久久久久| 精品少妇一区二区三区日产乱码 | 欧美亚洲尤物久久| 欧美天天综合网| 欧美精品一二三四| 5月丁香婷婷综合| 日韩一级完整毛片| 精品国产91洋老外米糕| 久久综合九色综合欧美就去吻| 久久综合网色—综合色88| 国产三级一区二区| 国产精品进线69影院| 亚洲欧美日韩国产成人精品影院| 伊人开心综合网| 日本特黄久久久高潮| 国产在线精品国自产拍免费| 国产成人综合精品三级| va亚洲va日韩不卡在线观看| 一本久久精品一区二区| 4438x亚洲最大成人网| 久久综合成人精品亚洲另类欧美| 国产女人18毛片水真多成人如厕| 国产精品女人毛片| 亚洲国产精品久久久久秋霞影院 | 国产精品视频在线看| 综合色天天鬼久久鬼色| 亚洲国产另类av| 久久电影国产免费久久电影| 成人一区二区视频| 91成人国产精品| 亚洲精品一区二区精华| 中文字幕一区二区三区精华液| 一区二区三区在线观看视频| 久久精品国产网站| 91在线观看成人| 69堂亚洲精品首页| 国产精品亲子乱子伦xxxx裸| 性感美女久久精品| 不卡电影一区二区三区| 欧美乱熟臀69xxxxxx| 国产欧美精品国产国产专区| 亚洲成人一二三| 国产成人精品免费一区二区| 精品一区二区三区免费播放| 亚洲精品中文在线| 国产一区二区三区黄视频| 午夜精品在线看| 麻豆精品一二三| 高清在线成人网| 91免费版在线|