99热热热_国产成人自拍一区_欧美一级网站_99热在线播放_国产精品乱码一区二区三区_久久精品国产一区二区三区

訂閱本欄目 RSS您所在的位置: 深山工作室 > ASP > 正文

RSA加密解密插件

2022/6/3 15:55:10 字體: 瀏覽 1543



<%
''........................................
'' RSA插件
'' author Flc 2021-02-02
'' Version v1.0
''........................................


    Public Publickey, Privatekey
    Private SB, Rsa
    Private s_B, s_R, s_U

    Private Sub Class_Initialize()
        Set SB = App.Str.StringBuilder()
        Set Rsa = Server.CreateObject("System.Security.Cryptography.RSACryptoServiceProvider")
        s_B = 0
        s_R = 0
        s_U = 0
    End Sub

    Private Sub Class_Terminate()
        Rsa.Clear()
        Set Rsa = Nothing
        Set SB = Nothing
    End Sub

    ''前置簡(jiǎn)寫(xiě),base64不進(jìn)行編碼轉(zhuǎn)換
    Public Function B()
        s_B = 1 : Set B = Me
    End Function

    ''前置簡(jiǎn)寫(xiě),xml轉(zhuǎn)pem 私匙pkcs8轉(zhuǎn)換
    Public Function R()
        s_R = 1 : Set R = Me
    End Function

    ''前置簡(jiǎn)寫(xiě),xml轉(zhuǎn)pem 公匙轉(zhuǎn)換
    Public Function U()
        s_U = 1 : Set U = Me
    End Function

    ''Rsa密匙初始化
    Public Sub Rsakey()
        With Rsa
            Publickey = .ToXmlString(False)    'xml格式
            Privatekey = .ToXmlString(True)    'xml格式
            'App.Fso.CreateFile RsaFile & "Rsa-Publickey.xml", Publickey
            'App.Fso.CreateFile RsaFile & "Rsa-Privatekey.xml", Privatekey
        End With
    End Sub

    ''密匙pem格式轉(zhuǎn)xml格式
    ''Ascii 密匙
    Public Function Xml(ByVal Ascii)
        Dim Header, Footer, Kind
        If Ascii = "" Then Xml = "" : Exit Function
        If Instr(Ascii, "BEGIN") > 0 And Instr(Ascii, "END") > 0 Then
            If Instr(Ascii, "PUBLIC") Then
                Header = "-----BEGIN PUBLIC KEY-----"
                Footer = "-----END PUBLIC KEY-----"
            ElseIf Instr(Ascii, "RSA PRIVATE") Then
                Header = "-----BEGIN RSA PRIVATE KEY-----"
                Footer = "-----END RSA PRIVATE KEY-----"
            Else
                Header = "-----BEGIN PRIVATE KEY-----"
                Footer = "-----END PRIVATE KEY-----"
            End If
            Dim P0, P1
            P0 = Instr( 1, Ascii, Header, vbTextCompare) + Len(Header)
            P1 = Instr(P0, Ascii, Footer, vbTextCompare)
            Ascii = Mid(Ascii, P0, (P1 - P0))
        End If
        Kind = App.IIF(Len(Ascii) > 800, 1, 0)
        Xml = Encryption(App.Crypt.H.Base64Decode(Ascii), Kind)
    End Function

    ''密匙xml格式轉(zhuǎn)pem格式
    ''Ascii 密匙
    Public Function Pem(ByVal Str)
        Dim I, Filter, Data : Data = Empty : I = 0
        If s_U = 0 Then
            ''pkcs1 私匙
            Filter = "RSA PRIVATE"
            Str = Node(Str, 1)
            Str = B.KeyLength("020100" & Str, "30")
            ''pkcs8 私匙
            If s_R = 1 Then
                Filter = "PRIVATE"
                Str = B.KeyLength(Str, "04")
                Str = B.KeyLength("020100300d06092a864886f70d0101010500" & Str, "30")
                s_R = 0
            End if
        Else
            ''公匙
            Filter = "PUBLIC"
            Str = Node(Str, 0)
            Str = B.KeyLength(Str, "0030")
            Str = B.KeyLength(Str, "03")
            Str = B.KeyLength("300d06092a864886f70d0101010500" & Str, "30")
            s_U = 0
        End If
        Data = App.Crypt.H.Base64Encode(Str)
        SB.Append "-----BEGIN " & Filter & " KEY-----" & VbCrlf
        While I < Len(Data) / 64
            SB.Append Mid(Data, I * 64 + 1, 64) & vbCrlf
            I = I + 1
        Wend
        SB.Append "-----END " & Filter & " KEY-----"
        Pem = SB.ToString
        SB.Clear
    End Function

    ''RSA XML節(jié)點(diǎn)轉(zhuǎn)換
    Private Function Node(ByVal Str, ByVal Ascii)
        Dim N, E, P, D, DP, DQ, InverseQ, Q, Xml
        App.Xml.Load Str
        If Ascii = 1 Then
            N = KeyLength(App.Xml("Modulus").Text, "02")
            E = KeyLength(App.Xml("Exponent").Text, "02")
            P = KeyLength(App.Xml("P").Text, "02")
            Q = KeyLength(App.Xml("Q").Text, "02")
            DP = KeyLength(App.Xml("DP").Text, "02")
            DQ = KeyLength(App.Xml("DQ").Text, "02")
            InverseQ = KeyLength(App.Xml("InverseQ").Text, "02")
            D = KeyLength(App.Xml("D").Text, "02")
            Node = Join(Array(N, E, D, P, Q, DP, DQ, InverseQ), "")
        Else
            N = KeyLength(App.Xml("Modulus").Text, "02")
            E = KeyLength(App.Xml("Exponent").Text, "02")
            Node = N & E
        End If
        App.Xml.Close
    End Function

    ''拼接數(shù)據(jù)長(zhǎng)度計(jì)算
    Public Function KeyLength(ByVal Str, ByVal Ascii)
        If s_B = 0 Then Str = App.Crypt.H.Base64Decode(Str)
        If CLng("&H" & Mid(Str, 1, 2)) >= 128 Then Str = "00" & Str
        Dim Obj : Obj = Hex(Cint(Len(Str) / 2))
        If Len(Obj) > 2 Then
            KeyLength = Join(Array(Ascii, App.IIF(Len(Obj) = "3", "820", "82"), Obj, Str), "")
        Else
            If CLng("&H" & Obj) < 128 Then
                KeyLength = Join(Array(Ascii, App.IIF(Len(Obj) = "1", "0", ""), Obj, Str), "")
            Else
                KeyLength = Join(Array(Ascii, App.IIF(Len(Obj) = "1", "810", "81"), Obj, Str), "")
            End if
        End If
        s_B = 0
    End Function

    ''pem轉(zhuǎn)xml節(jié)點(diǎn)分析
    ''目前只支持[1024bit],[2048bit]位數(shù)pem密匙轉(zhuǎn)換
    Private Function Encryption(ByVal Str, ByVal Format)
        Dim Text, Obj, Entry
        Dim N, E, D, P, Q, DP, DQ, Inverseq
        If Left(Migration(Str, 2), 2) = "30" Then
            If CLng("&H" & Leng(Str)) = Len(Str) / 2 Then
                If Format = 1 Then
                    If Left(Migration(Str, 2), 2) = "02" Then Text = Migration(Str, 4)
                End If
                Select Case Left(Migration(Str, 2), 2)
                    Case "30"
                        Text = CLng("&H" & Left(Migration(Str, 2), 2))
                        Obj = Left(Migration(Str, 2), 2)
                        ''OBJECT_IDENTIFIER版本號(hào),未輸出
                        If Obj = "06" Then
                            Text = Left(Migration(Str, 2), 2)
                            Text = Migration(Str, CLng("&H" & Text) * 2)
                        End If
                        ''UNLL
                        If Left(Migration(Str, 2), 2) = "05" And Left(Migration(Str, 2), 2) = "00" Then
                            Obj = Left(Migration(Str, 2), 2) : Text = Leng(Str)
                            ''2048密匙下多出一位
                            If Left(Str, 2) = "00" Then Text = Migration(Str, 2)
                        End If
                        If Left(Migration(Str, 2), 2) = "30" Then
                            Text = Leng(Str)
                            If Format = 1 Then
                                If Left(Migration(Str, 2), 2) = "02" Then Text = Leng(Str)
                                If Text <> "00" Then
                                    ''Encryption = "{""code"": 1001, ""msg"": ""密匙錯(cuò)誤,請(qǐng)檢查!"", ""data"": """"}"
                                    App.Console "密匙 ["& App.IIf(Format = 1, "Privatekey", "Publickey") &"] 格式錯(cuò)誤"
                                    App.Error.FunctionName = "Rsa.Encryption"
                                    App.Error.Detail = App.IIf(Format = 1, "Privatekey", "Publickey")
                                    App.Error.Raise "error-crypt-rsa"
                                    'Exit Function
                                End If
                            End If
                            If Left(Migration(Str, 2), 2) = "02" Then N = Identifier(Str)
                        End If
                    Case "02"
                        N = Identifier(Str)
                        If  N = "" Then Text = Migration(Str, 2) : N = Identifier(Str)
                    Case Else
                        App.Console "密匙 ["& App.IIf(Format = 1, "Privatekey", "Publickey") &"] 格式錯(cuò)誤"
                        App.Error.FunctionName = "Rsa.Encryption"
                        App.Error.Detail = App.IIf(Format = 1, "Privatekey", "Publickey")
                        App.Error.Raise "error-crypt-rsa"
                End Select
                If Left(Migration(Str, 2), 2) = "02" Then E = Identifier(Str)
                If Format = 1 Then
                    If Left(Migration(Str, 2), 2) = "02" Then D = Identifier(Str)
                    If Left(Migration(Str, 2), 2) = "02" Then P = Identifier(Str)
                    If Left(Migration(Str, 2), 2) = "02" Then Q = Identifier(Str)
                    If Left(Migration(Str, 2), 2) = "02" Then DP = Identifier(Str)
                    If Left(Migration(Str, 2), 2) = "02" Then DQ = Identifier(Str)
                    If Left(Migration(Str, 2), 2) = "02" Then Inverseq = Identifier(Str)
                    Encryption = Join(Array("<RSAKeyValue><Modulus>", N, "</Modulus><Exponent>", E, "</Exponent><P>", P, "</P><Q>", Q, "</Q><DP>", DP, "</DP><DQ>", DQ, "</DQ><InverseQ>", Inverseq, "</InverseQ><D>", D, "</D></RSAKeyValue>"), "")
                Else
                    Encryption = Join(Array("<RSAKeyValue><Modulus>", N, "</Modulus><Exponent>", E, "</Exponent></RSAKeyValue>"), "")
                End If
            End If
        Else
            App.Console "密匙 ["& App.IIf(Format = 1, "Privatekey", "Publickey") &"] 格式錯(cuò)誤"
            App.Error.FunctionName = "Rsa.Encryption"
            App.Error.Detail = App.IIf(Format = 1, "Privatekey", "Publickey")
            App.Error.Raise "error-crypt-rsa"
        End If
    End Function

    ''節(jié)點(diǎn)數(shù)據(jù)提取
    Private Function Identifier(ByRef Str)
        Dim Text
        If Left(Str, 2) = "81" Or Left(Str, 2) = "82" Then
            Text = Leng(Str)
        Else
            Text = Left(Migration(Str, 2), 2)
        End If
        Text = CLng("&H" & Text) * 2
        Text = Left(Migration(Str, Text), Text)
        If Left(Text, 2) = "00" Then Text = Right(Text, Len(Text) - 2)
        Identifier = App.Crypt.B.Base64Encode(App.Crypt.D.Base(Text))
    End Function

    ''節(jié)點(diǎn)長(zhǎng)度
    Private Function Leng(ByRef Str)
        Dim I, Lo, Text : I = 1
        Text = Left(Migration(Str, 2), 2)
        Lo = CLng("&H" & Text)
        If Lo >= 128 Then I = I - 1 + (Lo - 128)
        Leng = Left(Migration(Str, I * 2), I * 2)
    End Function

    ''數(shù)據(jù)偏移
    Private Function Migration(ByRef Str, ByVal Length)
        Migration = Str
        Str = Right(Str, Len(Str) - Length)
    End Function

    ''rsa簽名 私匙簽名
    ''4.5以上版本需改.SignHash_2, 以下為SignHash
    ''Hash 加密內(nèi)容
    ''Length sha1 or sha256
    Public Function Sign(ByVal Hash, ByVal Length)
        With Rsa
            .FromXmlString(Privatekey)
            Hash = App.Crypt.Middleware(Hash, "System.Security.Cryptography." & UCase(Length) & "Managed", "")
            Sign = App.Crypt.B.Base64Encode(.SignHash_2(App.Crypt.D.Base(Hash), Length))
        End With
    End Function

    ''rsa驗(yàn)證 公匙驗(yàn)證
    ''4.5以上版本需改.VerifyHash_2, 以下為.VerifyHash
    ''Hash 加密內(nèi)容
    ''Signature 簽名內(nèi)容
    ''Length sha1 or sha256
    Public Function Verify(ByVal Hash, ByVal Signature, ByVal Length)
        With Rsa
            .FromXmlString(Publickey)
            Hash = App.Crypt.Middleware(Hash, "System.Security.Cryptography." & UCase(Length) & "Managed", "")
            Verify = .VerifyHash_2(App.Crypt.D.Base(Hash), Length, App.Crypt.B.Base64Decode(Signature))
        End With
    End Function

    ''Rsa加密 公匙加密
    ''需要.net framework4.5版本庫(kù)的支持,系統(tǒng)最低要求win7,win2008
    ''4.5以上版本需改.Encrypt_2
    ''Str 加密內(nèi)容
    Public Function Encrypt(ByVal Str)
        Dim I, MAX_ENCRYPT_BLOCK : I = 0
        With Rsa
            .FromXmlString(Publickey)
            MAX_ENCRYPT_BLOCK = (.KeySize / 8 - 11) * 2
            'Str = App.Crypt.Base(App.Str.ToByte(Server.UrlEncode(Str)))
            Str = App.Crypt.Base(App.Str.ToByte(Str))
            While I < Len(Str) / MAX_ENCRYPT_BLOCK
                ''如果為 true OAEP 填充, 為 false PKCS#1 v1.5 填充。
                SB.Append App.Crypt.Base(.Encrypt_2(App.Crypt.D.Base(Mid(Str, I * MAX_ENCRYPT_BLOCK + 1, MAX_ENCRYPT_BLOCK)), False))
                I = I + 1
            Wend
            Encrypt = App.Crypt.B.Base64Encode(App.Crypt.D.Base(SB.ToString))
            'RsaEncrypt = SB.ToString
            SB.Clear
        End With
    End Function

    ''Rsa解密 私匙解密
    ''需要.net framework4.5版本庫(kù)的支持,系統(tǒng)最低要求win7,win2008
    ''4.5以上版本需改.Decrypt_2
    ''Str 解密內(nèi)容
    Public Function Decrypt(ByVal Str)
        Dim I, MAX_ENCRYPT_BLOCK : I = 0
        With Rsa
            .FromXmlString(Privatekey)
            MAX_ENCRYPT_BLOCK = .KeySize / 8 * 2
            Str = App.Crypt.H.Base64Decode(Str)
            While I < Len(Str) / MAX_ENCRYPT_BLOCK
                SB.Append App.Str.ToString(.Decrypt_2(App.Crypt.D.Base(Mid(Str, I * MAX_ENCRYPT_BLOCK + 1, MAX_ENCRYPT_BLOCK)), False))
                I = I + 1
            Wend
            'Decrypt = App.UrlDecode(SB.ToString)
            Decrypt = SB.ToString
            SB.Clear
        End With
    End Function

%>

相關(guān)閱讀
鍵盤(pán)上shift鍵的奇妙用途
shopify廣告與Facebook廣告操作
兼容IE和FF的收藏本站、設(shè)為首頁(yè)代碼
Python PyInstaller安裝和使用教程(詳解版)
深山旅行社網(wǎng)站管理系統(tǒng) v1.4
使用uni-app開(kāi)始小程序使用騰訊視頻插件vid播放視頻
asp用cDec將二進(jìn)制轉(zhuǎn)十進(jìn)制然后再用cBit將十進(jìn)制轉(zhuǎn)二進(jìn)制
深山旅行社網(wǎng)站管理系統(tǒng) v1.7
共有0條關(guān)于《RSA加密解密插件》的評(píng)論
發(fā)表評(píng)論
正在加載評(píng)論......
返回頂部發(fā)表評(píng)論
呢 稱(chēng):
表 情:
內(nèi) 容:
評(píng)論內(nèi)容:不能超過(guò) 1000 字,需審核,請(qǐng)自覺(jué)遵守互聯(lián)網(wǎng)相關(guān)政策法規(guī)。
驗(yàn)證碼: 驗(yàn)證碼 
網(wǎng)友評(píng)論聲明,請(qǐng)自覺(jué)遵守互聯(lián)網(wǎng)相關(guān)政策法規(guī)。

您發(fā)布的評(píng)論即表示同意遵守以下條款:
一、不得利用本站危害國(guó)家安全、泄露國(guó)家秘密,不得侵犯國(guó)家、社會(huì)、集體和公民的合法權(quán)益;
二、不得發(fā)布國(guó)家法律、法規(guī)明令禁止的內(nèi)容;互相尊重,對(duì)自己在本站的言論和行為負(fù)責(zé);
三、本站對(duì)您所發(fā)布內(nèi)容擁有處置權(quán)。

更多信息>>欄目類(lèi)別選擇
百度小程序開(kāi)發(fā)
微信小程序開(kāi)發(fā)
微信公眾號(hào)開(kāi)發(fā)
uni-app
asp函數(shù)庫(kù)
ASP
DIV+CSS
HTML
python
更多>>同類(lèi)信息
ASP中Utf-8與Gb2312編碼轉(zhuǎn)換亂碼問(wèn)題的解決方法頁(yè)面編碼聲明
asp顯示隨機(jī)密碼
通過(guò)阿里云服務(wù)接口獲得ip地址詳細(xì)信息
iis點(diǎn)開(kāi)后任務(wù)欄上有顯示,但是窗口看不到的解決辦法
RSA加密解密插件
微軟Encoder加密解密函數(shù)
更多>>最新添加文章
dw里面查找替換使用正則刪除sqlserver里面的CONSTRAINT
Android移動(dòng)端自動(dòng)化測(cè)試:使用UIAutomatorViewer與Selenium定位元素
抖音直播音掛載小雪花 懂車(chē)帝小程序
javascript獲取瀏覽器指紋可以用來(lái)做投票
火狐Mozilla Firefox出現(xiàn):無(wú)法載入您的Firefox配置文件 它可能已經(jīng)丟失 或是無(wú)法訪問(wèn) 問(wèn)題解決集合處理辦法
在Android、iOS、Windows、MacOS中微信小程序的文件存放路徑
python通過(guò)代碼修改pip下載源讓下載庫(kù)飛起
python里面requests.post返回的res.text還有其它的嗎
更多>>隨機(jī)抽取信息
旅行社網(wǎng)站模板默認(rèn)風(fēng)格2
javascript日期驗(yàn)證比較
連云港華夏國(guó)際旅行社有限公司
開(kāi)始百度小程序開(kāi)發(fā)需要準(zhǔn)備工作
表單正則表達(dá)式
126郵箱TAB效果(同一頁(yè)面可多次使用)
99热热热_国产成人自拍一区_欧美一级网站_99热在线播放_国产精品乱码一区二区三区_久久精品国产一区二区三区
  • <li id="6qmi0"></li>
  • <li id="6qmi0"><source id="6qmi0"></source></li>
    中文字幕欧美日韩一区二区三区 | 成人av网站观看| 日韩欧美一区二区三区四区| 久久免费高清| 国产欧美大片| 黄色另类av| 国内激情久久| 一区二区三区四区欧美日韩| 免费av一区二区三区| 欧美亚洲自偷自偷| 亚洲精品色图| 最新国产乱人伦偷精品免费网站| 综合视频免费看| 亚洲欧美日韩国产yyy| 日韩欧美第二区在线观看| 欧美亚州在线观看| 麻豆成人小视频| 欧美第一黄网| 日本精品一区二区三区视频| 久久riav二区三区| 精品在线不卡| 欧美一进一出视频| 日本一区二区三区四区高清视频| 欧美一区激情视频在线观看| 久久精品人人做人人爽电影| 欧美1o一11sex性hdhd| 日本一区不卡| 中文字幕一区二区三区精彩视频| 一区二区在线观| 欧美视频成人| 国产一区日韩一区| 一本色道久久| 美女久久网站| 国产精品亚洲一区| 在线亚洲伦理| 老**午夜毛片一区二区三区| 国产成人精品日本亚洲11| 国产综合色一区二区三区| 久久亚洲免费| 亚洲天堂电影网| 亚洲日本黄色| 91网免费观看| 欧美在线视频一区二区三区| 欧美一区1区三区3区公司| 永久域名在线精品| 老司机免费视频久久 | 在线播放精品| 国产一区二区三区的电影 | 日韩性感在线| 99日韩精品| 国产一区二区三区高清| 亚洲午夜精品一区二区| 精品不卡视频| 动漫3d精品一区二区三区| 神马影院午夜我不卡影院| 欧美日韩国产不卡在线看| 亚洲欧美bt| 日本一区二区三不卡| 亚洲性色视频| 国产在线精品一区二区中文| 自拍亚洲欧美老师丝袜| 久久精品五月| 亚洲欧洲日夜超级视频| 亚洲免费婷婷| 亚洲欧美日韩另类精品一区二区三区 | 99在线精品免费视频九九视| 国产私拍一区| 黑丝一区二区三区| 久久香蕉综合色| 亚洲国产精品一区| 免费h精品视频在线播放| 亚洲激情女人| 欧美一区三区二区在线观看| 亚洲视频1区| 日韩精品一区二区三区色偷偷 | 99国产精品私拍| 日韩欧美三级一区二区| 久久综合九色综合欧美狠狠| 亚洲人成网站在线播放2019| 噜噜噜在线观看免费视频日韩| 日韩精品久久一区二区三区| 美女日韩在线中文字幕| 欧美视频二区| 欧美日韩系列| 97久久夜色精品国产九色| 精品二区视频| 一区二区精品国产| 久久大片网站| 成人激情直播| 中国成人亚色综合网站| 欧美一区国产在线| 欧美连裤袜在线视频| 美女国产精品| 中文日韩在线| 欧美天堂亚洲电影院在线观看| 久久久久网址| 国产高清一区视频| 蜜乳av另类精品一区二区| 欧美1o一11sex性hdhd| 免费亚洲一区| 国产精品久久国产愉拍 | 久久人人九九| 成人免费在线看片| 亚洲在线观看| 一区二区精品在线| 亚洲精品日韩精品| 激情综合在线| 欧美性色综合| 国内精品久久久久久久影视蜜臀| 无码免费一区二区三区免费播放| 国产专区一区二区| 国产精品免费观看高清| 久久精品一二三区| 久久精品一区二区三区中文字幕| 亚洲国产精品一区二区第四页av| 欧美精品亚洲精品| 国产在线欧美日韩| 国产精品啊啊啊| 影音先锋在线一区| 99热这里只有精品8| 国产一区二区高清| 久久人人97超碰国产公开结果| 性刺激综合网| www.久久草| 欧美激情第一页在线观看| 欧洲精品国产| 中文网丁香综合网| 欧美黄污视频| 亚洲激情自拍| 蜜桃av久久久亚洲精品| 91久久大香伊蕉在人线| 国产一区二区不卡视频| 久久久久久久久久久一区| 日韩欧美视频一区二区| 亚洲精品一区二| 亚洲大胆在线| 玖玖在线精品| 日本日本精品二区免费| 樱花www成人免费视频| 国产综合视频| 鲁大师影院一区二区三区| 国产经品一区二区| 日韩欧美一区二区在线观看| 亚洲欧美一区二区原创| 99国产精品| 好吊色欧美一区二区三区四区| 欧美在线一二三区| 亚洲特级毛片| 国产精品国色综合久久| 日韩精品av一区二区三区| 在线日韩视频| 狠狠综合久久av| 欧美精品网站| 岛国视频一区免费观看| 一本一本a久久| 香蕉久久国产| 亚洲国产一区二区精品视频| 日韩午夜在线电影| 精品国产乱码久久久久久久软件| 亚洲午夜精品一区二区三区| 国产欧美一区二区三区国产幕精品| 成人综合av网| 国产精品二区影院| 国产一区国产精品| 亚洲视频欧美在线| 精品无码久久久久国产| 国产一区高清视频| 国产中文一区二区| 在线播放豆国产99亚洲| 久久综合狠狠综合久久综青草 | 亚洲第一精品影视| 久久精品ww人人做人人爽| 亚洲狠狠婷婷| 欧美一进一出视频| 久久久久国产精品午夜一区| 亚洲图片欧洲图片日韩av| 91嫩草视频在线观看| 欧美精品播放| 欧美精品123| 久久狠狠婷婷| 国内一区二区三区在线视频| 国产综合色一区二区三区| 日韩一级免费| 欧美.www| 日韩电影天堂视频一区二区| 久久免费黄色| 99精品免费视频| 中文字幕一区二区三区在线乱码 | 国语精品中文字幕| 日韩美女一区| 国产伦精品一区二区三区免 | 欧美一区免费视频| 69堂成人精品视频免费| 亚洲高清不卡| 欧美成人一品| 亚洲欧洲国产日韩精品| 欧美第一黄网| 国产精品一区二区你懂得| 麻豆91精品| 国产视频一区欧美|