999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

門羅幣匿名及追蹤技術(shù)綜述

2022-02-26 06:58:14林定康顏嘉麒楠登符朕皓姜皓晨
計算機應(yīng)用 2022年1期
關(guān)鍵詞:方法

林定康,顏嘉麒,巴·楠登,符朕皓,姜皓晨

(南京大學(xué)信息管理學(xué)院,南京 210023)

0 引言

經(jīng)濟和技術(shù)全球化程度越來越高,世界和區(qū)域之間的差距越來越小,犯罪分子正在采用新的貨幣形式(例如加密貨幣)來逃避監(jiān)管[1],進(jìn)行跨國的非法交易,并提高其非法活動的匿名性[2]。這種新型的犯罪形式,繞開正規(guī)金融機構(gòu)的監(jiān)管,成為恐怖分子融資、洗錢、毒品交易的溫床[3]。例如,圣戰(zhàn)分子和恐怖組織的支持者正在積極尋找并促進(jìn)使用新興技術(shù),例如比特幣、大零幣、門羅幣(Monero)等,來減輕與傳統(tǒng)資金轉(zhuǎn)移方法相關(guān)的監(jiān)管風(fēng)險[4]。在暗網(wǎng)和匿名數(shù)字貨幣技術(shù)的助推之下,毒品交易格局日益復(fù)雜。比特幣等匿名交易方式,打破了毒品交易雙方必須在同一地點交易的限制,繞開了正規(guī)機構(gòu)的監(jiān)管,使暗網(wǎng)毒品銷售網(wǎng)絡(luò)日益龐大[5]。很多網(wǎng)站也在利用用戶的瀏覽來操縱他們的計算機幫助不法分子進(jìn)行門羅幣的挖礦[6]。

自2009 年比特幣[7]誕生以來,它已成為最具代表性的密碼貨幣,占有最大的市場份額。比特幣的成功不僅在于它最早產(chǎn)生,也在于比特幣聲稱的匿名性。比特幣聲稱具有匿名性,但實際上比特幣提供的匿名性是相對的,因為交易的信息向任何人公開,比特幣的金額和流向可以完全確定。不僅如此,研究發(fā)現(xiàn)可以通過將地址進(jìn)行聚類來確定用戶集群來揭示用戶的身份,挖掘出集群之間的資金流向,從而破解這種匿名性[8]。為了增加交易的匿名性,人們提出了新的數(shù)字貨幣方案,其中具代表性的是運用了環(huán)簽名技術(shù)的門羅幣[9]、運用coinjoin 技術(shù)的達(dá)世幣[10]和運用了零知識證明技術(shù)的大零幣[11]。本文對門羅幣的匿名技術(shù)和追蹤技術(shù)進(jìn)行了整理和評價。

門羅幣是一種基于CryptoNote 加密協(xié)議的隱私加密貨幣,它試圖解決比特幣中的可追溯性和可鏈接性問題。門羅幣的代號為XMR,XMR 也是門羅幣的貨幣單位,1 XMR 就是一個門羅幣。截至2021 年1 月,它在最受歡迎的匿名數(shù)字貨幣中占到第16 位,市值約為140.44 億人民幣[12]。比特幣是第一個也是目前最大的加密貨幣,它明確地標(biāo)識了交易中使用了哪枚硬幣,而門羅幣允許用戶通過包括被稱為“mixin”的交易輸入來模糊交易的真正輸入[2]。門羅幣交易示意圖如圖1 所示。本文用Tx 表示一個交易,key 表示輸入輸出的公鑰地址,假設(shè)有3 個交易Tx1、Tx2、Tx3,每一個交易各有一個交易輸出key-a、key-b、key-c,創(chuàng)建一個新的交易Tx4 將key-b的TXO(Transaction Output)轉(zhuǎn)給key-d,門羅幣根據(jù)某些策略將其他兩個輸出地址key-a、key-c都標(biāo)記為Tx4 的輸入,這樣真實的輸入key-b就被隱藏起來。人們不知道key-a、key-b、key-c哪一個才是真正的輸入,其中用來混淆真實輸入的輸出地址key-a、key-c就被稱為mixin。

圖1 門羅幣交易示意圖Fig.1 Schematic diagram of Monero transaction

門羅幣隱私問題要求貨幣確保以下兩個屬性[13]:

不可鏈接性(unlinkability)對于任何交易,都不可能證明它們是由同一個發(fā)送方發(fā)送的。即使是一個無限強大的對手,能夠訪問無限數(shù)量的交易,也不能以優(yōu)勢猜測他的身份,也不能將事務(wù)鏈接到同一個發(fā)送者[14]。

不可追蹤性(untracability)給定交易輸入,被花費的實際輸出應(yīng)該在一組其他輸出中匿名[15]。

門羅幣的匿名技術(shù)保證了交易的不可鏈接性和不可追蹤性[9]。為了保證不可鏈接性,門羅幣通過設(shè)計引入了一次性隨機地址的概念,其思想是:交易的每個發(fā)送方都為收件人生成一個新的一次性隨機地址,這種方式只有收件人可以使用長期秘密密鑰來花費它。如果每個地址都是使用新的隨機性生成的,并且只使用一次,那么對手很難鏈接兩個地址。為了保證不可追蹤性,門羅幣使用名為環(huán)簽名的加密技術(shù)。環(huán)簽名讓發(fā)送人原本的輸入混合在其他的輸入中一起,發(fā)件人代表一組其他用戶匿名簽名交易信息。因此,被花費的實際輸入在多個簽名中被隱藏,無法判斷到底哪個是真正的輸入,從而實現(xiàn)了不可追蹤性[15]。

本文介紹保證了不可鏈接性的一次性隨機地址、保證了不可追蹤性的環(huán)簽名加密技術(shù)以及為提高匿名性的各個版本更新中技術(shù)的演進(jìn),并介紹針對這些技術(shù)和門羅幣交易的特征而進(jìn)行追蹤的各種對策。通過對門羅幣的匿名技術(shù)及其追蹤技術(shù)的研究,本文主要得到如下4 個結(jié)論:

1)門羅幣的匿名技術(shù)和追蹤技術(shù)呈現(xiàn)出相互促進(jìn)的特點。

2)RingCT(Ring Confidential Transactions)的應(yīng)用是一把雙刃劍,它既使從幣值出發(fā)的被動攻擊方法失效,也使主動攻擊方法更加容易。

