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

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

?? rsa_1.txt

?? rsa加密算法源程序
?? TXT
?? 第 1 頁 / 共 4 頁
字號:
From: martin@trillian.UUCP (Martin Nicolay)
Newsgroups: sub.sources.unix,sub.sources.misc
Subject: RSA-Routinen
Date: 22 Nov 88 02:24:25 GMT
Reply-To: martin@trillian.megalon.de (Martin Nicolay)
Organization: Home
Xref: lan sub.sources.unix:2 sub.sources.misc:10

Ich hab eine Implementation des RSA-Verfahrens (Public-Key-Crypt) zusammen
gestrickt.  Enthalten sind dafuer auch Funktionen fuer Arithmetik mit grossen
Zahlen (obere Schranke ist Compile-Option).

Jetzt kann endlich kein Sysop mehr die private Post lesen :-).

Das Programm, dass den Text verschluesselt, ist noch verbesserungswuerdig.
Z.B. nur einen Block mit RSA (weil rechenintensiv) verschluesseln und darin
eine Key uebergeben, mit dem der Rest mit DES verschluesselt wird.

Viel Spass bei der sicheren Mail!

PS:  Mein oeffendlicher Schluessel ist :
	10875FDCBBC59099500630B241458A52B1830D35E6816A739C74534E8017E3F1
	B9ACB73BDC84C47F954047EAFFBE0EFD5499B4431C815130766E78ED0F1E671D
	F926171D67BDECB92374AAB07629C5F0263FCCDCD920F7D90779A8CF439538B1
	6FAF35CE95A06051A6BFD3A7D7AF8B51FE8545C439E4C9F0ADAB7E13303
	#
	C6A65AE2A755FFE2026134AF1B8EC469017D0D9F3884F4D1132D273F066DBE57
	86960811590F6873E52792D387604168183A7C22AA9FDF0F401454C4E65CE274
	78C94992F154F380886E2F410707209665B5629864A358EDE68E0C11F94DA275
	4C84D5F8BE6D7A6DC516FB6C4A4D7ABF13E701CCB2B8ED937E50438C2D

#! /bin/sh
# This is a shell archive, meaning:
# 1. Remove everything above the #! /bin/sh line.
# 2. Save the resulting text in a file.
# 3. Execute the file with /bin/sh (not csh) to create:
#	MANIFEST
#	Makefile
#	README
#	arith.c
#	arith.h
#	conf.h
#	genprim.c
#	genrsa.c
#	nio.c
#	nio.h
#	prim.c
#	prim.h
#	rnd.c
#	rnd.h
#	rsa.c
# This archive created: Tue Nov 22 03:06:33 1988
export PATH; PATH=/bin:/usr/bin:$PATH
echo shar: "extracting 'MANIFEST'" '(389 characters)'
if test -f 'MANIFEST'
then
	echo shar: "will not over-write existing file 'MANIFEST'"
else
sed 's/^X//' << \SHAR_EOF > 'MANIFEST'
XMakefile
Xconf.h			gundlegende Definitionen
Xarith.c			grundlegende arithmetische Routinen
Xarith.h
Xprim.c			Routinen zur probabilistischen Primzahl-Berechnung
Xprim.h
Xnio.c			IO-Routinen
Xnio.h
Xrnd.c			Zufalls-Zahl Erzeugungs Routinen
Xrnd.h
Xgenprim.c		Erzeugung von Primzahlen mit vorgegebener Stellenzahl
Xgenrsa.c		Erzeugung der oeffendlichen/geheimen Schluessel
Xrsa.c			Ver/Entschluesselung
SHAR_EOF
if test 389 -ne "`wc -c < 'MANIFEST'`"
then
	echo shar: "error transmitting 'MANIFEST'" '(should have been 389 characters)'
fi
fi
echo shar: "extracting 'Makefile'" '(709 characters)'
if test -f 'Makefile'
then
	echo shar: "will not over-write existing file 'Makefile'"
