午夜视频免费看_日韩三级电影网站_国产精品久久一级_亚洲一级在线播放_人妻体内射精一区二区三区_91夜夜揉人人捏人人添红杏_91福利在线导航_国产又粗又猛又黄又爽无遮挡_欧美日韩一区在线播放_中文字幕一区二区三区四区不卡 _日日夜夜精品视频免费观看_欧美韩日一区二区三区

主頁 > 知識庫 > golang 如何獲取pem格式RSA公私鑰長度

golang 如何獲取pem格式RSA公私鑰長度

熱門標簽:不封卡外呼系統 寧波語音外呼系統公司 重慶慶云企業400電話到哪申請 地圖標注免費定制店 鄭州智能語音電銷機器人價格 湛江crm外呼系統排名 上海極信防封電銷卡價格 仙桃400電話辦理 宿遷便宜外呼系統代理商

因在做license注冊機制當中,有對根據本地RSA pem密鑰文件判斷出RSA的公私密鑰長度的需求(即:根據pem內容判斷出RSA密鑰是1024位或者2048位,或者其他位數等),因此個人通過思考,摸索整理出一個方法,予以記錄,備用,分享。

package main
import (
	"crypto/rsa"
	"crypto/x509"
	"encoding/pem"
	"errors"
	"fmt"
	"io/ioutil"
	"os"
)
//全局變量
var privateKey, publicKey []byte
func init() {
	var err error
	publicKey, err = ioutil.ReadFile("public.pem")
	if err != nil {
		os.Exit(-1)
	}
	privateKey, err = ioutil.ReadFile("private.pem")
	if err != nil {
		os.Exit(-1)
	}
}
/**
 * @brief 獲取RSA公鑰長度
 * @param[in]    PubKey				  RSA公鑰
 * @return  成功返回 RSA公鑰長度,失敗返回error	錯誤信息
 */
func GetPubKeyLen(PubKey []byte) (int, error) {
	if PubKey == nil {
		return 0, errors.New("input arguments error")
	}
	block, _ := pem.Decode(PubKey)
	if block == nil {
		return 0, errors.New("public rsaKey error")
	}
	pubInterface, err := x509.ParsePKIXPublicKey(block.Bytes)
	if err != nil {
		return 0, err
	}
	pub := pubInterface.(*rsa.PublicKey)
	return pub.N.BitLen(), nil
}
/**
 * @brief 獲取RSA私鑰長度
 * @param[in]    PriKey				  RSA私鑰
 * @return  成功返回 RSA私鑰長度,失敗返回error	錯誤信息
 */
func GetPriKeyLen(PriKey []byte) (int, error) {
	if PriKey == nil {
		return 0, errors.New("input arguments error")
	}
	block, _ := pem.Decode(PriKey)
	if block == nil {
		return 0, errors.New("private rsaKey error!")
	}
	priv, err := x509.ParsePKCS1PrivateKey(block.Bytes)
	if err != nil {
		return 0, err
	}
	return priv.N.BitLen(), nil
}
func main() {
	//獲取rsa 公鑰長度
	PubKeyLen, _ := GetPubKeyLen(publicKey)
	fmt.Println("pbulic key len is ", PubKeyLen)
	//獲取rsa 私鑰長度
	PriKeyLen, _ := GetPriKeyLen(privateKey)
	fmt.Println("private key len is ", PriKeyLen)
}

附錄:以下程序是產生RSA公私密鑰的程序,附件,方便測試。