3)輸出合并攻擊和0-mixin 攻擊(Zero Mixin Attack)具有互補作用。

4)門羅幣的系統(tǒng)安全鏈條仍待理順。

1 門羅幣匿名技術(shù)

1.1 環(huán)簽名

門羅幣匿名技術(shù)的核心是環(huán)簽名加密技術(shù)。在密碼學(xué)中,環(huán)簽名是一種可以由一組各自具有密鑰的用戶組中的任何成員執(zhí)行的數(shù)字簽名。因此,具有環(huán)簽名的消息被特定人群中的某一個人認(rèn)可,但是確定使用哪個組內(nèi)成員的密鑰來生成簽名在計算上是不可行的,這也是環(huán)形簽名的安全屬性之一[16]。環(huán)簽名最早由Rivest 等[17]在2001 年提出。該概念類似于組簽名的概念,但是無法識別環(huán)簽名交易的實際簽名者,并且可以在環(huán)簽名中包含任意數(shù)量的用戶,而無需任何其他設(shè)置。最初的概念是使環(huán)簽名成為一種泄漏機密信息的方法,特別是從高級政府官員那里泄漏機密信息,而實際上不透露出簽名者是誰。

環(huán)簽名使用了基于橢圓曲線離散對數(shù)問題的EDDSA(EDwards-curve Digital Signature Algorithm)算法[18]。一次環(huán)簽名由密鑰生成算法(key GENeration algorithm,GEN)、簽名生成算法(SIgnature Generation algorithm,SIG)、簽名驗證算法(signature VERification algorithm,VER)和鏈接性驗證算法(LiNKability verification algorithm,LNK)四種算法組成[9]。

GEN 簽名者選擇一個隨機秘密密鑰x,計算公鑰P=xG和密鑰鏡像I=HP(P),其中HP是確定性哈希函數(shù)。

SIG 簽名者獲取一個消息m,一組公鑰S′的{Pi}i=s,并輸出一個簽名σ和一個密鑰集S=S′∩{Ps}。

VER 驗證者檢驗簽名。

LNK 驗證者檢查I是否在過去的簽名中使用過。

每個交易都有一個環(huán)簽名,可以識別哪個mixin 是真實的,而不透露任何關(guān)于它的信息;同時,每個mixin 以及實際輸入都有一個唯一的密鑰鏡像,所有節(jié)點都可以檢查是否有任何密鑰鏡像在此之前已經(jīng)顯示[19]。

1.2 保證不可鏈接性

一次性隨機地址保證了門羅幣的不可鏈接性。與比特幣模型相反,用戶擁有唯一的公鑰、私鑰對對應(yīng)于地址,在門羅幣中,發(fā)件人根據(jù)收件人的地址和某種隨機性生成一次性公鑰[20]。從這個意義上說,發(fā)送給同一個收件人的交易實際上是發(fā)送給不同的一次性公鑰(而不是直接發(fā)送到唯一地址),只有收件人才能收回一次性私鑰及花費金額。

Noether 等[21]詳細(xì)地講解了一次性隨機地址的數(shù)學(xué)原理,門羅幣的一次性隨機地址的實現(xiàn)代碼在github 上公開[22]。舉例說明它的作用過程:當(dāng)一個用戶Alice 希望向另一個用戶Bob 付款時,她獲得Bob 的長期公鑰pk-long。然后,她為Bob 生成一次性公鑰pk-onetime。因為只有Bob 知道長期私鑰sk-long,只有他才能得到sk-onetime。然后,Alice創(chuàng)建了一個交易,她支付給Bob 的一次性公鑰pk-long。一次性密鑰作為Bob 的一次性使用的支付地址。由于地址總是隨機性生成,并且只使用一次,因此發(fā)送方和接收方以外的任何人都很難將兩個地址鏈接到同一個用戶。

如果有多個輸出支付給同一個收件人,則每個輸出生成一個新的一次性公鑰。因此,每個事務(wù)輸出(Transaction Outputs,TXO)都可以通過其相應(yīng)的一次性公鑰進(jìn)行標(biāo)識。

1.3 保證不可追溯性

門羅幣使用環(huán)簽名來確保不可追蹤性,使用了Fujisaki等[23]提出的修改版本的環(huán)簽名。環(huán)簽名允許用戶代表用戶的“環(huán)”簽名消息,簽名者只需要知道自己的簽名密鑰。在簽署消息后,簽名者提供環(huán)中所有用戶的公鑰。驗證者(verifier)能夠驗證示證者(prover)確實在環(huán)中的公鑰中,但不能確定到底是哪一個,因而就不能確認(rèn)身份[24]。

例如,用戶Alice 希望發(fā)送10 XMR 到另一個用戶Bob。她首先獲得Bob 的長期公鑰pk-long,然后根據(jù)該公鑰創(chuàng)建一個一次性的隨機公鑰pk-onetime。現(xiàn)在,Alice 沒有像比特幣那樣簽署交易,而是在價值10 XMR 的區(qū)塊鏈上獲取其他一些TXO,表現(xiàn)為一些一次性隨機公鑰。本文將這個集合表示為S={P1,P2,…,Pm},S還包括Alice 自己的輸入,其中Pi=xiG(i∈[1,m])。她的輸入Pi在S中隱藏,Alice 能夠創(chuàng)造一個環(huán)簽名并簽署交易。

當(dāng)其他人看到交易信息時,只能獲知真實的花費在幾個TXO 中,但無法確定哪個是真正的TXO[19]。Alice 在S中包含的其他輸入密鑰稱為mixin。由于Alice 的實際輸入密鑰在S中的密鑰中是匿名的,所以使用的混合輸入mixin 數(shù)量越大,實現(xiàn)的匿名性就越好。顯然,環(huán)簽名提供了門羅幣內(nèi)部的內(nèi)置混合服務(wù),每個用戶都可以自主地混合mixin[25]。

1.4 提高匿名性的技術(shù)演進(jìn)

1.4.1 最初版本