else
sed 's/^X//' << \SHAR_EOF > 'Makefile'
XSHELL=/bin/sh
X
XCFLAGS= -O
XLDFLAGS=
X
Xall:	genprim genrsa rsa
X
Xgenprim:	genprim.o rnd.o prim.o nio.o arith.o
X	$(CC) $(LDFLAGS) -o genprim genprim.o rnd.o nio.o prim.o arith.o
X
Xgenrsa:		genrsa.o rnd.o prim.o nio.o arith.o
X	$(CC) $(LDFLAGS) -o genrsa genrsa.o rnd.o nio.o prim.o arith.o
X
Xrsa:		rsa.o nio.o arith.o
X	$(CC) $(LDFLAGS) -o rsa rsa.o nio.o arith.o
X	ln rsa rsaencode
X	ln rsa rsadecode
X
Xrsa.o genrsa.o genprim.o nio.o prim.o arith.o:	conf.h
Xrsa.o genrsa.o genprim.o nio.o prim.o arith.o:	arith.h
Xrsa.o genrsa.o genprim.o nio.o:	nio.h
Xgenrsa.o genprim.o prim.o:	prim.h
Xgenrsa.o genprim.o rnd.o:	rnd.h
X
Xclean:
X	rm -f *.bak *.ba *~ \#* core *.o
X
Xclobber: clean
X	rm -f genrsa genprim rsa rsadecode rsaencode
SHAR_EOF
if test 709 -ne "`wc -c < 'Makefile'`"
then
	echo shar: "error transmitting 'Makefile'" '(should have been 709 characters)'
fi
fi
echo shar: "extracting 'README'" '(4029 characters)'
if test -f 'README'
then
	echo shar: "will not over-write existing file 'README'"