package main
import (
 "crypto/rand"
 "crypto/rsa"
 "crypto/x509"
 "encoding/pem"
 "flag"
 "log"
 "os"
)
func main() {
 var bits int
 flag.IntVar(bits, "b", 1024, "密鑰長度,默認為1024位")
 flag.Parse()
 
 if err := GenRsaKey(bits); err != nil {
 log.Fatal("密鑰文件生成失敗!")
 }
 log.Println("密鑰文件生成成功!")
}
func GenRsaKey(bits int) error {
 // 生成私鑰文件
 privateKey, err := rsa.GenerateKey(rand.Reader, bits)
 if err != nil {
 return err
 }
 derStream := x509.MarshalPKCS1PrivateKey(privateKey)
 block := pem.Block{
 Type: "私鑰",
 Bytes: derStream,
 }
 file, err := os.Create("private.pem")
 if err != nil {
 return err
 }
 err = pem.Encode(file, block)
 if err != nil {
 return err
 }
 // 生成公鑰文件
 publicKey := privateKey.PublicKey
 derPkix, err := x509.MarshalPKIXPublicKey(publicKey)
 if err != nil {
 return err
 }
 block = pem.Block{
 Type: "公鑰",
 Bytes: derPkix,
 }
 file, err = os.Create("public.pem")
 if err != nil {
 return err
 }
 err = pem.Encode(file, block)
 if err != nil {
 return err
 }
 return nil
}

補充:golang 使用RSA生成公私鑰,加密,解密,并使用SHA256進行簽名,驗證

話不多說直接上代碼:

package main
import (
	"crypto"
	"crypto/rand"
	"crypto/rsa"
	"crypto/sha256"
	"crypto/x509"
	"encoding/hex"
	"encoding/pem"
	"errors"
	"fmt"
)
func main() {
	//rsa 密鑰文件產生
	fmt.Println("-------------------------------獲取RSA公私鑰-----------------------------------------")
	prvKey, pubKey := GenRsaKey()
	fmt.Println(string(prvKey))
	fmt.Println(string(pubKey))
	fmt.Println("-------------------------------進行簽名與驗證操作-----------------------------------------")
	var data = "臥了個槽,這么神奇的嗎??!!! ԅ(¯﹃¯ԅ) !!!!!!)"
	fmt.Println("對消息進行簽名操作...")
	signData := RsaSignWithSha256([]byte(data), prvKey)
	fmt.Println("消息的簽名信息: ", hex.EncodeToString(signData))
	fmt.Println("\n對簽名信息進行驗證...")
	if RsaVerySignWithSha256([]byte(data), signData, pubKey) {
		fmt.Println("簽名信息驗證成功,確定是正確私鑰簽名!!")
	}
	fmt.Println("-------------------------------進行加密解密操作-----------------------------------------")
	ciphertext := RsaEncrypt([]byte(data), pubKey)
	fmt.Println("公鑰加密后的數據:", hex.EncodeToString(ciphertext))
	sourceData := RsaDecrypt(ciphertext, prvKey)
	fmt.Println("私鑰解密后的數據:", string(sourceData))
}
//RSA公鑰私鑰產生
func GenRsaKey() (prvkey, pubkey []byte) {
	// 生成私鑰文件
	privateKey, err := rsa.GenerateKey(rand.Reader, 1024)
	if err != nil {
		panic(err)
	}
	derStream := x509.MarshalPKCS1PrivateKey(privateKey)
	block := pem.Block{
		Type: "RSA PRIVATE KEY",
		Bytes: derStream,
	}
	prvkey = pem.EncodeToMemory(block)
	publicKey := privateKey.PublicKey
	derPkix, err := x509.MarshalPKIXPublicKey(publicKey)
	if err != nil {
		panic(err)
	}
	block = pem.Block{
		Type: "PUBLIC KEY",
		Bytes: derPkix,
	}
	pubkey = pem.EncodeToMemory(block)
	return
}
//簽名
func RsaSignWithSha256(data []byte, keyBytes []byte) []byte {
	h := sha256.New()
	h.Write(data)
	hashed := h.Sum(nil)
	block, _ := pem.Decode(keyBytes)
	if block == nil {
		panic(errors.New("private key error"))
	}
	privateKey, err := x509.ParsePKCS1PrivateKey(block.Bytes)
	if err != nil {
		fmt.Println("ParsePKCS8PrivateKey err", err)
		panic(err)
	}
	signature, err := rsa.SignPKCS1v15(rand.Reader, privateKey, crypto.SHA256, hashed)
	if err != nil {
		fmt.Printf("Error from signing: %s\n", err)
		panic(err)
	}
	return signature
}
//驗證
func RsaVerySignWithSha256(data, signData, keyBytes []byte) bool {
	block, _ := pem.Decode(keyBytes)
	if block == nil {
		panic(errors.New("public key error"))
	}
	pubKey, err := x509.ParsePKIXPublicKey(block.Bytes)
	if err != nil {
		panic(err)
	}
	hashed := sha256.Sum256(data)
	err = rsa.VerifyPKCS1v15(pubKey.(*rsa.PublicKey), crypto.SHA256, hashed[:], signData)
	if err != nil {
		panic(err)
	}
	return true
}
// 公鑰加密
func RsaEncrypt(data, keyBytes []byte) []byte {
	//解密pem格式的公鑰
	block, _ := pem.Decode(keyBytes)
	if block == nil {
		panic(errors.New("public key error"))
	}
	// 解析公鑰
	pubInterface, err := x509.ParsePKIXPublicKey(block.Bytes)
	if err != nil {
		panic(err)
	}
	// 類型斷言
	pub := pubInterface.(*rsa.PublicKey)
	//加密
	ciphertext, err := rsa.EncryptPKCS1v15(rand.Reader, pub, data)
	if err != nil {
		panic(err)
	}
	return ciphertext
}
// 私鑰解密
func RsaDecrypt(ciphertext, keyBytes []byte) []byte {
	//獲取私鑰
	block, _ := pem.Decode(keyBytes)
	if block == nil {
		panic(errors.New("private key error!"))
	}
	//解析PKCS1格式的私鑰
	priv, err := x509.ParsePKCS1PrivateKey(block.Bytes)
	if err != nil {
		panic(err)
	}
	// 解密
	data, err := rsa.DecryptPKCS1v15(rand.Reader, priv, ciphertext)
	if err != nil {
		panic(err)
	}
	return data
}