在2016 年1 月1 日版本之前,在最初的Monero 實現(xiàn)中,mixin 是從所有具有與所花費的硬幣相同面額的先前TXO 集合中統(tǒng)一選擇的,因此,選擇較早的產(chǎn)出比選擇較新的產(chǎn)出更頻繁。門羅幣的mixin 選擇Cryptonote 引用實現(xiàn)包含了統(tǒng)一的選擇策略,由于交易輸入中引用的所有TXO 必須具有相同的面額(即0.01 XMR 輸入只能引用0.01 XMR 輸出),因此客戶端軟件維護(hù)可用TXO 的數(shù)據(jù)庫,按面額索引。mixin 是從這個有序的可用TXO 列表中采樣的,除了它們在塊鏈中的相對順序外,不考慮任何時間信息[25]。

1.4.2 mixin 選擇策略

在2016 年1 月1 日升級之后,引入了一種新的策略,用于選擇基于三角形分布的混合策略[26],有利于較新的硬幣作為混合幣而不是較舊的硬幣。這一變化是為了對抗最新猜測攻擊,防止由于總是較新的TXO 為真實輸入而暴露。在2016 年12 月13 日版本之后,對mixin 選擇策略進(jìn)行了更改:更多從新產(chǎn)生的TXO 中選擇了mixin,即在過去5 d 內(nèi)創(chuàng)建的輸入,效果是確保事務(wù)中25%的輸入從最近的區(qū)域采樣。

1.4.3 最低mixin 要求

在2016 年3 月,門羅幣開始要求每個輸入至少2 個mixin,禁止了0-mixin 交易的存在。至少2 個mixin 的規(guī)定是為了抵御0-mixin 攻擊,防止因為0-mixin 的級聯(lián)效應(yīng)而暴露多mixin 交易的真實輸入。這在2017 年9 月增加到4 個,2018 年4 月增加到6 個;從2018 年10 月起,所有交易的mixin數(shù)量已固定在10 個[27]。更多的mixin 意味著更高的匿名性。

1.4.4 RingCT 更新

2016 年9 月19 日之后,應(yīng)用了RingCT[28],允許用戶隱藏其硬幣的面額,避免了將可用TXO 分割成不同面值以防止基于面值的推理攻擊[25]。RingCT 交易直到2017 年1 月10 日硬叉之后才被認(rèn)為有效[29]。由于面值被隱藏,mixin 的選擇從原來必須選擇相同面額,到現(xiàn)在可以隨機選擇;并且由于它是在2-Mixin 最小值生效后部署的(版本0.9.0),因此沒有0-mixin 在RingCT 輸入造成0-mixin 攻擊的威脅。

RingCT 增加了哈希的次數(shù),但是減少了一半簽名的長度,對于數(shù)字貨幣來說,這無疑就提升了很大的競爭力,因為簽名的縮短不僅減輕了網(wǎng)絡(luò)負(fù)載,同樣還減小了交易的大小;對于按字節(jié)數(shù)來進(jìn)行計算交易費的機制來說,也就減小了每筆交易的交易費[19]。

2 門羅幣追蹤技術(shù)

目前,門羅幣的追蹤技術(shù)主要有4 類:基于輸入輸出關(guān)系而進(jìn)行的追蹤,如0-mixin 攻擊、輸出合并攻擊、封閉集攻擊等;基于統(tǒng)計得出總結(jié)規(guī)律的追蹤,如最新猜測攻擊等;通過某些方法使得部分公鑰已知以進(jìn)行追蹤,如泛洪攻擊、錢包環(huán)攻擊等;利用門羅幣安全機制漏洞進(jìn)行的追蹤,如惡意遠(yuǎn)程節(jié)點攻擊等。下面對這些追蹤技術(shù)逐一進(jìn)行介紹。Kumar 等[30]是在門羅幣的追溯性領(lǐng)域開創(chuàng)性的研究,最先提出了0-mixin 攻擊、輸出合并攻擊、最新猜測攻擊。Kumar等[30]首先定義3 個名詞,用來解釋以下的追蹤技術(shù),本文將沿用這3 個定義以便解釋各種追蹤方法。

定義1有效匿名集大小。假設(shè)一個交易的某一個輸入有m個mixin 來產(chǎn)生環(huán)簽名,如果其中的k個mixin 是可追蹤的,那么有效匿名集大小為m+1-k。

定義2可追蹤輸入。假設(shè)一個交易的某一個輸入的有效匿名集大小為1,那么該輸入為可追蹤輸入。

定義3可追蹤交易。假設(shè)一個交易的每筆輸入都是可追蹤輸入,那么該交易為可追蹤交易。

以下兩個啟發(fā)式0-mixin 攻擊和輸出合并攻擊的目的就在于減小有效匿名集,尋找可追蹤輸入進(jìn)而確定可追蹤交易。

2.1 0-mixin 攻擊

Kumar 等[30]首次提出了0-mixin 攻擊,此攻擊基于這樣一個原理:當(dāng)一個密鑰key-a為交易Txa輸入i的真實輸入時,它就不可能被再次花費,那么在其他的交易Txb中輸入j再次出現(xiàn)的key-a就不是j的真實輸入。根據(jù)定義2,一個0-mixin 的輸入的有效匿名集大小是1,那么0-mixin 的輸入都是可追蹤輸入。也就是說,這些輸入都是沒有使用mixin 來進(jìn)行混合的,在一個輸入中的唯一密鑰就是這個輸入的真實輸入。而當(dāng)已知此密鑰為這一輸入的真實輸入,就可以在其出現(xiàn)在其他輸入中時剔除掉它,以減小有效匿名集的大小,增加可追蹤性[30]。

例如,在圖2 中,第一個交易Tx1 中有一個輸入,而這個輸入為0-mixin,可以確定,這個輸入key-a就是它的真實輸入。當(dāng)key-a出現(xiàn)在另一個交易的輸入Tx2 中時,認(rèn)定key-a不是交易Tx2 的真實輸入,那么Tx2 的真實輸入就在其余的密鑰中產(chǎn)生,而恰巧這個輸入剩下的密鑰只有一個,該輸入的有效匿名集的大小為1,可以確定,key-b就是Tx2 的真實輸入。通過這樣的重復(fù)過程,不斷消減其余交易中輸入的有效匿名集大小,確定新的已知密鑰,就可以達(dá)到追蹤的目的。

圖2 0-mixin攻擊示意圖Fig.2 Schematic diagram of zero mixin attack

0-mixin 攻擊方法的成功是基于大量的0-mixin 交易的存在,得到了許多的已知密鑰。文獻(xiàn)[30]采集的數(shù)據(jù)是從2014 年4 月18 日到2017 年2 月68 日,區(qū)塊高度為1 240 503。其中65%為0-mixin 交易,使用此方法破解出了另外22%交易的匿名性,使得87%的輸入可追蹤。