else
sed 's/^X//' << \SHAR_EOF > 'README'
X
X********************************************************************************
X*									       *
X*				R S A - Verfahren			       *
X*									       *
X********************************************************************************
X
XDie Schluessel-Generierung laeuft in 2 Stufen ab.
X
XA)	Es muessen 2 Primzahlen mit genprim berechnet werden. Die
X	Groessenordnung dieser Zahlen sollte 80-130 sein, und sich um
X	eine unterscheiden. Diese Zahlen muessen in einer Datei, mit
X	einem beliebigen Trennzeichen (z.B. '#') dazwischen, abgelegt
X	werden.
X
X		Alle Zahlen werden als Hexadezimalzahlen (fuer
X		Puristen: Sedizimal :-) ein-/ausgegeben.  Bei
X		Ein-/Ausgabe sind White-Spaces (Blank,Tab,Newline)
X		nicht signifikant.
X
X	Der zweite Parameter von genprim gibt die Wahrscheinlichkeit an,
X	mit der die gefundene Zahl wirklich eine Primzahl ist.  Fuer
X	eine Parameter n ist die Wahrscheinlichkeit 1-0.5^n. Fuer n=20
X	ist ein Programierfehler von mir schon wahrscheinlicher :-).
X	Das der Test nur probabilistisch ist, verringert bei vernuenftiger
X	Wahl von n die Aussagekraeftigkeit nur unwesendlich.
X
XB)	Genrsa generiert daraus eine Datei mit oeffendlichem/geheimen
X	Schluessel.  Diese Datei enthaelt 3 Zahlen.  Aus dieser Datei
X	gewinnt man die geheime, in dem man die letzte Zahl (mit Trenn-
X	zeichen) entfernt.  Den oeffendlichen erhaelt man duch Entfernung
X	der zweiten Zahl.
X
XBeispiel:
X	$ genrsa 10 20 >p1		# erste Primzahl
X	$ cat p1
X	2023A0B0BE5
X	$ genrsa 11 20 >p2		# zweite Primzahl
X	$ cat p2
X	537A985EC975
X	$ echo "#" | cat p1 - p2 >pd	# Eingabe fuer genrsa
X	$ genrsa <pd >rd		# Alle Zahlen fertig
X	$ cat rd
X	A7AF134EFB73D789793CA9
X	#
X	9245F9009636D26B7CA5ED
X	#
X	80F408891D5932D10C2585
X
XDieses File rd muss man auf 2 Files verteilen:
X
X	$ cat geheim
X	A7AF134EFB73D789793CA9
X	#
X	9245F9009636D26B7CA5ED
X	$ cat oeffendlich
X	A7AF134EFB73D789793CA9
X	#
X	80F408891D5932D10C2585
X
XDie Dateien p1,p2,pd und rd sollte man schnell wieder loeschen.
X
X	$ rsaencode oeffendlich <data >crypt	# Verschluesseln
X	$ rsadecode geheim <crypt >clear	# Entschluesseln
X
XDie Verschluesselung laeuft in Bloecken ab, deren Groesse von der der
Xersten Zahl des Schluessels Abhaengt.  Alle Bloecke werden als binaere
XDaten behandelt.  Allerdings wird beim Entschluesseln der letzte Block
Xmit ASCII-NULL aufgefuellt.  Dieses ist kein Fehler des RSA-Verfahrens,
Xsondern liegt an meiner Verwendung.  Das RSA-Verfahren verschluesselt
Xeinfach Zahlen. Meiner Umwandlung von Daten in Zahlen ist das Manko
Xanzulasten.  Deshalb muss auch der verschluesselte Text mit btoa oder
Xaehnlichem mailbar gemacht werden.  Zur Reduktion der Blockanzahl kann
Xman natuerlich vorher den Text compressen, da er sowieso binaer behandelt
Xwird.
X
XBei mir (386-er mit 20 MHz) dauert die Ver-/Entschluesselung eines
XBlocks (aus 125 & 124 stelliger Primzahl) 20 Minuten !!!!!!
XDafuer laeuft die Primzahlberechnung in 1-20 Stunden ab :-) !!!!!
XDas haengt von dem zufaelligen Startpunkt der Suche ab.
X
XWer Lust hat, die Verschluesselung so zu modifizieren, dass nur ein
XBlock mit RSA verschluesselt wird, und alle anderen, mit einem darin
Xuebergebenen weiteren Schuessel, mit DES zu verschluesseln, der ist
Xherzlich eingeladen ein solches Programm analog rsa.c zu erstellen.
XDie eigendliche Verschluesselung ist mit den Routinen aus arith.c
Xtrivial.  Es kostet allerding Zeit :-).
X
XAls Warnung fuer Leute, die mit den Routinen arbeiten wollen:
X
XAlle Routinen sind auf Laufzeit optimiert, und enthalten fast keine
XUeberpruefungen auf Ueberlauf o.ae. .  Wenn ein Fehler entdeckt wird
X(was selten ist :-), gibts eine core.  Alle Zahlen muessen >= 0 sein.
X
XMein Wissen ueber RSA und die anderen verwendeten Verfahren hab ich
Xaus:
X	Horster, Patrick:
X	Kryptologie / von Patrick Horster. - Mannheim;
X	Wien; Zuerich: Bibliographisches Institut, 1985.
X	    (Reihe Informatik; 47)
X	    ISBN 3-411-03106-9
X	NE: GT
X
XMartin Nicolay		( martin@trillian.megalon.de )
XFliederstr. 23
X4100 Duisburg 1
XW-Germany
X
XPS:	Falls rand.h nicht vorhanden ist: darin sind nur die Funktionen
X	wie drand48 usw. deklariert.
SHAR_EOF
if test 4029 -ne "`wc -c < 'README'`"
then
	echo shar: "error transmitting 'README'" '(should have been 4029 characters)'
fi
fi
echo shar: "extracting 'arith.c'" '(11614 characters)'
if test -f 'arith.c'
then
	echo shar: "will not over-write existing file 'arith.c'"