運行結果:

-------------------------------獲取RSA公私鑰-----------------------------------------
-----BEGIN RSA PRIVATE KEY-----
MIICXAIBAAKBgQCgPwlGJrWqTYaoMkI8jXkEI8ewQ7E57G2Fi91WTXMMK7X6GsT9
VmnRcq++Rk/VS+4IPBlfWyVRg0NfQDyuKjed21fUPa9AIbpYWHgP/tojyeYC1+Ra
Xncrt9kLp7nW4FZMJmzwU9hfxIB0nhDQqhJenjdBZuYZfkICfMqyqbVkAwIDAQAB
AoGAJRcSDXOuPrHdBhdD74ILTaL+eFTis3Z+zxdVbsFUbK+9WhtSFxUmPv1dohvi
JIuDl9JZSRHurFRGhsh2gxVwc7JXwWfD0DmD8dvdzr8q85Jml9YVZ7uhHFqSO4cY
I7dlBOd7Uwjnc39E/d+1E/kWVNfKt7opPHgt02zOHLSxkbECQQDS7H3myu3oLOi0
Slpd1MmmHVOo2cqJ1b3H6E8JtEjmHGswWTYvQNAe4yZ+Kffsp5LUYujedncPKvEj
4G+iz44bAkEAwn4Bx30FKTri/tybgSnCWKwTGSX479829Xucrm5pYU/3D5/PeJQL
Ra4YSyg2/hU3ZBrue6CdzYJgGXNGEWhAOQJBALMlOB4A96X+FruidzRA2fBj8j10
lakSSHl1H0RfwpbnRkcvTm0+AEZrqbL4lGGFRplrVNw2BBN25o8RPeArp0cCQEhu
kw0PI1fqhVUzJXqh6a4KT4aDHMWAlMAxi/VuSzKhjDo2Yxbd06DcqFF9JZXUou9W
FFDYTUyW7GEuC/85mwkCQCOEjUQX0C3JCSr6fyZIjpEr+znyc9eFHyBp+533Ur4g
eFu2ewJ3ufJiUBmEj1rEQku8W7h9DS2rXl10IiSwUAA=
-----END RSA PRIVATE KEY-----
-----BEGIN PUBLIC KEY-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCgPwlGJrWqTYaoMkI8jXkEI8ew
Q7E57G2Fi91WTXMMK7X6GsT9VmnRcq++Rk/VS+4IPBlfWyVRg0NfQDyuKjed21fU
Pa9AIbpYWHgP/tojyeYC1+RaXncrt9kLp7nW4FZMJmzwU9hfxIB0nhDQqhJenjdB
ZuYZfkICfMqyqbVkAwIDAQAB
-----END PUBLIC KEY-----
-------------------------------進行簽名與驗證操作-----------------------------------------
對消息進行簽名操作...
消息的簽名信息: 24a29efbc27e7b84c3b0eed683af28915381b2a0312f5383143cd2006b804d3a16c2b4750fb1857445b46664b795b6cefd402c5cf25e0f28116b7b50f5c16e80af9f9481def0161c6dac7a5d05c56595b891d84091e444ef4012ba1a0efd5cd2ff17c6dfdc109a2a3349ae2523217706a03042ea16d84fcf7d3dae37ee36d2e8
對簽名信息進行驗證...
簽名信息驗證成功,確定是正確私鑰簽名!!
-------------------------------進行加密解密操作-----------------------------------------
公鑰加密后的數據: 2b34d46a62317f4f5e5c8618671831c0970cef2eeddc0d3aca02e1d5b411a067844e1250a1f69cbb1cbcb0cb1964af85836faa346f9ce9fac2710d4fa18e49ee1c4c73496183952fa95a54dd2d633b115504f0a365bac6d022399059a53f51c474e5e4f0f8eefde61bb85d5d812b67114f5d419c33496acaf11d3d84828733f7
私鑰解密后的數據: 臥了個槽,這么神奇的嗎??!!! ԅ(¯﹃¯ԅ) !!!!!!)

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