2018 年,M?ser 等[31]使用同樣的數(shù)據(jù)進(jìn)行了再次實驗來驗 證0-mixin 攻擊的 有效性。M?ser 等[31]的貢獻(xiàn) 在于將0-mixin 攻擊運用到不同改進(jìn)階段的門羅幣交易數(shù)據(jù),探尋該方法在各個不同階段的有效性。通過再次驗證,M?ser等[31]發(fā)現(xiàn)在2-mixin 的強制要求版本之后,可追蹤性急劇下降;而在RingCT 推出的版本之后,可追蹤性更低了。這說明版本的改進(jìn),特別是RingCT 的應(yīng)用使得門羅幣的匿名性極大增強。事實上,即使是在此之后發(fā)表的論文中,很少有能夠真正破解RingCT 的攻擊辦法。

使用越多的mixin 確實可以提供更多的匿名性。實驗的結(jié)果顯示,無論是2-mixin 的強制要求出現(xiàn)之前還是之后,RingCT 出現(xiàn)之前或之后,該方法的有效性大致隨著mixin 數(shù)量的增多而遞減。

2020 年Ye 等[32]對這個方法進(jìn)行了再次驗證,將輸出合并攻擊(Output Merging Attack)應(yīng)用于整個區(qū)塊鏈,從創(chuàng)始區(qū)塊到2020 年4 月15 日的第2077094 區(qū)塊。在算法迭代到無法推斷任何更多的輸入時,部分或完全可推斷的交易的百分比已經(jīng)近零超過兩年,這表明RingCT 和增加mixin 的組合在減少門羅幣交易的可追溯性方面相當(dāng)成功。

2.2 輸出合并攻擊

如圖3,Tx1 是一個使用多個mixin 的輸入的事務(wù),它有兩個輸出key-a和key-b。TX2 是另一個事務(wù),它有兩個由I1和I2表示的輸入。每個輸入都有多個mixin,I1和I2都包含TX1 的輸出。如果滿足以上條件,那么使用虛線表示的輸入密鑰key-a和key-b是在TX2 中使用的真正密鑰,也就是Tx2的真實輸入。

圖3 輸出合并攻擊示意圖Fig.3 Schematic diagram of output merging attack

這個攻擊方法成立的前提是假設(shè)選擇同一個交易的mixin 時,算法被設(shè)計為不會選擇同一個交易的輸出。如果算法沒有能夠避免這種情況,那么很可能出現(xiàn)同一個交易幾個mixin 來自同一個交易輸出的情況,那么毫無疑問會降低門羅幣的匿名性。Kumar 等[30]通過實驗證實了這一假設(shè),并驗證了這個方法的正確性。

可以看到這種方法是可以運用在RingCT 出現(xiàn)之后的版本上進(jìn)行攻擊的,因為這種攻擊并沒有從交易的金額出發(fā)。但是這樣的方法并沒能在文獻(xiàn)[30]實驗中得到驗證,因為2017 年RingCT 剛剛應(yīng)用,使用RingCT 的區(qū)塊還不是很多。該方法并沒有受到后續(xù)研究的重視,在文獻(xiàn)[31]中沒有提及,而文獻(xiàn)[32]中也沒有再次驗證。但是就實驗結(jié)果而言,這個方法不同于前面的方法,輸出合并攻擊對于更多mixin的輸入影響更大,且正確率很高。

由于0-mixin 攻擊的正確率可以認(rèn)為是100%,可以使用0-mixin 攻擊追蹤的結(jié)果來驗證其他正確性稍弱的攻擊方法。本文定義這3 個概念,以便于對實驗結(jié)果的解釋。

定義4TP(True Positive)。代指由被驗證攻擊破解出來的真實輸入和由0-mixin 攻擊破解出來的真實輸入一致的交易。

定義5FP(False Positive)。是指由被驗證攻擊破解出來的真實輸入與由0-mixin 攻擊破解出來的真實輸入不一致的交易。

定義6UP(Unknown Positive)。是指由被驗證攻擊破解出來的真實輸入,但是沒有辦法得到0-mixin 攻擊破解驗證的交易。

研究驗證了輸出合并攻擊的準(zhǔn)確性和在多mixin 樣本追蹤情況下的優(yōu)越性。0-mixin 的攻擊破解結(jié)果可以看作一定是正確的,而實驗發(fā)現(xiàn)兩個攻擊方法不一致的FP 非常少,即證明了輸出合并攻擊的有效性。0-mixin 攻擊具有弊端,對較多mixin 混合的樣本攻擊有效性極大降低,可破解出的多mixin 樣本的數(shù)量也減少,導(dǎo)致能夠得到驗證的輸出合并攻擊的多mixin 破解樣本無法得到驗證,產(chǎn)生了很多的UP。而這些大量的UP 顯示了輸出合并攻擊對于多mixin 樣本破解相較于0-mixin 攻擊的優(yōu)越性,輸出合并攻擊可以追蹤出0-mixin 攻擊可追蹤的交易范圍之外的很多交易,甚至在多mixin 交易的情況下表現(xiàn)優(yōu)于0-mixin 攻擊[30]。

2.3 最新猜測攻擊

基于前面兩種方法的結(jié)果,Kumar 等[30]經(jīng)過統(tǒng)計分析又提出了最新猜測攻擊(Guess-Newest Attack)。即給定一組用于創(chuàng)建環(huán)簽名的輸入密鑰,實際使用的密鑰是具有最高塊高度的密鑰,其中它顯示為未花費的TXO。也就是說,算法選擇的mixin 大多來自更早之前的輸入,而非最新的輸入。這個攻擊的猜測是基于這樣的推斷,即最新的輸入可能是在最新的100 個區(qū)塊里面,而更多更早的輸入則存在于100 000個之前的區(qū)塊中,顯然,舊的輸入被抽中當(dāng)作mixin 的幾率要更大。

Kumar 等[30]用0-mixin 攻擊的結(jié)果對最新猜測攻擊進(jìn)行了測試,TP 的占比為98.1%。這說明截至2017 年門羅幣的絕大多數(shù)交易輸入的最新輸入密鑰是其中真正真實的輸入。門羅幣的開發(fā)人員為了避免這個問題,自2015 年4 月5 日以來決定從三角分布中抽取混合樣本[26]。三角形分布給較新的TXO 提供了比舊的更高的概率,而非像之前混合輸入是從一個均勻的分布中采樣的,因此可以抵御最新猜測攻擊。