else
sed 's/^X//' << \SHAR_EOF > 'arith.c'
X/*******************************************************************************
X*									       *
X*	Copyright (c) Martin Nicolay,  22. Nov. 1988			       *
X*									       *
X*	Wenn diese (oder sinngemaess uebersetzte) Copyright-Angabe enthalten   *
X*	bleibt, darf diese Source fuer jeden nichtkomerziellen Zweck weiter    *
X*	verwendet werden.						       *
X*									       *
X*	martin@trillian.megalon.de					       *
X*									       *
X*******************************************************************************/
X
X#include	"arith.h"
X
X/*
X *	!!!!!!!!!!!!!!!!!!!!!!!!!!!! ACHTUNG !!!!!!!!!!!!!!!!!!!!!!!!!!!!
X *	Es findet keinerlei Ueberpruefung auf Bereichsueberschreitung
X *	statt. Alle Werte muessen natuerliche Zahlen aus dem Bereich
X *		0 ... (MAXINT+1)^MAXLEN-1 sein.
X *	
X *	
X *	Bei keiner Funktion oder Hilsfunktion werden Annahmen getroffen,
X *	ueber die Verschiedenheit von Eingabe- & Ausgabe-Werten.
X *
X *
X *		Funktionen:
X *
X *	a_add( s1, s2, d )
X *		NUMBER *s1,*s2,*d;
X *			*d = *s1 + *s2;
X *
X *	a_assign( *d, *s )
X *		NUMBER *d,*s;
X *			*d = *s;
X *
X * int	a_cmp( c1, c2 )
X *		NUMBER *c1,*c2;
X *			 1 :	falls *c1 >  *c2
X *			 0 :	falls *c1 == *c2
X *			-1 :	falls *c1 <  *c2
X *
X *	a_div( d1, d2, q, r )
X *		NUMBER *d1,*d2,*q,*r;
X *			*q = *d1 / *d2 Rest *r;
X *
X *	a_div2( n )
X *		NUMBER *n;
X *			*n /= 2;
X *
X *	a_ggt( a, b, f )
X *		NUMBER *a,*b,*f;
X *			*f = ( *a, *b );
X *
X *	a_imult( n, m, d )
X *		NUMBER *n;
X *		INT m;
X *		NUMBER *d;
X *			*d = *n * m
X *
X *	a_mult( m1, m2, d )
X *		NUMBER *m1,*m2,*d;
X *			*d = *m1 * *m2;
X *
X *	a_sub( s1, s2, d )
X *		NUMBER *s1,*s2,*d;
X *			*d = *s1 - *s2;
X *
X *		Modulare Funktionen
X *	m_init( n, o )
X *		NUMBER *n,*o;
X *			Initialsierung der Modularen Funktionen
X *			o != 0 : *o = alter Wert
X *
X *	m_add( s1, s2, d )
X *		NUMBER *s1, *s2, *d;
X *			*d = *s1 + *s2;
X *
X *	m_mult( m1, m2, d )
X *		NUMBER *m1,*m2,*d;
X *
X *	m_exp( x, n, z )
X *		NUMBER *x,*n,*z;
X *			*z = *x exp *n;
X *
X *
X *		Hilfs-Funktionen:
X *
X * int	n_bits( n, b )
X *		NUMBER *n;
X *		int b;
X *			return( unterste b Bits der Dualdarstellung von n)
X *
X *	n_div( d1, z2, q, r )
X *		NUMBER *d1,z2[MAXBIT],*q,*r;
X *			*q = *d1 / z2[0] Rest *r;
X *			z2[i] = z2[0] * 2^i,  i=0..MAXBIT-1
X *
X * int	n_cmp( i1, i2, l )
X *		INT i1[l], i2[l];
X *			 1 :	falls i1 >  i2
X *			 0 :	falls i1 == i2
X *			-1 :	falls i1 <  i2
X *
X * int	n_mult( n, m, d, l)
X *		INT n[l], m, d[];
X *			d = m * n;
X *			return( sizeof(d) ); d.h. 'l' oder 'l+1'
X *
X * int	n_sub( p1, p2, p3, l, lo )
X *		INT p1[l], p2[lo], p3[];
X *			p3 = p1 - p2;
X *			return( sizeof(p3) ); d.h. '<= min(l,lo)'
X *
X * int	n_bitlen( n )
X * 		NUMBER *n;
X *			return( sizeof(n) in bits )
X *
X */
X
X
X/*
X * Konstante 1, 2
X */
XNUMBER a_one = {
X	1,
X	{ (INT)1, },
X};
X
XNUMBER a_two = {
X#if MAXINT == 1
X	2,
X	{ 0, (INT)1, },
X#else
X	1,
X	{ (INT)2, },
X#endif
X};
X
X
X/*
X * Vergleiche zwei INT arrays der Laenge l
X */
Xint n_cmp( i1, i2, l )
XINT *i1,*i2;
X{
X	i1 += (l-1);			/* Pointer ans Ende		*/ 
X	i2 += (l-1);
X	 
X	for (;l--;)
X		if ( *i1-- != *i2-- )
X			return( i1[1] > i2[1] ? 1 : -1 );
X	
X	return(0);
X}
X
X/*
X * Vergleiche zwei NUMBER
X */
Xint a_cmp( c1, c2 )
XNUMBER *c1,*c2;
X{
X	int l;
X					/* bei verschiedener Laenge klar*/
X	if ( (l=c1->n_len) != c2->n_len)
X		return( l - c2->n_len);
X	
X					/* vergleiche als arrays	*/
X	return( n_cmp( c1->n_part, c2->n_part, l) );
X}
X
X/*
X * Zuweisung einer NUMBER (d = s)
X */
Xvoid a_assign( d, s )
XNUMBER *d,*s;
X{
X	int l;
X	
X	if (s == d)			/* nichts zu kopieren		*/
X		return;
X	
X	if (l=s->n_len)
X		memcpy( d->n_part, s->n_part, sizeof(INT)*l);
X	
X	d->n_len = l;
X}
X
X/*
X * Addiere zwei NUMBER (d = s1 + s2)
X */
Xvoid a_add( s1, s2, d )
XNUMBER *s1,*s2,*d;
X{
X	int l,lo,ld,same;
X	register LONG sum;
X	register INT *p1,*p2,*p3;
X	register INT b;
X	
X				/* setze s1 auch die groessere Zahl	*/
X	l = s1->n_len;
X	if ( (l=s1->n_len) < s2->n_len ) {
X		NUMBER *tmp = s1;
X		
X		s1 = s2;
X		s2 = tmp;
X		
X		l = s1->n_len;
X	}
X
X	ld = l;
X	lo = s2->n_len;
X	p1 = s1->n_part;
X	p2 = s2->n_part;
X	p3 = d->n_part;
X	same = (s1 == d);
X	sum = 0;
X	
X	while (l --) {
X		if (lo) {		/* es ist noch was von s2 da	*/
X			lo--;
X			b = *p2++;
X		}
X		else
X			b = 0;		/* ansonten 0 nehmen		*/
X		
X		sum += (LONG)*p1++ + (LONG)b;
X		*p3++ = TOINT(sum);
X
X		if (sum > (LONG)MAXINT) {	/* carry merken		*/
X			sum = 1;
X		}
X		else
X			sum = 0;
X
X		if (!lo && same && !sum)	/* nichts mehr zu tuen	*/
X			break;
X	}
X	
X	if (sum) {		/* letztes carry beruecksichtigen	*/
X		ld++;
X		*p3 = sum;
X	}
X	
X	d->n_len = ld;			/* Laenge setzen		*/
X}
X
X/*
X * Subtrahiere zwei INT arrays. return( Laenge Ergebniss )
X * l == Laenge p1
X * lo== Laenge p3
X */
Xint n_sub( p1, p2, p3, l, lo )
XINT *p1,*p2,*p3;
Xint l,lo;
X{
X	int ld,lc,same;
X	int over = 0;
X	register LONG dif;
X	LONG a,b;
X	
X	same = (p1 == p3);			/* frueher Abbruch moeglich */
X	
X	for (lc=1, ld=0; l--; lc++) {
X		a = (LONG)*p1++;
X		if (lo) {			/* ist noch was von p2 da ? */
X			lo--;
X			b = (LONG)*p2++;
X		}
X		else
X			b=0;			/* ansonten 0 nehmen	*/
X
X		if (over)			/* frueherer Overflow	*/
X			b++;
X		if ( b > a ) {			/* jetzt Overflow ?	*/
X			over = 1;
X			dif = (MAXINT +1) + a;
X		}
X		else {
X			over = 0;
X			dif = a;
X		}
X		dif -= b;
X		*p3++ = (INT)dif;
X		
X		if (dif)			/* Teil != 0 : Laenge neu */
X			ld = lc;
X		if (!lo && same && !over) {	/* nichts mehr zu tuen	*/
X			if (l > 0)		/* Laenge korrigieren	*/
X				ld = lc + l;
X			break;
X		}
X	}
X
X	return( ld );
X}
X
X/*
X * Subtrahiere zwei NUMBER (d= s1 - s2)
X */
Xvoid a_sub( s1, s2, d )
XNUMBER *s1,*s2,*d;
X{
X	d->n_len = n_sub( s1->n_part, s2->n_part, d->n_part
X			 ,s1->n_len, s2->n_len );
X}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色综合天天做天天爱| 欧美国产精品劲爆| 国产精品丝袜一区| 亚洲h精品动漫在线观看| 国产精品亚洲第一区在线暖暖韩国| 色婷婷综合久色| 国产欧美日韩麻豆91| 美日韩一区二区| 欧美少妇一区二区| 亚洲人成网站色在线观看| 国产乱码精品1区2区3区| 7777精品伊人久久久大香线蕉经典版下载 | 不卡视频一二三| 日韩一区二区影院| 一区二区三区欧美在线观看| 成人a免费在线看| 久久久综合九色合综国产精品| 亚洲一二三专区| 色哟哟国产精品免费观看| 国产精品久久99| 粉嫩高潮美女一区二区三区| 国产欧美一区二区三区鸳鸯浴| 免费日韩伦理电影| 69av一区二区三区| 肉色丝袜一区二区| 欧美久久免费观看| 男男成人高潮片免费网站| 这里只有精品视频在线观看| 亚洲成av人片一区二区三区| 欧美日韩一区成人| 视频精品一区二区| 欧美成人性福生活免费看| 蜜臀av性久久久久蜜臀av麻豆| 日韩写真欧美这视频| 毛片基地黄久久久久久天堂| 亚洲精品一区二区三区在线观看| 久久国产人妖系列| 欧美极品另类videosde| 97超碰欧美中文字幕| 亚洲欧美区自拍先锋| 欧美日韩在线播放三区四区| 五月天久久比比资源色| 日韩精品一区二区三区视频播放| 精品中文字幕一区二区| 久久蜜桃av一区二区天堂| 成人av网址在线观看| 亚洲丝袜精品丝袜在线| 91.成人天堂一区| 国产麻豆成人传媒免费观看| 亚洲国产精华液网站w | 国产精品一区二区三区四区| 国产欧美日韩一区二区三区在线观看| 成人午夜免费av| 亚洲国产成人91porn| 欧美一区二区久久| 丁香激情综合五月| 午夜精品一区二区三区电影天堂| 精品久久久久久无| 91网站在线播放| 蜜桃av一区二区三区电影| 国产精品久久久久久亚洲毛片| 欧洲国产伦久久久久久久| 久久国产精品色婷婷| 亚洲精品乱码久久久久久| 91精品欧美久久久久久动漫| 国产xxx精品视频大全| 亚洲国产精品欧美一二99| 26uuu久久天堂性欧美| 欧美中文字幕一区二区三区| 国产乱码字幕精品高清av | 精品在线亚洲视频| 国产精品久久毛片av大全日韩| 欧美日韩一区在线观看| 懂色av一区二区夜夜嗨| 香蕉av福利精品导航| 中文字幕日韩av资源站| 日韩精品一区二区在线| 欧美午夜一区二区三区| 国产91在线观看| 精品一区二区影视| 亚洲午夜精品久久久久久久久| 国产日本亚洲高清| 欧美va日韩va| 欧美一区三区二区| 色欧美片视频在线观看| 国内精品伊人久久久久av一坑 | 欧美日韩精品一区二区三区蜜桃 | 欧美午夜免费电影| 成人综合在线观看| 精品一二线国产| 亚洲国产一区在线观看| 亚洲欧美日韩久久| 国产精品青草综合久久久久99| 日韩欧美国产麻豆| 欧美日韩精品电影| 91高清视频在线| 99re热这里只有精品免费视频| 国内成人自拍视频| 韩国成人精品a∨在线观看| 免费看欧美美女黄的网站| 亚洲一区二区视频在线观看| 亚洲人成电影网站色mp4| 国产日产欧美一区二区三区 | 91精品啪在线观看国产60岁| 欧美中文字幕一区| 91丨porny丨蝌蚪视频| 国产福利91精品一区二区三区| 美日韩一级片在线观看| 麻豆免费精品视频| 理论电影国产精品| 麻豆国产欧美一区二区三区| 免费高清在线一区| 免费高清成人在线| 麻豆免费精品视频| 国产乱码精品一品二品| 懂色av一区二区夜夜嗨| 成人av一区二区三区| 97se狠狠狠综合亚洲狠狠| 99精品视频在线观看| 99精品桃花视频在线观看| 91美女蜜桃在线| 欧美色综合影院| 欧美一卡2卡3卡4卡| 精品美女一区二区| 国产免费观看久久| 亚洲欧洲中文日韩久久av乱码| 亚洲欧美二区三区| 三级久久三级久久久| 捆绑调教一区二区三区| 国产主播一区二区| 播五月开心婷婷综合| 91麻豆国产福利精品| 欧美精品日韩一区| 久久久久久久久一| 亚洲精品免费电影| 日本少妇一区二区| 国产成人精品一区二区三区网站观看| 成人a免费在线看| 欧美浪妇xxxx高跟鞋交| 精品久久久久久无| 亚洲精品一二三| 精一区二区三区| 色综合久久久久综合| 日韩一级黄色大片| 国产精品视频一二| 亚洲高清视频在线| 国产一区二区电影| 欧美系列亚洲系列| 久久久99久久| 五月婷婷综合网| 成人妖精视频yjsp地址| 欧美日韩国产中文| 国产午夜亚洲精品羞羞网站| 一级日本不卡的影视| 国产精品456露脸| 欧美三区在线视频| 国产精品色在线| 日韩极品在线观看| 99精品黄色片免费大全| 欧美哺乳videos| 亚洲线精品一区二区三区八戒| 国产综合久久久久久久久久久久| 在线看一区二区| 亚洲国产精品ⅴa在线观看| 日韩国产欧美一区二区三区| 99视频在线观看一区三区| 精品视频999| 亚洲欧美一区二区在线观看| 蜜臀av一区二区三区| 欧美三级电影在线观看| 欧美激情自拍偷拍| 久久不见久久见免费视频1 | 91蝌蚪porny| 久久久久亚洲综合| 日日摸夜夜添夜夜添亚洲女人| 91伊人久久大香线蕉| 久久久久国产免费免费| 日本不卡不码高清免费观看| 色哦色哦哦色天天综合| 久久人人爽人人爽| 理论电影国产精品| 日韩天堂在线观看| 日韩成人av影视| 精品视频在线看| 亚洲小少妇裸体bbw| 在线观看免费视频综合| 亚洲视频一区在线观看| 成人黄色av电影| 欧美国产日韩精品免费观看| 国产一区二区三区四区在线观看| 在线不卡一区二区| 偷偷要91色婷婷| 欧美久久免费观看| 喷水一区二区三区| 欧美一区二区久久久| 日本女优在线视频一区二区| 欧美一区二区观看视频| 免费的国产精品| 久久先锋影音av鲁色资源| 极品美女销魂一区二区三区免费|