您可能感興趣的文章:
  • Go 語言中gin使用gzip壓縮遇到的問題
  • go判斷文件夾是否存在并創建的實例
  • go 協程返回值處理操作
  • golang實現的文件上傳下載小工具
  • Golang 實現復制文件夾同時復制文件
  • golang文件讀取-按指定BUFF大小讀取方式
  • 使用go讀取gzip格式的壓縮包的操作

標簽:遼寧 物業服務 安康 西雙版納 海南 儋州 電子產品 青海

巨人網絡通訊聲明:本文標題《golang 如何獲取pem格式RSA公私鑰長度》,本文關鍵詞  golang,如何,獲取,pem,格式,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《golang 如何獲取pem格式RSA公私鑰長度》相關的同類信息!
  • 本頁收集關于golang 如何獲取pem格式RSA公私鑰長度的相關信息資訊供網民參考!
  • 推薦文章
    开心激情综合网| 另类的小说在线视频另类成人小视频在线 | 91爱爱小视频k| 免费91麻豆精品国产自产在线观看| 久久伊人精品一区二区三区| 九九久久久久久久久激情| 久久琪琪电影院| 国产精品一香蕉国产线看观看 | 91精品婷婷国产综合久久| 欧美精品aⅴ在线视频| 亚洲精品久久久久中文字幕二区| 日韩亚洲精品视频| 97在线视频免费观看| 成人欧美一区二区三区黑人孕妇| 精品蜜桃一区二区三区| 一本二本三本亚洲码 | 成人a免费视频| 久久综合一区二区三区| 野外做受又硬又粗又大视频√| 国产视频一区二区视频| 偷拍女澡堂一区二区三区| 乱h高h女3p含苞待放| 一道本无吗一区| 免费一级片91| 中文欧美字幕免费| 4438成人网| 欧美伦理91i| 精品国产一区二区三| 久久久久久www| 国产精品无码一区二区三| 日韩av一区二区在线播放| 刘亦菲毛片一区二区三区| 91蜜桃网址入口| 色婷婷综合久久久久中文一区二区 | 午夜性色福利视频| 久久久久国色av免费看影院| 色综合色综合色综合| 亚洲欧美国产va在线影院| 日韩美女福利视频| 日韩国产精品一区二区三区| 亚洲综合婷婷久久| 超碰手机在线观看| 污视频在线免费| 国产精品人妖ts系列视频| 欧美裸体xxxx极品少妇| 日韩三级av在线播放| 视频一区欧美精品| 日韩av在线发布| 欧美韩日一区二区三区| 亚洲精选视频在线| 久久青草欧美一区二区三区| 97av免费视频| 五月天婷婷影视| 精品无码av在线| 蜜臀av国产精品久久久久| 一区二区三区四区不卡视频| 一区二区三区美女xx视频| 成人做爰www免费看视频网站| 999久久欧美人妻一区二区| 不卡一区二区在线观看| 天天干天天插天天操| 亚洲一区二区三区四区在线免费观看 | 色一区av在线| 亚洲草草视频| 国产精品久久免费观看| 日本网站在线观看一区二区三区| 亚洲一区二区视频| 欧美国产激情18| 青青视频免费在线| 国产精品久久久久久久精| 精品系列免费在线观看| 日韩欧美一级二级三级久久久| 国产三级精品网站| 久久久久久久久久一区二区| 国产精品久久777777换脸| 亚洲黄色小说网站| 91wwwcom在线观看| 不卡av免费在线| 国产精品无码专区av免费播放| 亚洲美女偷拍久久| 69精品小视频| 污视频网站观看| av一区二区三| 欧美日韩另类字幕中文| 国产精品久久久久久久久久尿| 国产一二三区av| 韩国av免费在线| 欧美日韩综合色| 99热在线播放| 羞羞在线观看视频| 国产亚洲精品bt天堂精选| 日韩中文字幕在线免费观看| 又粗又黑又大的吊av| 久久午夜鲁丝片| 日本韩国精品在线| 狠狠爱一区二区三区| 毛片久久久久久| 国产欧美一区二区三区在线看蜜臀 | 粉嫩aⅴ一区二区三区四区| 国产视频精品自拍| 青春草在线视频免费观看| 国产精品日日夜夜| 亚洲综合清纯丝袜自拍| 国产在线观看精品一区二区三区| 国内精品久久99人妻无码| 99综合电影在线视频| 欧美高跟鞋交xxxxhd| 亚洲三级在线视频| 国产成人午夜高潮毛片| 久久夜精品香蕉| 污污视频在线免费| 国产91综合一区在线观看| 久久成人精品视频| 中文字幕乱妇无码av在线| 成人在线视频一区| 91精品国产99| 日韩一区二区a片免费观看| 久久免费电影网| 清纯唯美日韩制服另类| 精品无码人妻一区| 国产精品灌醉下药二区| 成人欧美一区二区三区在线 | 美女扒开大腿让男人桶| 国产高清免费av| 亚洲精品国产美女| 午夜两性免费视频| 六月婷婷色综合| 久久国产精品精品国产色婷婷| 国产成人a亚洲精v品无码| 天天干天天插天天操| 亚洲精品永久免费| 五月六月丁香婷婷| 久久久综合激的五月天| 国产精品高潮呻吟久久av野狼| 国产三级精品三级观看| 亚洲无人区一区| 日韩和欧美的一区二区| 午夜精品一区二区三| 国产午夜精品免费一区二区三区 | 97中文在线观看| 中文字幕国产在线观看| 欧美一级淫片007| 成人免费xxxxx在线视频| 国产成人综合在线播放| 国产精品99一区| 日韩久久久久久久久| 日韩一区二区不卡| 国产精品拍拍拍| 91美女精品福利| 国产一区二区自拍| 国产特级aaaaaa大片| 中文字幕av一区中文字幕天堂 | 成人亚洲一区二区一| 国产精品激情自拍| 亚洲综合图片网| 精品香蕉一区二区三区| 亚洲图片综合网| 午夜激情一区二区| 免费在线a视频| 久久综合九色综合97婷婷女人| 国产精品高清一区二区三区| 亚洲永久精品一区| 夜夜嗨av一区二区三区免费区 | 99久久国产综合色|国产精品| 国产专区精品视频| 国产三级精品在线观看| 九九热最新视频//这里只有精品| 亚洲熟女www一区二区三区| 欧美无砖专区一中文字| 黄色成人免费看| 亚洲丝袜精品丝袜在线| 午夜啪啪福利视频| 不卡一卡二卡三乱码免费网站| 国产一区二区在线网站| 日韩av一级电影| 成人免费视频在线观看超级碰| 成 人 免费 黄 色| 91精品国产91久久久久久久久| 久久精品视频8| 少妇高潮久久77777| 国产美女久久久久久| 日韩视频一区二区三区在线播放| 偷偷色噜狠狠狠狠的777米奇| 在线视频你懂得一区二区三区| 羞羞的视频在线| 一本色道综合亚洲| 国产乱国产乱老熟300部视频| 色女孩综合影院| 中文字幕无码毛片免费看| 日本精品一区二区三区四区的功能| 国产美女视频免费看| 色婷婷av一区二区三区软件| 久久久久中文字幕亚洲精品| 在线电影国产精品| 亚洲自拍偷拍图| 亚洲欧美国产一本综合首页| 免费国产羞羞网站美图| 中文字幕亚洲天堂| 小泽玛利亚一区二区三区视频| **欧美日韩vr在线| 婷婷色在线观看| 国内精品视频在线播放| 国产成人av电影在线| 中国一级大黄大黄大色毛片| 亚洲人成网站影音先锋播放| av亚洲天堂网| 91精品国产一区二区三区| 亚洲天堂精品一区| 中文字幕亚洲无线码a| 亚洲综合五月天婷婷丁香| 国产精品久久久久久久久久东京| 日本成人在线一区| 欧美aaa在线观看| 国产精品久久久久久久久快鸭| 亚洲国产成人va在线观看麻豆| 欧美一区二区三区在线视频| 久久免费黄色网址| 国产精品wwwwww| 国产成人高清视频| 三级4级全黄60分钟| 欧美色图在线观看| 免费在线观看国产精品| 97碰碰碰免费色视频| 爽好多水快深点欧美视频| 亚洲国产午夜伦理片大全在线观看网站| 国产精品久久久久一区二区三区| 性生活在线视频| 日韩精品欧美国产精品忘忧草| 久久久久久久久久一级| 97神马电影| 国产欧美在线观看一区| 日本性生活一级片| 久久天天躁狠狠躁老女人| 天堂av资源网| 伊人网在线免费| 欧美日韩国产精品自在自线| 日本高清www免费视频| 91中文字精品一区二区| 国产精品久久毛片| 精品一区二区三区蜜桃在线| 91国产精品电影| 国产成人自拍在线| 国产一级片中文字幕| 日韩在线www| 激情综合一区二区三区| 狠狠热免费视频| 精品亚洲va在线va天堂资源站| 国内精品久久久久久久久久久| 亚洲三区四区| 欧美精品 国产精品| 中文字幕第一页在线播放| 日本不卡一区| 欧美日韩国产综合一区二区 | 成年人看片网站| 欧美精品在线极品| 成人污视频在线观看| 大尺度在线观看| 奇米一区二区三区四区久久| 91在线一区二区| 丁香激情五月少妇| 亚洲最大av网站| 欧美性少妇18aaaa视频| 蜜臀99久久精品久久久久小说| 视频一区国产精品| 91麻豆精品国产91| 首页欧美精品中文字幕| 亚洲欧美日韩综合网| 欧美极品美女视频网站在线观看免费 | 中文字幕网站在线观看| 国产精品99久久久久久久久| 中文字幕中文字幕在线一区| 麻豆亚洲av熟女国产一区二| 欧美精品v日韩精品v国产精品| 欧美日韩精品欧美日韩精品| 国产精品无码AV| 欧美色图另类小说| 欧美人在线观看| 国产欧美在线观看一区| 国产成人无码一区二区三区在线| 亚州欧美一区三区三区在线| 亚洲精品国产综合久久| 国产一区二区三区在线观看精品| 日韩免费高清一区二区| 国产一区二区在线免费| 日韩欧美精品在线观看| 国精产品乱码一区一区三区四区| 亚洲国产日韩欧美在线观看| 欧美一级大片视频| 性做久久久久久久久| 国产极品久久久| 四虎国产精品免费| 91九色视频在线| 欧美老女人在线| 国内精品国产三级国产a久久| 人妻丰满熟妇av无码久久洗澡| 91免费在线观看网站| 欧美一区二区三区影视| 国内成+人亚洲+欧美+综合在线| 非洲一级黄色片| 欧美一区免费视频| 日韩在线视频国产| 亚洲精品亚洲人成人网| а√天堂资源在线| a天堂视频在线观看| 久久99影院| 一本色道久久综合亚洲精品小说| 国产免费成人在线视频| 中文字幕人妻互换av久久 | 精品一区二区三区国产| 精品国产乱码久久久久久图片 | 最近中文字幕在线观看| xx欧美撒尿嘘撒尿xx| 91影院未满十八岁禁止入内| 亚洲国产精品久久| 国产亚洲美州欧州综合国| 一区二区小视频| 中文在线观看免费视频| 日日骚一区二区网站| 日韩在线视频免费观看高清中文| 一区二区三区欧美日韩| 日本女优在线视频一区二区| 青青草偷拍视频| 久久午夜夜伦鲁鲁一区二区| 91视频婷婷| 中文字幕亚洲一区在线观看| 性久久久久久久久| 蜜桃精品视频在线| 91精品国产乱码久久久张津瑜| jizzzz日本| 热舞福利精品大尺度视频| 欧美日本黄视频| 宅男在线国产精品| 国产精品色哟哟| 久久综合导航| 日韩福利片在线观看| 黑人无套内谢中国美女| 一本久道久久综合狠狠爱亚洲精品| 69视频在线播放| 亚洲精品久久久久久下一站 | 国产精品日韩一区二区三区| 久久久精品视频成人| 欧美日韩在线观看一区二区| 国产日韩欧美精品综合| 丝袜国产日韩另类美女| 国产suv精品一区二区33| 日本黄色动态图| 人妻精品无码一区二区三区| 国产在线一区二区三区四区| 久久久久久久电影一区| 亚洲国产古装精品网站| 日韩欧美精品免费在线| 日本一区二区三区久久久久久久久不 | 欧洲亚洲国产日韩| 国产精品婷婷午夜在线观看| 麻豆传媒一区二区三区| 国产黄色av网站| 国产精品免费av一区二区| 亚洲成人日韩在线| 久久久久久三级| 成年人视频大全| 久久综合狠狠综合久久综青草| 国产第一区电影| 久久在线精品视频| 精品视频久久久| 欧美一区二区三区电影| 欧美日韩国产一区二区三区| 国产日韩欧美制服另类| 成人一级片网址| 精品一区二区三区视频在线观看| 99久久夜色精品国产亚洲| 在线观看日韩中文字幕| 久久久久亚洲av片无码| 国产熟女一区二区| 国产精品久久不卡| 国模大尺度视频| xxww在线观看| 国产a级一级片| 欧美啪啪免费视频| www成人免费| 97在线免费视频观看| 亚洲不卡1区| 日韩经典在线视频| 国产视频不卡| 国产成人精品一区二区三区福利| 91精品免费看| 91精品国产自产在线观看永久| 欧美精品九九久久| 欧美多人乱p欧美4p久久| 色偷偷噜噜噜亚洲男人的天堂| 精品视频偷偷看在线观看| 精品日产卡一卡二卡麻豆| 日韩三级在线观看| 欧美一三区三区四区免费在线看| 91福利社在线观看| 欧美三级日韩三级| 欧美日韩国产天堂| 欧美一级电影网站| 亚洲成人教育av| 亚洲视频欧洲视频| 精品久久国产精品| 久久久在线免费观看| 91大神在线播放精品| 国产精品天天狠天天看| 91精品久久久久久久久久久久久久| 国产精品啪视频| 国产区一区二区| 中文字幕一区二区三区四区五区| 可以免费看的黄色网址| 97免费视频观看| 亚洲欧美日韩一级|