圖4 最新猜測攻擊示意圖Fig.4 Schematic diagram of guess-newest attack

M?ser 等[31]運用蒙特卡羅模擬(Monte Carlo Simulation)來檢驗最新猜測攻擊的正確性。他們使用門羅幣所使用的mixin 抽取策略從0-mixin 攻擊已經(jīng)推斷出來的交易數(shù)據(jù)中抽取mixin 來作為模擬的交易,并統(tǒng)計最新猜測攻擊的正確性。結(jié)果是比較好的,總的正確性達(dá)到92.33%。

值得注意的是,2020 年文獻(xiàn)[32]中對這個方法進(jìn)行了再次驗證,結(jié)果顯示,在RingCT 后(2017 年1 月)的交易,最新猜測攻擊的準(zhǔn)確性急劇下降。對于具有10 個混合素的輸入(其中包括自2018 年秋季以來的所有輸入,當(dāng)每個事務(wù)的mixin 數(shù)量固定在10 時),可以看到該方法的正確性下降到僅剩三成,從大約90%下降到大約30%。這說明三角分布策略和RingCT 的使用對于最新猜測攻擊是十分有效的,極大保護(hù)了匿名性。

幾個因素導(dǎo)致了最新猜測攻擊的準(zhǔn)確性下降。首先,RingCT 使得輸入和輸出金額被隱藏[28]。這意味著現(xiàn)在可以使用任何RingCT 輸出作為mixin。在RingCT 之前,只能使用與實際TXO 相同的TXO,這極大減少了可以從mixin 中選擇的TXO 集。第二,mixin 的選擇策略已經(jīng)發(fā)生了改變,三角分布選擇mixin 使得近期的mixin 的權(quán)重增大,更容易被選為mixin,也減小了最新的一個輸入密鑰為真實輸入的幾率。

2.4 封閉集攻擊

Yu 等[27]首先提出了封閉集攻擊(Closed Set Attack),這種攻擊是基于這樣一個事實,即n個交易輸入將必須使用n個不同的公鑰作為實際輸入,因為每個公鑰只能被真實地使用一次。如果一組輸入的數(shù)量等于包含的不同公鑰的數(shù)量,則這一組輸入稱為封閉集。出現(xiàn)在封閉集中的密鑰被視為已經(jīng)花費的真實輸入,那么這些密鑰再次在封閉集之外的其他輸入中出現(xiàn),就一定是mixin 了,可以直接被剔除以減小有效匿名集[2]。這種攻擊就是找到所有可能的封閉集,并把在封閉集之外出現(xiàn)的與封閉集中相同的公鑰都剔除,以不斷減小有效匿名集大小,增加可推斷性。

如圖5,假設(shè)有這樣4 個交易,每個交易都只有一個輸入,Tx1 的輸入包括{key-1,key-2,key-3},Tx2 的輸入包括{key-2,key-3},Tx3 的輸入包括{key-1,key-3},Tx4 的輸入包括{key-1,key-2,key-3,key-4}。Tx1、Tx2、Tx3 的交易的輸入數(shù)量為3,在這3 個交易中使用的公鑰的數(shù)量為3,與輸入數(shù)量相同,也就是說,Tx1、Tx2、Tx3 這3 個交易的輸入構(gòu)成了一個封閉集。由于有3 個輸入,那么必須要有3 個真實輸入的公鑰,而封閉集中總共只有3 個公鑰,key-1、key-2、key-3 無論在哪個交易中被花費,都可以確認(rèn)為已經(jīng)被花費了。那么可以推斷,Tx4 的輸入中key-1、key-2、key-3 都為mixin,而真實的輸入密鑰就是key-4。

圖5 封閉集攻擊示意圖Fig.5 Schematic diagram of closed set attack

封閉集攻擊的優(yōu)點在于,對于RingCT 是可用的,因為不涉及面值;但是封閉集攻擊的效果并不太好,對于級聯(lián)效應(yīng)攻擊后的數(shù)據(jù)集,只能進(jìn)一步跟蹤0.084%的輸入。而這種攻擊的攻擊代價是很大的,理論上可行,但是實際來說對于一個如此大的數(shù)據(jù)集,這樣的計算量是不可接受的。如果數(shù)據(jù)集中輸入密鑰數(shù)量的平均數(shù)為m,找到所有的封閉集需要的算法復(fù)雜度經(jīng)過優(yōu)化后最小為O(m*N2)[27]。

2.5 泛洪攻擊

泛洪攻擊(Transaction Flooding Attack)由Chervinski 等[33]首先提出,其核心很簡單,掌握盡可能多的已知密鑰以便將這些密鑰從不可能的交易中剔除來縮小有效匿名集確定可追蹤輸入。可確定的密鑰有兩種:一種是已知已經(jīng)在之前某些交易中被花費的密鑰,第二種是在手中卻沒有被花費的密鑰。成功的泛洪攻擊的主要挑戰(zhàn)是擁有足夠的密鑰作為已知的密鑰庫,以便系統(tǒng)從攻擊者的一組密鑰中選擇輸入的所有混合。要擁有輸出密鑰,攻擊者必須使用有效的事務(wù)來淹沒網(wǎng)絡(luò),最好是使用非常低的成本,從而使攻擊可行。如圖6,當(dāng)攻擊者在鏈上通過制造很多交易獲得大量已知密鑰,用這些已知密鑰去檢驗鏈上的其他交易,若交易中的key-1 和key-2 都在已知密鑰集中,則可以排除在此交易中花費,那么剩下的key-3 就是真實的輸入了。

圖6 泛洪攻擊示意圖Fig.6 Schematic diagram of transaction flooding attack

門羅幣的系統(tǒng)從過去1.8 d 產(chǎn)生的輸出鍵中選擇50%的mixin,其余50%的mixin 是從舊的事務(wù)輸出中選擇的。要創(chuàng)建自己的輸出密鑰,攻擊者必須向自己的地址發(fā)送付款。這些事務(wù)將生成新的輸出密鑰,這些密鑰將由攻擊者擁有。每個事務(wù)輸出只用花費1 piconero(10-12XMR)。對于攻擊者來說,創(chuàng)建有效交易的成本主要是交易費用。文獻(xiàn)[33]探索了采用每個交易多少個輸入時經(jīng)濟和時間成本最低,探索了制造多少交易與最終可破解的交易占比之間的關(guān)系,探索了該方法在不同的門羅幣版本上的成本和效果。

相較于一些高成本的計算和門羅幣本身的價值而言,泛洪攻擊的成本非常低。實驗發(fā)現(xiàn),攻擊者僅需要花費9.253 XMR 或582.19 美元的交易費用,就可以在一年內(nèi)控制50% 的輸出密鑰。導(dǎo)致這一結(jié)果有兩個原因:一是RingCT 使用后幣值不再顯示出來,因此mixin 的選擇可以不需要選擇相同幣值的mixin,這樣就降低了泛洪攻擊的成本,使得創(chuàng)建一個新的輸入變得十分便宜,可以低成本地建立起一個已知的密鑰庫;第二,門羅幣的級聯(lián)效應(yīng),在掌握一些已知密鑰的時候,可以推斷出更多的密鑰,而這些新的密鑰又增加了已知密鑰庫,從而便于推斷出更多的密鑰。

事實上采用如此低廉的手段,可以使得如此高比例的門羅幣交易可追蹤,對于整個門羅幣網(wǎng)絡(luò)的匿名性打擊是致命的。顯然,門羅幣的設(shè)計者認(rèn)為這樣的攻擊成本很高以至于不可實現(xiàn),但是他們沒有考慮到RingCT 對這一成本的完全摒棄。RingCT很好地解決了0-mixin攻擊等可以從幣值上出發(fā)來進(jìn)行破譯的方法[9],但是卻被泛洪攻擊這樣的攻擊破譯。泛洪攻擊幾乎是目前所有的攻擊中對RingCT真正有效的方法。

2.6 惡意遠(yuǎn)程節(jié)點攻擊

遠(yuǎn)程惡意節(jié)點攻擊(Tracing Attacks from Remote Nodes)由Lee 等[34]首先提出。文獻(xiàn)[34]不僅提出了攻擊的方法,還設(shè)計了如何抵御這種攻擊的機制。

2.6.1 門羅幣客戶端與遠(yuǎn)程節(jié)點運作方式

在解釋攻擊之前,首先描述門羅幣客戶端和遠(yuǎn)程節(jié)點的運作方式,Cao 等[35]詳細(xì)解釋了門羅幣的網(wǎng)絡(luò)結(jié)構(gòu)。當(dāng)門羅幣客戶端啟動交易時,它首先查詢遠(yuǎn)程節(jié)點以獲得有關(guān)塊鏈的信息。接收到的信息中包括最大全局索引,錢包將使用該索引來確定交易中包含哪些mixin。錢包對候選輸出(按全局索引)進(jìn)行采樣,以用作mixin。為了避免揭示哪一個是真正的輸入,客戶端還將mixin 的索引和真正的輸入一起包含到請求中,盡管這些冗余數(shù)據(jù)已經(jīng)由錢包存儲[36]。輸出請求通過 get_outs.bin 的應(yīng)用程序接口(Application Programming Interface,API)端點發(fā)送到遠(yuǎn)程節(jié)點,該端點將返回每個請求的所包含的密鑰。當(dāng)收到get_outs.bin 的響應(yīng)時,客戶端執(zhí)行部分驗證:如果客戶端的這些密鑰(已經(jīng)存儲在錢包中)不在返回的響應(yīng)中,則事務(wù)被中止,并向用戶顯示錯誤。在錢包接收到所有的密鑰后,它從這些密鑰中統(tǒng)一選擇最終的mixin 數(shù)量,并將它們與真正的密鑰一起形成事務(wù)。在確認(rèn)交易之后,客戶端將這些輸出標(biāo)記為已花費狀態(tài),并將交易傳輸?shù)竭h(yuǎn)程節(jié)點,如圖7 所示。

圖7 門羅幣客戶端與遠(yuǎn)程節(jié)點運作方式示意圖Fig.7 Schematic diagram of operation mode between Monroe client and remote node

2.6.2 惡意遠(yuǎn)程節(jié)點攻擊原理與舉例

首先對上面描述的客戶端行為進(jìn)行觀察:如果遠(yuǎn)程節(jié)點返回?zé)o效響應(yīng)并在客戶端觸發(fā)異常,則客戶端中止交易并向用戶顯示消息。如果用戶再次嘗試啟動相同的交易,客戶端軟件將重新開始處理,包括采樣所有要作為mixin 使用的新輸出。最終的結(jié)果是將兩個查詢發(fā)送到遠(yuǎn)程節(jié)點,而這兩次請求中包含的幾個密鑰中相交的那個,就是真實的輸入。

如圖8,假設(shè)第一次客戶端發(fā)出請求,消息中包含L1={key-1,key-2,key-3,key-4};當(dāng)節(jié)點返無效響應(yīng),用戶再次啟動相同的交易,客戶端采集了不同的mixin,發(fā)送的消息中包含L2={key-1,key-5,key-6,key-7}。那么可 以推斷 出,L1 ∩L2={key-1},key-1 就是真實的輸入。

圖8 惡意遠(yuǎn)程節(jié)點攻擊示意圖Fig.8 Schematic diagram of tracing attacks from remote nodes

2.6.3 惡意遠(yuǎn)程節(jié)點攻擊有效性評價

惡意遠(yuǎn)程節(jié)點攻擊是利用了門羅幣系統(tǒng)消息傳遞的不安全性和節(jié)點間通信的驗證漏洞。目前節(jié)點間的通信還使用簡單的明文HTTP(Hyper Text Transfer Protocol)來傳輸JSON(JavaScript Object Notation)文件[34],沒有使用加密的可信信道,因此惡意節(jié)點可以沒有障礙地獲得信息,從而從獲取的信息中推斷出真正的輸入。但是保密學(xué)發(fā)展十分完備,這些問題如果得到門羅幣開發(fā)人員的重視,可以在新的更新中應(yīng)用加密、握手協(xié)議等很容易地解決。

2.7 錢包環(huán)攻擊

錢包環(huán)攻擊(Monero Ring Attack)由Wijaya 等[37]提出。由于Monero 系統(tǒng)只檢查提交的事務(wù)的有效性,環(huán)簽名的構(gòu)造完全由錢包處理[38],Wijaya 等[37]使用自己編寫的錢包完成攻擊。錢包環(huán)攻擊包括3 個階段:

準(zhǔn)備階段 攻擊者需要有一些未使用的輸出TXO,數(shù)量要大于系統(tǒng)允許的環(huán)簽名的最小尺寸。

啟動階段 假設(shè)有r個密鑰屬于集合L,那么創(chuàng)建r個輸入,也就是r個環(huán),r個密鑰的TXO 在r個輸入中被消耗。每個環(huán)的mixin 的選擇也都從集合L中來。

攻擊階段 被動攻擊:當(dāng)其他的輸入選擇到L中的密鑰作為mixin 時,可以很容易得知這幾個mixin 不是真實的輸入,可以把這幾個mixin 剔除,從而減小了有效匿名集大小。主動攻擊:讓被攻擊者使用一個惡意的錢包,這個錢包創(chuàng)建的交易所選擇的mixin 都是從L中選擇的。由于這些密鑰已知已經(jīng)被花費,所以真正的輸入就是在L集合外的那個密鑰。

如圖9,先準(zhǔn)備5 個沒有花費的輸出L={key-1,key-2,key-3,key-4,key-5},在交易Tx1、Tx2、Tx3、Tx4、Tx5 中分別把這5 個輸出作為輸入,并為每一個輸入創(chuàng)建1 個5 密鑰的環(huán),其余的4 個mixin 都來自L,那么就確保了這5 個密鑰都是已經(jīng)被花費了的輸入。被動攻擊類似封閉集攻擊,事實上啟動階段的過程就是在創(chuàng)造封閉集的過程,輸入的大小和密鑰的個數(shù)都是5,那么當(dāng)在其他的交易輸入中出現(xiàn)的時候,就可以判斷是mixin 而非真實的輸入予以剔除。如圖9 中Tx6,由于key-1、key-2 已經(jīng)被花費,這個交易的真實輸入只能從key-6、key-7、key-8 中產(chǎn)生,由此有效匿名集的大小減小為3。主動攻擊則是使用一個惡意的錢包,這個錢包的功能是實現(xiàn)在創(chuàng)建環(huán)的時候,選擇的mixin 都來自L,如圖9 中Tx7,創(chuàng)建一個新的輸入時,除了真實的新的輸入,其余的密鑰都來自L,那么那個唯一不來自L的key-6 就是真實的輸入,從而實現(xiàn)了追蹤。

圖9 錢包環(huán)攻擊示意圖Fig.9 Schematic diagram of Monero ring attack

Wijaya 等[39]提出了一種可以緩解錢包環(huán)攻擊的方法,利用哈希函數(shù)來檢測出重復(fù)出現(xiàn)多次的mixin,并提出改進(jìn)門羅幣守護(hù)進(jìn)程,增加鑒別限制mixin 重復(fù)使用多次的機制,來防止錢包環(huán)攻擊。Wijaya 等[39]還提出了錢包環(huán)攻擊的改進(jìn)方法,來躲避他們前面提到的鑒別,在創(chuàng)建環(huán)的時候有規(guī)律地分布各個公鑰以達(dá)到既全部花費又減少公鑰被重復(fù)的次數(shù)。

錢包環(huán)攻擊方法中的主動攻擊確實可以100%確定真實的輸入從而實現(xiàn)追蹤,而且如果掌握的密鑰越多,破解的可能性越大。而且由于RingCT 的應(yīng)用,幣值不再是問題,可以只使用小額的輸入來創(chuàng)建為了攻擊的交易,降低了這個方法的使用費用。錢包環(huán)攻擊主動攻擊的前提是這個錢包被追蹤人所用,而要達(dá)到這個目的卻非常難。要是通過被動攻擊方法,則需要創(chuàng)建大量的交易輸入,在區(qū)塊中加入自己已知的密鑰,而每加入一個密鑰,就需要相應(yīng)產(chǎn)生一筆輸入并創(chuàng)建一個環(huán)。要真正實現(xiàn)在成千上萬個區(qū)塊中達(dá)到現(xiàn)實的可追蹤性,那么需要創(chuàng)建數(shù)以萬計的輸入才能實現(xiàn),無論是從時間還是經(jīng)濟成本來說都不是一個簡便的方法。

3 結(jié)語

目前對于門羅幣匿名技術(shù)和追蹤技術(shù)的評價和討論的綜述性文獻(xiàn)比較少,評價大多還來自每個提出新方法的研究前列出的相關(guān)研究。但Yu 等[15]對門羅幣追蹤技術(shù)和門羅幣的不可追蹤性進(jìn)行了總結(jié)和反思。Yu 等[15]認(rèn)為文獻(xiàn)[30-31]只考慮了一個只能觀察區(qū)塊鏈公共信息的被動攻擊者,并沒有總結(jié)和評價文獻(xiàn)[33,37]主動攻擊方法的優(yōu)劣。他們還討論了如何評價不可追蹤性,提出要從個體不可追蹤性和全局不可追蹤性兩個角度來思考的方法。Hinteregger 等[40]也總結(jié)了除了錢包環(huán)攻擊和遠(yuǎn)程惡意節(jié)點攻擊之外的追蹤技術(shù),并且對Kumar 等[30]的方法進(jìn)行了跨鏈的驗證。除此之外,Borggren 等[41]盡管沒提出新的方法,但是引入了機器學(xué)習(xí)的方法,該技術(shù)可以用來輔助識別個人和群體。

本文通過前面部分的綜述得到如下幾點結(jié)論:

結(jié)論1 門羅幣的匿名技術(shù)和追蹤技術(shù)呈現(xiàn)出相互促進(jìn)的特點。0-mixin 攻擊的出現(xiàn)迫使門羅幣提高mixin 使用的最低限度,也降低了使用mixin 的成本以誘導(dǎo)用戶使用mixin。最新猜測攻擊的出現(xiàn)也使得門羅幣改變了mixin 的選擇策略以避免最新的TXO 總是成為真實的輸入[26]。為了防止從幣值出發(fā)的各種方法,也為了提高mixin 可選擇的范圍,RingCT成功隱藏了幣值,使得從幣值出發(fā)的追蹤方法徹底失效。同時這些匿名技術(shù)的進(jìn)步也催生了新的追蹤技術(shù)。

結(jié)論2 RingCT 的應(yīng)用是一把雙刃劍,它既使從幣值出發(fā)的被動攻擊方法失效,也使主動攻擊方法更加容易。RingCT 出現(xiàn)使得被動攻擊方法失效。RingCT 的應(yīng)用使得傳統(tǒng)的0-mixin 攻擊、最新猜測攻擊等失效,Ye 等[32]對這些方法驗證后發(fā)現(xiàn),新區(qū)塊上可追蹤的交易占比幾乎降至0%。RingCT 的出現(xiàn)使得主動攻擊方法變得更加有效。RingCT 的出現(xiàn)極大降低了泛洪攻擊的成本使得泛洪攻擊變得可行,不難想象,如果有對于門羅幣追蹤的商業(yè)性質(zhì)的需求,泛洪攻擊或許會成為攻擊者針對RingCT 的有力攻擊武器。諸如錢包環(huán)攻擊等的方法,也因為RingCT 隱藏幣值使得mixin 可以從任意其他交易地址中選擇的特性而變得成本很低。

結(jié)論3 輸出合并攻擊和0-mixin 攻擊具有互補作用。實驗證明這兩種方法的追蹤準(zhǔn)確性很高,且具有互補的優(yōu)勢。0-mixin 攻擊在較少mixin 的交易中有效性更高,而輸出合并攻擊在高mixin 的交易追蹤中具有優(yōu)勢,可以追蹤出0-mixin 攻擊追蹤范圍之外的交易。如果單純利用傳統(tǒng)的被動攻擊方法,將兩者集合起來使用,可以最大限度提高被動攻擊方法的有效性。

結(jié)論4 門羅幣的系統(tǒng)安全鏈條仍待理順。惡意遠(yuǎn)程節(jié)點攻擊的成功和錢包環(huán)攻擊的成功說明門羅幣的體系存在安全漏洞。惡意遠(yuǎn)程節(jié)點攻擊的成功是基于門羅幣的遠(yuǎn)程節(jié)點和客戶端之間的通信是公開的、未經(jīng)加密的,這些交易信息相當(dāng)于在傳輸中透明。錢包環(huán)攻擊的成功基于門羅幣系統(tǒng)放任門羅幣錢包自己產(chǎn)生環(huán)而不加嚴(yán)格的檢查,這種寬容性對門羅幣的應(yīng)用有利,但是破壞了門羅幣的安全性。Lee 等[34]已經(jīng)將惡意遠(yuǎn)程節(jié)點攻擊的漏洞通報給了門羅幣社區(qū),目前該漏洞已經(jīng)修復(fù)。

目前來說,大多研究都從門羅幣交易信息等外部特征出發(fā),很少有從門羅幣本身機制出發(fā)的追蹤探索,目前只有惡意遠(yuǎn)程節(jié)點攻擊使用了密碼學(xué)的相關(guān)知識來進(jìn)行追蹤。而匿名數(shù)字貨幣作為密碼學(xué)知識的一種應(yīng)用,從密碼學(xué)角度出發(fā)的本身機制的探索可能會提供更加有力的科學(xué)的追蹤方法。未來對于門羅幣追蹤的研究突破,可能存在于從內(nèi)部機制或者運營系統(tǒng)等角度出發(fā)的追蹤方法。

猜你喜歡
方法
中醫(yī)特有的急救方法
中老年保健(2021年9期)2021-08-24 03:52:04
高中數(shù)學(xué)教學(xué)改革的方法
河北畫報(2021年2期)2021-05-25 02:07:46
化學(xué)反應(yīng)多變幻 “虛擬”方法幫大忙
變快的方法
兒童繪本(2020年5期)2020-04-07 17:46:30
學(xué)習(xí)方法
用對方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
最有效的簡單方法
山東青年(2016年1期)2016-02-28 14:25:23
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
賺錢方法
捕魚
主站蜘蛛池模板: 国产产在线精品亚洲aavv| 国产精品一区在线麻豆| 欧美在线免费| 国产99视频在线| 日本欧美午夜| 伊人久久青草青青综合| 欧洲av毛片| 国产微拍一区二区三区四区| 综合人妻久久一区二区精品 | 人人爱天天做夜夜爽| 国产成人欧美| 午夜精品久久久久久久无码软件 | 午夜精品福利影院| 国产免费黄| 亚洲第一黄片大全| 又大又硬又爽免费视频| 亚洲国产精品美女| 久久这里只精品国产99热8| 色精品视频| 国产人在线成免费视频| 国产成人久久777777| 国产成人一区二区| 日韩精品无码免费一区二区三区| 无码av免费不卡在线观看| 亚洲欧美在线看片AI| 免费看av在线网站网址| 亚洲视频一区在线| 久久这里只有精品66| 国产视频 第一页| 国产一区二区三区精品久久呦| 在线观看国产精美视频| 欧美在线视频a| 国外欧美一区另类中文字幕| 国产一区二区色淫影院| 欧美国产综合色视频| 亚洲欧洲天堂色AV| 91福利国产成人精品导航| 国产综合网站| 欧美a级完整在线观看| 91原创视频在线| 国产女人在线视频| 日韩大片免费观看视频播放| 狠狠色噜噜狠狠狠狠色综合久| 久久综合色天堂av| 91精品国产麻豆国产自产在线| 国产欧美在线观看精品一区污| 日本AⅤ精品一区二区三区日| 这里只有精品在线播放| 国产区成人精品视频| 男人天堂亚洲天堂| 亚洲床戏一区| 91人妻日韩人妻无码专区精品| 97视频免费在线观看| 第一区免费在线观看| v天堂中文在线| 精品小视频在线观看| 怡春院欧美一区二区三区免费| 亚洲一区无码在线| 免费人成视网站在线不卡| 欧美一区二区三区欧美日韩亚洲 | 在线观看视频99| 亚洲人成成无码网WWW| 99久久精品久久久久久婷婷| 色综合中文| 97成人在线视频| 久久精品嫩草研究院| 天天综合网色中文字幕| 国产在线小视频| 日本免费新一区视频| 激情无码字幕综合| 日韩欧美国产三级| 国产成人啪视频一区二区三区 | 国产人碰人摸人爱免费视频| 久久成人18免费| 国产精品视频3p| 无码中文字幕加勒比高清| 久久动漫精品| 亚洲无码在线午夜电影| a级高清毛片| 亚洲啪啪网| 亚洲人成影院午夜网站| 亚洲毛片一级带毛片基地|