3atv精品不卡视频,97人人超碰国产精品最新,中文字幕av一区二区三区人妻少妇,久久久精品波多野结衣,日韩一区二区三区精品

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

从分布式一致性算法到区块链共识机制

發(fā)布時(shí)間:2025/3/15 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 从分布式一致性算法到区块链共识机制 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

引言

分布式一致性是一個(gè)很“古典”的話題,即在分布式系統(tǒng)中,如何保證系統(tǒng)內(nèi)的各個(gè)節(jié)點(diǎn)之間數(shù)據(jù)的一致性或能夠就某個(gè)提案達(dá)成一致。這個(gè)問題想必對(duì)于很多技術(shù)同學(xué)而言并不陌生,幾乎在所有的分布式系統(tǒng)中都會(huì)遇到,比如hdfs、mq、zookeeper、kafka、redis、elasticsearch等。然而這個(gè)問題卻歷久彌新,隨著分布式網(wǎng)絡(luò)的蓬勃發(fā)展與復(fù)雜化,對(duì)于該問題解法的探索也一直在進(jìn)行中。

而近年來,隨著區(qū)塊鏈技術(shù)的興起,特別是開放網(wǎng)絡(luò)中的公有鏈與有權(quán)限網(wǎng)絡(luò)中的聯(lián)盟鏈的蓬勃發(fā)展,一致性問題再次得到關(guān)注,并從新的視角來審視該問題。

本文將從傳統(tǒng)的分布式一致性問題說起,再次重溫我們需要面對(duì)的問題挑戰(zhàn)、已有的理論研究、以及相應(yīng)的一致性算法,并簡(jiǎn)要分析這些一致性算法的適用性與局限性,以及這些傳統(tǒng)一致性算法與嶄新的區(qū)塊鏈技術(shù)的結(jié)合。另外,將從區(qū)塊鏈中一致性問題的全新視角“人的可信”出發(fā),重點(diǎn)闡述公有鏈領(lǐng)域中的共識(shí)算法與機(jī)制。因此,本文圍繞“一致性”技術(shù)問題,重點(diǎn)從技術(shù)視角闡述傳統(tǒng)計(jì)算機(jī)科學(xué)中的分布式一致性算法與區(qū)塊鏈中的共識(shí)機(jī)制的關(guān)聯(lián),以及公有鏈對(duì)于一致性問題的重新思考。

分布式一致性問題的挑戰(zhàn)

要清楚理解分布式一致性,首先需要對(duì)分布式網(wǎng)絡(luò)的特性有清晰的認(rèn)識(shí)。那么分布式網(wǎng)絡(luò)具有哪些特點(diǎn)呢?或者通俗理解,在分布式網(wǎng)絡(luò)中,可能遇到哪些問題呢?

Crash Fault

故障錯(cuò)誤(Crash Fault)很好理解,就是說分布式網(wǎng)絡(luò)中:

  • 節(jié)點(diǎn)或副本可能隨時(shí)宕機(jī)、可能暫停運(yùn)行但隨后又恢復(fù);
  • 網(wǎng)絡(luò)可能隨時(shí)中斷;
  • 發(fā)送的消息可能在傳遞的過程中丟失,對(duì)方一直收不到;
  • 發(fā)送的消息可能出現(xiàn)延遲,過了很久對(duì)方才能收到;
  • 消息在傳遞的過程中可能出現(xiàn)亂序;
  • 網(wǎng)絡(luò)可能出現(xiàn)分化,如中美集群因通信不暢,而導(dǎo)致整體網(wǎng)絡(luò)分化為中美兩個(gè)子網(wǎng)絡(luò);

這些問題,其實(shí)就是我們?cè)诜植际江h(huán)境中最常實(shí)際遇到的問題,這些問題實(shí)質(zhì)上都是由于分布式系統(tǒng)中的物理硬件的不可靠、不穩(wěn)定所帶來的必然風(fēng)險(xiǎn),比如:網(wǎng)絡(luò)(信道)不可能是永遠(yuǎn)穩(wěn)定可靠的、物理機(jī)磁盤或CPU等不可能是永遠(yuǎn)良好的。故障錯(cuò)誤可以說是分布式系統(tǒng)中必須考慮并解決的最基本、最常見的一類錯(cuò)誤。

Byzantine Fault

上文的故障錯(cuò)誤,仍然基于一個(gè)很簡(jiǎn)單的假設(shè):節(jié)點(diǎn)要么不正常工作或響應(yīng),要么能正常工作或響應(yīng),但不能口是心非、陽(yáng)奉陰違、表里不一,即可以不干事、但不能干壞事。一旦網(wǎng)絡(luò)中存在作惡節(jié)點(diǎn),可能會(huì)隨意篡改或偽造數(shù)據(jù),那么一致性問題的難度就大幅增加。我們常把這類存在“搗亂者”,可能會(huì)篡改或偽造數(shù)據(jù)或響應(yīng)信息的錯(cuò)誤,稱之為拜占庭錯(cuò)誤(Byzantine Fault),而前面所說的故障類錯(cuò)誤也稱之為非拜占庭錯(cuò)誤。

拜占庭這一稱呼,源于Lamport最初的論文,可以說是分布式領(lǐng)域最復(fù)雜、最嚴(yán)格的容錯(cuò)模型。簡(jiǎn)而言之,n個(gè)將軍準(zhǔn)備一起進(jìn)攻某個(gè)城堡,每個(gè)將軍都可以選擇進(jìn)攻或是撤退,但所有將軍必須行動(dòng)一致才能成功。各個(gè)將軍之間相隔很遠(yuǎn),不能直接通訊,必須通過信使來傳遞消息。但是信使并不可靠,信使可能過了很久才送到消息、可能一直也沒有把消息送到、甚至可能會(huì)故意篡改消息;而將軍也并不可靠,里面可能存在叛徒,并不按照提案來行動(dòng)。顯然,這個(gè)故事中的信使用來代表分布式網(wǎng)絡(luò)中的不可靠信道,而將軍就是各個(gè)不可靠的節(jié)點(diǎn)。

拜占庭問題示意圖(https://lisk.io/academy/blockchain-basics/how-does-blockchain-work/byzantine-fault-tolerance-explained)

應(yīng)對(duì)風(fēng)險(xiǎn)—Fault Tolerance

如何在充滿風(fēng)險(xiǎn)與不確定的分布式網(wǎng)絡(luò)中,尋找到某種確定性與一致性,使得整個(gè)分布式網(wǎng)絡(luò)輸出穩(wěn)定可靠的一致性結(jié)果,就是分布式一致性算法要解決的核心問題。顯而易見,解決故障類錯(cuò)誤更容易一些,通常把這類一致性算法叫做故障容錯(cuò)算法(Crash Fault Tolerance)或者非拜占庭容錯(cuò)算法。而拜占庭類錯(cuò)誤,因?yàn)橛袗阂獯鄹牡目赡苄源嬖?#xff0c;復(fù)雜性更高、解決難度更大,通常把解決這類問題的算法稱作拜占庭容錯(cuò)算法(Byzantine Fault Tolerance)。

那么我們?nèi)滩蛔∫獑?#xff0c;兩類容錯(cuò)算法的界限在哪里?或者說兩類錯(cuò)誤都在什么樣的場(chǎng)景下出現(xiàn)?惡意篡改這種情況真的需要考慮嗎?問題的答案可能取決于我們所處的網(wǎng)絡(luò)環(huán)境與業(yè)務(wù)場(chǎng)景。

CFT

通常而言,如果系統(tǒng)處于可信的內(nèi)部網(wǎng)絡(luò)環(huán)境中,只需要考慮故障容錯(cuò)(CFT)可能就足夠了。比如我們經(jīng)常見到的公司內(nèi)的分布式存儲(chǔ)、消息隊(duì)列、分布式服務(wù)等各種分布式組件,其實(shí)只需要考慮故障容錯(cuò)就足夠了。因?yàn)楣緝?nèi)整個(gè)網(wǎng)絡(luò)是封閉的,又有多重防火墻的保護(hù),外界很難接入或攻擊;各個(gè)節(jié)點(diǎn)是由公司統(tǒng)一部署的,機(jī)器或運(yùn)行的軟件遭到篡改的可能性極小;此時(shí)的分布式網(wǎng)絡(luò)環(huán)境相對(duì)“單純”,我們唯一的敵人只是:通信網(wǎng)絡(luò)與機(jī)器硬件。我們需要考慮的是網(wǎng)絡(luò)的延遲、不穩(wěn)定,以及機(jī)器隨時(shí)可能出現(xiàn)的宕機(jī)、故障。

BFT

而拜占庭類錯(cuò)誤(BFT),是把整個(gè)分布式網(wǎng)絡(luò)放到了更大的環(huán)境中去看,除了物理硬件之外,還考慮了一些“人”的因素。畢竟,機(jī)器是不會(huì)作惡的,作惡的只有人。假如我們所處的分布式網(wǎng)絡(luò)是較為開放的網(wǎng)絡(luò),比如行業(yè)內(nèi)幾十上百家公司組成的聯(lián)盟網(wǎng)絡(luò);或者是完全開放的網(wǎng)絡(luò),比如任何人都可以隨意接入到網(wǎng)絡(luò)中;而節(jié)點(diǎn)機(jī)器和上面部署的軟件也是由各個(gè)公司或個(gè)人自己提供和部署的,那么如果利益足夠大,很可能會(huì)有人對(duì)網(wǎng)絡(luò)中的某個(gè)節(jié)點(diǎn)發(fā)起DDoS攻擊、故意篡改軟件代碼改變其執(zhí)行邏輯、甚至可能故意篡改磁盤上持久化的數(shù)據(jù)。顯然,我們此時(shí)面臨的挑戰(zhàn)更大了,我們除了要考慮通信網(wǎng)絡(luò)和機(jī)器硬件的不可靠之外,還必須要考慮和應(yīng)對(duì)系統(tǒng)中的“搗亂者”。

不可能三角

這些實(shí)踐中遇到的問題,也引發(fā)了諸多計(jì)算科學(xué)家進(jìn)行了非常多的理論研究。這些理論研究對(duì)于工程技術(shù)人員而言或許過于抽象繁瑣,有些甚至是無趣的數(shù)學(xué)問題,但這些理論對(duì)于指導(dǎo)我們解決這些問題意義重大。這些理論相當(dāng)于是告訴了我們這類問題解法的理論極限,以及哪些方向可以探索、哪些方向是死路一條。站在前人的肩膀上,才不至于花畢生精力去研制“永動(dòng)機(jī)”。這些理論大家應(yīng)該都有所了解,這里只簡(jiǎn)單回顧。

FLP impossibility

早在1985年,Fisher、Lynch、Paterson三位科學(xué)家就發(fā)表了關(guān)于分布式一致性問題的不可能定理:在完全異步的分布式網(wǎng)絡(luò)中,故障容錯(cuò)問題無法被解決。( We have shown that a natural and important problem of fault-tolerant cooperative computing cannot be solved in a totally asynchronous model of computation. )說得更直白點(diǎn):在異步網(wǎng)絡(luò)中,不可能存在能夠容忍節(jié)點(diǎn)故障的一致性算法,哪怕只有一個(gè)節(jié)點(diǎn)故障。并且這里并沒有考慮拜占庭錯(cuò)誤,而是假設(shè)網(wǎng)絡(luò)非常穩(wěn)定、所有的消息都能被正確傳遞、并且僅被傳遞一次,即便如此都不可能找到能容忍哪怕只有一個(gè)節(jié)點(diǎn)失效的一致性協(xié)議,可見該結(jié)論有多強(qiáng)。( In this paper, we show the surprising result that no completely asynchronous consensus protocol can tolerate even a single unannounced process death. We do not consider Byzantine failures, and we assume that the message system is reliableit delivers all messages correctly and exactly once. )

當(dāng)然了,這只是理論上的。它的意義在于告訴我們此類問題的理論極限,并不意味著此類問題在實(shí)踐中也不可能被“解決”。如果我們?cè)敢夥艑捪拗啤⒆龀鰻奚?#xff0c;在工程上是可以找到切實(shí)可行的解法的。

FLP不可能定理的最大適用前提是異步網(wǎng)絡(luò)模型。何為同步、異步模型呢?

  • 所謂異步模型,是說從一個(gè)節(jié)點(diǎn)到另一個(gè)節(jié)點(diǎn)的消息延遲是有限的,但可能是無界的(finite but can be unbounded)。這就意味著如果一個(gè)節(jié)點(diǎn)沒有收到消息,它無法判斷消息到底是丟失了,還是只是延遲了。也就是說,我們無法通過超時(shí)時(shí)間來判斷某個(gè)節(jié)點(diǎn)是否故障。
  • 所謂同步模型,是說消息傳遞的延遲是有限的,且是有界的。這就意味著我們可以通過經(jīng)驗(yàn)或采樣精確估算消息的最大可能延遲,從而可以通過超時(shí)時(shí)間來確定消息是否丟失、節(jié)點(diǎn)是否故障。

所幸的是,我們所處于的真實(shí)的網(wǎng)絡(luò)世界更接近同步模型,在很多場(chǎng)景上,我們都可以通過經(jīng)驗(yàn)或采樣確定最大超時(shí)時(shí)間。舉個(gè)通俗點(diǎn)的例子:你給朋友快遞了一本書,朋友過了3天還沒收到,此時(shí)朋友很難判斷到底是快遞延遲了,還是快遞出問題送丟了。但是如果過了一個(gè)月,朋友仍沒收到書,基本就可以斷定快遞送丟了。而背后的推論就是基于經(jīng)驗(yàn)或統(tǒng)計(jì):通常快遞都能在1-2周內(nèi)送達(dá)。顯然,異步模型其實(shí)是反映了節(jié)點(diǎn)間通訊的最差情況、極端情況,異步模型包含了同步模型,即能在異步模型上有效的一致性協(xié)議,在同步模型上也同樣有效。而同步模型是對(duì)異步模型做了修正和約束,從而使得更接近真實(shí)世界,也使得在實(shí)踐中一致性問題有可能得到有效解。

另外,即便是在異步網(wǎng)絡(luò)模型下,FLP也并不意味著一致性永遠(yuǎn)無法達(dá)成,只是說無法保證在有界的時(shí)間(in bounded time)內(nèi)達(dá)成。在實(shí)踐上,如果放寬對(duì)bounded time的限制,仍然是有可能找到實(shí)踐中的解法的。

而根據(jù)DLS的研究(http://groups.csail.mit.edu/tds/papers/Lynch/jacm88.pdf ),一致性算法按照網(wǎng)絡(luò)模型可以分為三大類:

  • 部分同步網(wǎng)絡(luò)模型(partially synchronous model)中的一致性協(xié)議可以容忍最多1/3的任意錯(cuò)誤。這里的部分同步模型是指網(wǎng)絡(luò)延遲是有界的,但是我們無法提前得知。這里的容錯(cuò)也包含了拜占庭類錯(cuò)誤。
  • 異步網(wǎng)絡(luò)模型(asynchronous model)中的確定性協(xié)議無法容忍錯(cuò)誤。這里的異步模型即是前文所說的網(wǎng)絡(luò)延遲是無界的。該結(jié)論其實(shí)就是FLP不可能定理的含義,在完全異步網(wǎng)絡(luò)中的確定性協(xié)議不能容忍哪怕只有一個(gè)節(jié)點(diǎn)的錯(cuò)誤。
  • 同步網(wǎng)絡(luò)模型(synchronous model)可以達(dá)到驚人的100%容錯(cuò),雖然對(duì)錯(cuò)誤節(jié)點(diǎn)超過1/2時(shí)的節(jié)點(diǎn)行為有限制。這里的同步模型是指網(wǎng)絡(luò)延遲一定是有界的,即小于某個(gè)已知的常數(shù)。

從另一個(gè)角度來理解,FLP實(shí)際上考慮了分布式系統(tǒng)的3個(gè)屬性:安全(safety)、活性(liveness)、容錯(cuò):

  • 安全是說系統(tǒng)內(nèi)各個(gè)節(jié)點(diǎn)達(dá)成的值是一致的、有效的。safety其實(shí)是保證系統(tǒng)一致性運(yùn)行的最低要求,其核心是cannot do something bad,即不能干壞事、不能做錯(cuò)事。
  • 活性是說系統(tǒng)內(nèi)各個(gè)節(jié)點(diǎn)最終(在有限時(shí)間內(nèi))必須能夠達(dá)成一致,即系統(tǒng)必須能夠向前推進(jìn),不能永遠(yuǎn)處于達(dá)不成一致的狀態(tài)。liveness其實(shí)是更高要求,意味著不能只是不干壞事,也不能一直不干事,you must do something good,即必須使得整個(gè)系統(tǒng)能良好運(yùn)轉(zhuǎn)下去。
  • 容錯(cuò)是說該協(xié)議在有節(jié)點(diǎn)故障的情況下也必須能有效。

FLP不可能定理其實(shí)意味著在異步網(wǎng)絡(luò)中,不可能存在同時(shí)滿足這三者的分布式一致性協(xié)議。因?yàn)榉植际江h(huán)境中,節(jié)點(diǎn)故障幾乎是必然的,因此容錯(cuò)是必須要考慮的因素,所以FLP不可能定理就意味著一致性協(xié)議在能做到容錯(cuò)的情況下,沒辦法同時(shí)做到安全性與系統(tǒng)活性。通常在實(shí)踐中,我們可以做出部分犧牲,比如犧牲一部分安全性,意味著系統(tǒng)總能很快達(dá)成結(jié)論,但結(jié)論的可靠性不足;或者犧牲一部分系統(tǒng)活性,意味著系統(tǒng)達(dá)成的結(jié)論非常可靠,但可能長(zhǎng)時(shí)間、甚至永遠(yuǎn)都在爭(zhēng)論中,無法達(dá)成結(jié)論。所幸的是,很多時(shí)候現(xiàn)實(shí)世界的魯棒性很強(qiáng),使一致性協(xié)議失效的倒霉事件發(fā)生的概率也很可能極低。

??


FLP不可能定理示意圖(https://www.slideshare.net/oryband/the-stellar-blockchain-and-the-story-of-the-federated-consensusblockchain-academy)

另外,FLP并未排除Las Vegas類隨機(jī)算法,許多一致性算法采用了這種隨機(jī)性來規(guī)避FLP不可能定理對(duì)于確定性異步網(wǎng)絡(luò)的限制。此類非確定性一致性算法涉及Las Vegas規(guī)則:網(wǎng)絡(luò)最終一定能達(dá)成一致,但是達(dá)成一致所需要的時(shí)間可能是無界的。此類算法每輪共識(shí)決策都有一定的概率,并且系統(tǒng)在T秒內(nèi)能夠達(dá)成一致的概率P隨著時(shí)間T的增加而指數(shù)增長(zhǎng)并趨近于1。事實(shí)上,該方法被許多成功的一致性算法所采用,是在FLP不可能定理籠罩下的安全地帶(escape hatch),后面將會(huì)講到比特幣的共識(shí)機(jī)制就是采用了這樣的方法。

CAP theorem

眾所周知、大名鼎鼎的CAP原理,從另一個(gè)維度,簡(jiǎn)單明了、直截了當(dāng)?shù)馗嬖V我們:可用性、一致性與網(wǎng)絡(luò)分區(qū)容錯(cuò)性這三者不可能同時(shí)實(shí)現(xiàn),而只能實(shí)現(xiàn)任意其中的兩個(gè)。( "Of three properties of shared-data systems (data consistency, system availability and tolerance to network partitions) one can only achieve two at any given time".) CAP與FLP看起來有相似之處,其實(shí)二者并不盡相同,二者是從不同的維度思考問題,另外即使是很相似的概念,內(nèi)涵也并不完全一樣。比如:

  • FLP面對(duì)的是分布式一致性問題,而CAP面對(duì)的是分布式網(wǎng)絡(luò)中的數(shù)據(jù)同步與復(fù)制。
  • FLP是說在異步網(wǎng)絡(luò)模型中,三者不可能同時(shí)實(shí)現(xiàn);而CAP是說在所有場(chǎng)景下,三者都不可能同時(shí)實(shí)現(xiàn)。
  • FLP中的liveness強(qiáng)調(diào)的是一致性算法的內(nèi)在屬性;而CAP中的availability強(qiáng)調(diào)的是一致性算法對(duì)外呈現(xiàn)的外在屬性。

理論上,只能從CAP三者中選擇兩者,然而,這種選擇的邊界并非是非此即彼的(not binary),很多時(shí)候混合考慮不同程度的各個(gè)因素,結(jié)果可能是更好的。( The whole spectrum in between is useful; mixing different levels of Availability and Consistency usually yields a better result.)

?


CAP理論示意圖(https://www.researchgate.net/figure/Visualization-of-CAP-theorem_fig2_282679529)

在實(shí)踐中,我們通常需要根據(jù)實(shí)際業(yè)務(wù)場(chǎng)景做折中權(quán)衡。比如:

  • 傳統(tǒng)的關(guān)系型數(shù)據(jù)庫(kù)如mysql等多采用ACID(atomicity, consistency, isolation and durability)理論,通過同步事務(wù)操作保證了強(qiáng)一致性;因節(jié)點(diǎn)較少(一般只有主從),可用性也比較一般;網(wǎng)絡(luò)拓?fù)漭^為簡(jiǎn)單,而弱化了分區(qū)容錯(cuò)性。
  • NoSQL存儲(chǔ)系統(tǒng)如hbase等多采用BASE(Basically Available、Soft state、Eventually consistent)理論,通過多節(jié)點(diǎn)多副本保證了較高的可用性;另外因節(jié)點(diǎn)數(shù)增多、網(wǎng)絡(luò)環(huán)境也更復(fù)雜,也考慮了網(wǎng)絡(luò)分區(qū)容錯(cuò)性;但一致性較弱,只能保證最終一致性。

?


ACID與BASE對(duì)比(https://people.eecs.berkeley.edu/~brewer/cs262b-2004/PODC-keynote.pdf)

當(dāng)然,這些并不是定論,各個(gè)系統(tǒng)都在各自不斷的進(jìn)化完善中,今天的結(jié)論明天可能就會(huì)被打破。更好的系統(tǒng)一定是不斷探索適合自己的場(chǎng)景,找到更佳的平衡點(diǎn)。

分布式一致性算法

面對(duì)分布式環(huán)境中各種真實(shí)、復(fù)雜的問題與挑戰(zhàn),基于理論上的指引,各種應(yīng)對(duì)現(xiàn)實(shí)問題的解法也被提出。我們這里不探究各類算法的實(shí)現(xiàn)細(xì)節(jié)與具體差異,僅做大體介紹,以便放到更大的維度,從整體上做比較。

Paxos

最大名鼎鼎的分布式一致性算法當(dāng)屬Lamport提出的paxos算法,雖然其復(fù)雜性也同樣“臭名昭著”。Lamport開創(chuàng)性地提出了一種在工程實(shí)踐上切實(shí)可行的、能夠最大程度地保證分布式系統(tǒng)一致性的機(jī)制。paxos被廣泛應(yīng)用在諸多分布式系統(tǒng)中,如Chubby、Zookeeper等。在basic paxos(單一法令,即每次僅對(duì)一個(gè)值進(jìn)行決策)中有兩種角色:proposer可以處理客戶端請(qǐng)求、主動(dòng)提出某個(gè)議案值;acceptor被動(dòng)響應(yīng)proposer發(fā)出的信息、對(duì)提案進(jìn)行投票、持久化存儲(chǔ)決策過程中的值和狀態(tài)。(為簡(jiǎn)化模型,可以忽略learner角色,不影響模型決策。)

如圖所示,共識(shí)決策過程采用了兩階段提交:

  • 第1階段,廣播Prepare RPC命令,即找出協(xié)議決定的最終值、阻斷尚未完成的舊提案;
  • 第2階段,廣播Accept RPC命令,即要求acceptor接受共識(shí)協(xié)商出的特定值。而multi-paxos是由多個(gè)basic paxos實(shí)例組成,可以對(duì)一系列的值進(jìn)行決議。

Paxos之所以在實(shí)踐中可行,其實(shí)也做了諸多假設(shè)和約束。從處理的問題上來看,Paxos僅能處理故障容錯(cuò),并不難處理拜占庭錯(cuò)誤,所以屬于非拜占庭容錯(cuò)算法。從FLP的視角,Paxos做到了故障容錯(cuò)和安全性,但放棄了liveness(safe but not live),也就是說該算法可能永遠(yuǎn)無法結(jié)束,或者說永遠(yuǎn)無法達(dá)成共識(shí),雖然這種可能性極小。從CAP的視角,Paxos只保證了CP,即做到了分區(qū)容錯(cuò)性和一致性,但弱化了可用性。有時(shí)為了增強(qiáng)paxos系統(tǒng)的可用性,可以考慮增加learner角色的數(shù)目。

即便并不完美,Paxos在實(shí)踐中仍然是可靠、有效且久經(jīng)考驗(yàn)的。Paxos本質(zhì)上是異步系統(tǒng)的分布式一致性協(xié)議,并且在該領(lǐng)域具有支配地位。Chubby之父甚至聲稱世界上只有一種一致性算法,那就是paxos( there is only one consensus protocol, and that’s Paxos),其他一致性算法都是paxos的broken version。Paxos之所以在實(shí)踐中有效是因?yàn)榭赡苡绊憄axos系統(tǒng)liveness和可用性的條件并不容易被觸發(fā),即便真的出現(xiàn),所帶來的代價(jià)也可能并非是難以接受的。

?


Basic Paxos RPC通信與決策過程(https://ongardie.net/static/raft/userstudy/paxos.pdf)

Raft

有感于Paxos的晦澀難懂,Ongaro在2014年提出了更容易理解的Raft算法。Raft把易于理解、易于工程實(shí)現(xiàn)提到了很高的重要級(jí)別,甚至是raft的初心和存在理由,因而在不影響功能性的前提下,盡可能多地做了易于理解的精細(xì)設(shè)計(jì)。

Raft算法是leader-based的非對(duì)稱模型,系統(tǒng)中的任意一個(gè)節(jié)點(diǎn)在任意時(shí)刻,只能處于leader、follower、candidate這3種狀態(tài)之一。初始狀態(tài)所有節(jié)點(diǎn)都是follower狀態(tài),follower想變成leader必須先成為candidate,然后發(fā)起選舉投票;如果投票不足,則回到follower狀態(tài);如果投票過半,則成為leader;成為leader后出現(xiàn)故障,若故障恢復(fù)后已有新leader,則自動(dòng)下臺(tái),回歸follower狀態(tài)。

Raft還引入了term的概念用于及時(shí)識(shí)別過期信息,類似于zookeeper中的epoch;term值單向遞增,每個(gè)term內(nèi)至多一個(gè)leader;若不同term的信息出現(xiàn)沖突,則以term值較大的信息為準(zhǔn)。

Raft還采用了心跳包和超時(shí)時(shí)間,leader為了保持自己的權(quán)威,必須不停地向集群中的其他節(jié)點(diǎn)發(fā)送心跳包;一旦某個(gè)follow在超過了指定時(shí)間(election timeout)仍沒有收到心跳包,則就認(rèn)為leader已經(jīng)掛掉,自己進(jìn)入candidate狀態(tài),開始競(jìng)選leader。

不難發(fā)現(xiàn),raft的leader選舉是通過heartbeat和隨機(jī)timeout時(shí)間來實(shí)現(xiàn)的;而日志復(fù)制(log replication)階段是以強(qiáng)leadership來實(shí)現(xiàn)的:leader接收client的command,append到自身log中,并將log復(fù)制到其他follower;而raft對(duì)安全性的保證是通過只有l(wèi)eader可以決定是否commit來實(shí)現(xiàn)的。

詳細(xì)的競(jìng)選、復(fù)制等過程,這里不再贅述,有興趣的同學(xué)可以參考筆者之前的文章(https://yq.aliyun.com/articles/675031 )。值得一提的是,raft中的leader選舉過程和leader任期內(nèi)的正常運(yùn)作過程都比較簡(jiǎn)單,復(fù)雜的其實(shí)是leader的變更過程。

然而,雖然raft的原理機(jī)制與paxos不盡相同,但二者所解決的問題,以及所采取的折中權(quán)衡策略,可以認(rèn)為是類似的。也就是說raft仍然只能解決故障錯(cuò)誤,仍然強(qiáng)調(diào)了故障容錯(cuò)與安全性、一致性,弱化了liveness和可用性。

?


Raft協(xié)議概覽(https://ongardie.net/static/raft/userstudy/raft.pdf)

PBFT

自從1982年Lamport提出拜占庭將軍問題之后,雖然有諸多關(guān)于拜占庭容錯(cuò)解決方案的討論,但長(zhǎng)期以來,此類問題的解決方案都效率低下、運(yùn)行緩慢、復(fù)雜度過高,直到1999年Castro和Liskov提出實(shí)用拜占庭容錯(cuò)算法(Practical Byzantine Fault Tolerance),首次將此類算法的復(fù)雜度從指數(shù)級(jí)降到了多項(xiàng)式級(jí),TPS可以達(dá)到幾千,也使得節(jié)點(diǎn)故意作惡類問題在實(shí)踐中找到了可行的解法。可以證明,如果系統(tǒng)內(nèi)作惡節(jié)點(diǎn)數(shù)目不超過總節(jié)點(diǎn)數(shù)目的1/3,PBFT算法就能生效。

在PBFT中,所有的節(jié)點(diǎn)被順序編號(hào),其中1個(gè)是leader,其余的都是backup。系統(tǒng)內(nèi)的所有節(jié)點(diǎn)間都互相通訊,依據(jù)多數(shù)原則達(dá)成一致。PBFT中的每輪共識(shí)都被稱為一個(gè)view,而在不同的view之間,leader都會(huì)發(fā)生變化;如果超過給定的時(shí)間,leader沒有廣播出消息,則leader就會(huì)通過view change協(xié)議被替換掉。通過這種replica timeout機(jī)制,保證了crashed或malicious leader會(huì)被檢測(cè)出來,從而通過重新選舉新的leader,而進(jìn)入到新的view中。

如圖所示,從客戶端發(fā)起請(qǐng)求到收到回復(fù)結(jié)果,可以分為5個(gè)階段,而共識(shí)過程采用了3階段協(xié)議。下面簡(jiǎn)要敘述5個(gè)階段的大致過程:

  • 發(fā)起:客戶端(client c)向集群發(fā)起服務(wù)請(qǐng)求m;
  • pre-prepare階段:leader節(jié)點(diǎn)(replica 0)驗(yàn)證請(qǐng)求消息m的有效性,并在其view內(nèi)為該請(qǐng)求m分配序列號(hào)n,并向所有backup節(jié)點(diǎn)(replica 1-3)廣播關(guān)于該分配的pre-prepare消息;
  • prepare階段:backup節(jié)點(diǎn)驗(yàn)證請(qǐng)求消息m的有效性,并接受序列號(hào)n。若該節(jié)點(diǎn)同意該分配方案,則向其他所有節(jié)點(diǎn)廣播出相應(yīng)的prepare消息;這一階段其實(shí)是要求所有replica達(dá)成全局一致的順序。
  • commit階段:所有節(jié)點(diǎn)(包含主備)一旦收到來自集群的同意分配消息,則向其他所有節(jié)點(diǎn)廣播出commit消息;這一階段,所有replica已經(jīng)對(duì)順序達(dá)成一致,并對(duì)收到請(qǐng)求已做確認(rèn)。
  • 執(zhí)行并返回:節(jié)點(diǎn)收到來自集群的commit消息后,執(zhí)行請(qǐng)求m,并返回消息給客戶端;客戶端等到接收到來自f+1個(gè)不同節(jié)點(diǎn)的相同回復(fù),則認(rèn)為請(qǐng)求已成功執(zhí)行;其中f表示集群中潛在故障節(jié)點(diǎn)的最大數(shù)目。這里所有節(jié)點(diǎn)都向client直接返回消息也是為了避免主節(jié)點(diǎn)在請(qǐng)求期間出問題。
  • ?


    PBFT算法正常運(yùn)作過程(http://www.pmg.csail.mit.edu/papers/bft-tocs.pdf)

    PBFT基于異步網(wǎng)絡(luò)模型做到了安全性,但需要依賴消息超時(shí)時(shí)間來做周期性的同步。因?yàn)椴捎昧薼eader-based方案,消息同步過程很快,也做到了完全的順序?qū)懭搿5莑eader的重新選舉過程很困難,某些惡意leader可以在臨近timeout窗口期時(shí)才發(fā)送消息,這樣會(huì)導(dǎo)致系統(tǒng)嚴(yán)重緩慢。而利用這一不利特點(diǎn),可以攻擊網(wǎng)絡(luò)使正確的leader看起來也出問題,從而導(dǎo)致無窮無盡的leader選舉過程。

    PBFT與Paxos、Raft相比,所能處理應(yīng)對(duì)的問題更為完備,除了能應(yīng)對(duì)故障崩潰類錯(cuò)誤之外,還能處理存在“搗亂者”的惡意篡改類拜占庭錯(cuò)誤。然而,從所采取的折中權(quán)衡策略來看,PBFT仍然與Paxos、Raft很類似。從FLP的視角來看,PBFT同樣更關(guān)注容錯(cuò)性和安全性,而弱化了liveness。從CAP的角度,PBFT同樣強(qiáng)調(diào)網(wǎng)絡(luò)分區(qū)容錯(cuò)與一致性,而弱化了可用性。

    即便如此,只要故障或作惡節(jié)點(diǎn)不超過總節(jié)點(diǎn)數(shù)的1/3,PBFT在實(shí)踐中還是有效可行的。而拜占庭容錯(cuò)算法(BFT)也不止PBFT一種,BFT類算法也在不斷進(jìn)化,如Lamport就提出過改進(jìn)版的Paxos算法BFT Paxos以處理拜占庭錯(cuò)誤,近來也有人結(jié)合PBFT與Raft提出了 BFT Raft 算法。但從問題領(lǐng)域與原理機(jī)制上來說,仍然與原有的思路和框架較為類似,不再一一贅述。

    適用場(chǎng)景

    從Paxos、Raft到PBFT,再到目前層出不窮的Paxos變種、Raft變種、BFT類混合新算法,分布式一致性算法在不斷發(fā)展、完善、進(jìn)化。甚至各大公司也在結(jié)合自己的業(yè)務(wù)實(shí)際,研發(fā)各種適合自己場(chǎng)景的分布式一致性算法。這些算法雖然并不完美,但都在適合自己場(chǎng)景的業(yè)務(wù)實(shí)踐中發(fā)揮著重大作用。那么這些算法的適用場(chǎng)景到底是什么?自身又有哪些局限性呢?

    對(duì)于Paxos、Raft這類非BFT算法而言,只能處理機(jī)器硬件故障,而無法處理存在作惡節(jié)點(diǎn)的情況。顯然,這類非BFT算法只能運(yùn)行在非常可信的網(wǎng)絡(luò)環(huán)境中,比如公司內(nèi)部網(wǎng)絡(luò)中,在這樣的較為封閉的網(wǎng)絡(luò)中,訪問需要嚴(yán)格授權(quán),從而保證各個(gè)節(jié)點(diǎn)的身份是已知的、可信的,基本排除了節(jié)點(diǎn)作惡的可能性,這類算法才能有效運(yùn)行。

    而BFT類算法,對(duì)于網(wǎng)絡(luò)環(huán)境的要求不再那么苛刻,即使存在作惡節(jié)點(diǎn),只要作惡節(jié)點(diǎn)數(shù)目不超過總節(jié)點(diǎn)數(shù)的1/3,整個(gè)系統(tǒng)依然是安全的。但問題就在于,你怎么知道網(wǎng)絡(luò)中到底有多少作惡節(jié)點(diǎn)?作惡節(jié)點(diǎn)占總節(jié)點(diǎn)的比例到底有多高?顯然,如果網(wǎng)絡(luò)的接入是需要權(quán)限控制的,那么這個(gè)問題就相對(duì)容易解決。比如10家業(yè)務(wù)關(guān)聯(lián)公司組成的聯(lián)盟網(wǎng)絡(luò),只有這10家授權(quán)的公司才能訪問,即便里面有個(gè)別公司(少于3家)蓄意作惡、妄圖篡改數(shù)據(jù),整個(gè)系統(tǒng)仍然是安全可靠的。在這種permissoned網(wǎng)絡(luò)中,隱含著對(duì)于網(wǎng)絡(luò)中可能作惡節(jié)點(diǎn)數(shù)目的預(yù)估,即便真的作惡了,也能方便快速地定位出其真實(shí)身份,間接提高了網(wǎng)絡(luò)的安全性。

    局限性

    然而,在permissonless(開放權(quán)限、無權(quán)限控制)的公有網(wǎng)絡(luò)中,BFT類算法很可能會(huì)有問題。因?yàn)?#xff0c;如果分布式網(wǎng)絡(luò)是開放的,誰(shuí)都能進(jìn)進(jìn)出出,而接入網(wǎng)絡(luò)系統(tǒng)的成本又很低,那么沒人知道網(wǎng)絡(luò)中到底可能有多少作惡節(jié)點(diǎn),即便真有作惡,也很難定位出真實(shí)身份。比如,一種比較典型的女巫攻擊(Sybil attack)場(chǎng)景,作惡者可以通過大量偽造身份來控制集群中的大量節(jié)點(diǎn),從而控制整個(gè)分布式網(wǎng)絡(luò)。

    另外,BFT類算法最大的局限性還在于僅能協(xié)調(diào)少量的節(jié)點(diǎn),如幾個(gè)到幾十個(gè),若節(jié)點(diǎn)數(shù)目成千上萬(wàn),整個(gè)系統(tǒng)的性能將會(huì)非常低下,甚至可能無法達(dá)成共識(shí),從而影響系統(tǒng)的liveness和可用性。想必大家已經(jīng)注意到,在PBFT的三階段協(xié)議中,都需要多點(diǎn)廣播(multicast):在pre-prepare階段,主節(jié)點(diǎn)向所有備節(jié)點(diǎn)廣播;在prepare節(jié)點(diǎn),備節(jié)點(diǎn)向其他所有節(jié)點(diǎn)廣播;在commit階段,各個(gè)節(jié)點(diǎn)向其他所有節(jié)點(diǎn)廣播。由此可見,通訊次數(shù)的數(shù)量級(jí)是節(jié)點(diǎn)數(shù)目的平方,當(dāng)節(jié)點(diǎn)數(shù)目龐大時(shí),這種兩兩廣播的機(jī)制將會(huì)是災(zāi)難,系統(tǒng)幾乎不可能在較短時(shí)間內(nèi)達(dá)成一致。

    綜上可知,這些傳統(tǒng)的分布式一致性算法,無論是Paxos、Raft,還是PBFT,通常適用于存在權(quán)限控制的、節(jié)點(diǎn)數(shù)目較少的、較為可信的分布式網(wǎng)絡(luò)環(huán)境中。

    在聯(lián)盟鏈中的應(yīng)用

    事實(shí)上,這些傳統(tǒng)的一致性算法在區(qū)塊鏈時(shí)代也煥發(fā)了新的活力,得到了進(jìn)一步的認(rèn)識(shí)和使用。在網(wǎng)絡(luò)環(huán)境較為可信的聯(lián)盟鏈場(chǎng)景中,這些一致性算法得到了大量的應(yīng)用。聯(lián)盟鏈因如下特點(diǎn)而被業(yè)內(nèi)看好其應(yīng)用前景:

    • 接入需授權(quán):聯(lián)盟鏈并不完全對(duì)外開放,一般只有幾家或幾十家企業(yè)組成,只有經(jīng)過授權(quán)的公司或組織才能加入到網(wǎng)絡(luò)中,并且一般是實(shí)名認(rèn)證參與。
    • 數(shù)據(jù)保護(hù):聯(lián)盟鏈信息數(shù)據(jù)并不完全對(duì)外開放,而只有授權(quán)方可見。這對(duì)于保護(hù)行業(yè)或公司的數(shù)據(jù)安全比較重要,如跨境轉(zhuǎn)賬中的交易信息等對(duì)于銀行業(yè)至關(guān)重要、鏈上稅務(wù)系統(tǒng)中的稅務(wù)信息也很敏感。
    • 可監(jiān)管:聯(lián)盟鏈中一般可以設(shè)立監(jiān)管觀察節(jié)點(diǎn),對(duì)于敏感信息進(jìn)行審計(jì)與監(jiān)管,滿足合法性要求。

    在當(dāng)前階段,聯(lián)盟鏈不失為快速落地、解決行業(yè)痛點(diǎn)的不錯(cuò)選擇,也是對(duì)區(qū)塊鏈后續(xù)發(fā)展的積極探索。因?yàn)槁?lián)盟鏈需要授權(quán)才能參與,這其實(shí)相當(dāng)于已經(jīng)提前建立了相當(dāng)程度的信任,網(wǎng)絡(luò)環(huán)境較為可信,網(wǎng)絡(luò)中的惡意行為和攻擊行為發(fā)生的可能性都非常低,并且即便發(fā)生也很容易快速追責(zé)。因此在這樣的場(chǎng)景下,傳統(tǒng)的一致性算法也可以得到應(yīng)用。比如:

    • HyperLedger Fabric(https://www.hyperledger.org/projects/fabric ) 在v1.0中可以使用Solo和Kafka pubsub系統(tǒng)來實(shí)現(xiàn)ordering;在v1.4版本也引入了Raft算法(https://hyperledger-fabric.readthedocs.io/en/release-1.4/orderer/ordering_service.html );目前這些均是CFT類算法,而raft的引入主要也是為后期支持BFT類算法鋪平道路( Raft is the first step toward Fabric’s development of a byzantine fault tolerant (BFT) ordering service. As we’ll see, some decisions in the development of Raft were driven by this. )。
    • R3 Corda(https://www.r3.com/corda-platform/ )也采用了可插拔式的共識(shí)算法設(shè)計(jì),不僅可以選擇高速度、高可信環(huán)境的Raft算法,也可以選擇低速度、低可信環(huán)境的BFT類算法(https://docs.corda.net/key-concepts-notaries.html )。
    • 以太坊企業(yè)聯(lián)盟EEA(https://entethalliance.org/ )也支持BFT類算法、Raft算法,以及PoET算法(https://entethalliance.org/wp-content/uploads/2018/05/EEA-TS-0001-0-v1.00-EEA-Enterprise-Ethereum-Specification-R1.pdf )。
    • 螞蟻區(qū)塊鏈BaaS平臺(tái)(https://tech.antfin.com/blockchain )也采用了PBFT算法。

    Permissionless網(wǎng)絡(luò)的挑戰(zhàn)

    那么我們?nèi)滩蛔∫獑?#xff0c;如果網(wǎng)絡(luò)是完全開放的、無需權(quán)限許可的(permissionless),誰(shuí)都可以隨時(shí)進(jìn)出,那么整個(gè)系統(tǒng)還能在有限的時(shí)間內(nèi)達(dá)成一致嗎?如果網(wǎng)絡(luò)中的節(jié)點(diǎn)數(shù)目不再是幾十個(gè),而是一萬(wàn)個(gè),那么又該如何協(xié)調(diào)這些數(shù)量龐大的節(jié)點(diǎn)呢?

    在回答這些問題之前,其實(shí)更應(yīng)該反問:為什么需要網(wǎng)絡(luò)是完全開放、無需許可的?什么場(chǎng)景會(huì)需要一萬(wàn)個(gè)節(jié)點(diǎn)?這到底是偽需求,還是真實(shí)存在的場(chǎng)景?這個(gè)問題的答案直接關(guān)系到區(qū)塊鏈中公有鏈的存在意義,而要回答這個(gè)問題,我們需要回到分布式系統(tǒng)的初心和目的。

    去中心化的意義

    我們?yōu)槭裁葱枰植际较到y(tǒng)?顯然,這個(gè)問題不難回答,通常的理解,分布式系統(tǒng)可以增強(qiáng)容錯(cuò)能力(Fault tolerance),畢竟系統(tǒng)依賴眾多不同的節(jié)點(diǎn),而眾多節(jié)點(diǎn)同時(shí)失敗的可能性遠(yuǎn)低于一個(gè)節(jié)點(diǎn)發(fā)生故障的可能性;另外,分布式系統(tǒng)還可以抵御攻擊(Attack resistance),畢竟攻擊或摧毀眾多節(jié)點(diǎn)的難度遠(yuǎn)大于攻擊單點(diǎn)的難度。

    然而,以上這些依然是局限在物理硬件的維度,都是用來降低機(jī)器物理硬件發(fā)生故障的可能性,而沒有考慮“人”的因素。如果一個(gè)系統(tǒng)足夠重要,比如電子貨幣系統(tǒng)等,除了考慮機(jī)器故障之外,更多需要考慮的是人的因素。部署節(jié)點(diǎn)的人會(huì)不會(huì)故意作惡呢?如何防止系統(tǒng)內(nèi)不同節(jié)點(diǎn)間的腐敗串通呢?

    如下圖所示,以太坊創(chuàng)始人Vitalik Buterin曾經(jīng)深入地探討過去中心化的含義。如果說傳統(tǒng)的分布式系統(tǒng)做到了architectural decentralization(系統(tǒng)有多少物理機(jī)器構(gòu)成?系統(tǒng)能夠容忍最多多少臺(tái)機(jī)器同時(shí)故障?),考慮的是fault tolerance和attack resistance;那么現(xiàn)在我們需要考慮的是如何做到political decentralization,如何能夠collusion resistance? 到底有多少人或組織最終控制了系統(tǒng)內(nèi)的節(jié)點(diǎn)?如何防止這些人之間的腐敗串通?如果說傳統(tǒng)的分布式系統(tǒng)考慮的問題是網(wǎng)絡(luò)或機(jī)器硬件的可信,那現(xiàn)在我們想考慮的是“人的可信”:是否存在這樣的技術(shù)手段來防范人的作惡?如何確保重要網(wǎng)絡(luò)中的大部分節(jié)點(diǎn)不被一個(gè)人或一個(gè)組織惡意控制?

    ?


    去中心化的三個(gè)維度(https://medium.com/@VitalikButerin/the-meaning-of-decentralization-a0c92b76a274)

    值得一提的是,這個(gè)問題的必要性依然充滿爭(zhēng)議,很多人根本不曾想過、或者認(rèn)為根本沒有必要考慮人的腐敗串通,也可能認(rèn)為對(duì)于這個(gè)問題技術(shù)也無能為力,畢竟這與我們生活的真實(shí)世界相去甚遠(yuǎn)。我們生活在一個(gè)中心化平臺(tái)擁有極高聲譽(yù)、提供信用背書、控制一切規(guī)則流程的世界,比如極少有人擔(dān)心銀行會(huì)故意做假賬,侵吞你在銀行的資產(chǎn),畢竟大家普遍認(rèn)為銀行是值得信賴的。如果認(rèn)為銀行都不可信,那很可能一切商業(yè)活動(dòng)都無法開展。

    然而,我們只是“假設(shè)”銀行是可信的,在“信任”與“懷疑”之間,我們只是被迫選擇了信任,畢竟不信任銀行,商業(yè)活動(dòng)無法開展,經(jīng)濟(jì)也將停滯。然而實(shí)際上,并沒有切實(shí)可行的措施來向所有人“證明”銀行是可信的。

    如果你認(rèn)為這個(gè)問題是必要的、有意義的,那么能否找到一種解決方案,可以讓這個(gè)世界變得更可信,讓你不再需要“被迫相信”某個(gè)陌生人,而是提供一種“證明”,足以確保與你交易的某個(gè)陌生人是可信的?Don’t Trust, Please Verify. 你不需要相信我,你也不必相信我,你只需要去驗(yàn)證我。

    如果要解決這個(gè)問題,所有人的身份應(yīng)該是對(duì)等的,每個(gè)人都可以平等、自由地參與決策過程,每個(gè)人都可以自由地進(jìn)出“議會(huì)”,這事實(shí)上是一種技術(shù)上的democracy,隱含的技術(shù)要素是:網(wǎng)絡(luò)必須是permissonless的,誰(shuí)都可以隨時(shí)加入隨時(shí)離開;節(jié)點(diǎn)之間必須是對(duì)等的,可以直接通訊;無任何中間人,無任何中心權(quán)威存在,完全的點(diǎn)對(duì)點(diǎn)(peer to peer);每個(gè)節(jié)點(diǎn)都有希望成為記賬者。

    因?yàn)榫W(wǎng)絡(luò)無權(quán)限控制,完全的開放、透明、民主,所以參與的節(jié)點(diǎn)數(shù)目很可能非常眾多,節(jié)點(diǎn)作惡的可能性也很高。那如何在這種permissionless的、節(jié)點(diǎn)數(shù)目眾多、存在較大作惡可能的分布式網(wǎng)絡(luò)環(huán)境中,通過某種機(jī)制協(xié)調(diào)節(jié)點(diǎn)間的行為,保證整個(gè)系統(tǒng)的一致性呢?顯然,如前所述的一致性算法并不能做到這一點(diǎn),我們需要尋求新的解法。

    另外,去中心化可能是區(qū)塊鏈領(lǐng)域最充滿爭(zhēng)議的詞匯。一些人認(rèn)為去中心化是區(qū)塊鏈的價(jià)值觀和公有鏈的靈魂與存在前提,應(yīng)該盡可能地保證系統(tǒng)的去中心化程度;而另一些人認(rèn)為完全的去中心化過于理想、不太可能實(shí)現(xiàn),應(yīng)該結(jié)合實(shí)際場(chǎng)景,在兼顧效率的情況下考慮弱中心化或多中心化。這里拋開價(jià)值判斷,單純從技術(shù)角度理性分析,去中心化程度越高確實(shí)系統(tǒng)的安全性會(huì)越高,所以在公有鏈的系統(tǒng)設(shè)計(jì)中確實(shí)應(yīng)該盡可能地保證系統(tǒng)的去中心化程度。不過,結(jié)合Vitalik Buterin對(duì)于去中心化含義的詮釋,在追求去中心化的過程中,我們不應(yīng)該停留在單純的表面上看起來的去中心化,而應(yīng)該綜合考慮去中心化的各個(gè)維度,結(jié)合實(shí)際情況,做出必要的trade-off。

    PoW

    對(duì)開放網(wǎng)絡(luò)中的分布式一致性問題比較創(chuàng)新的解法當(dāng)屬比特幣中的Proof-of-work(PoW、工作量證明)機(jī)制。

    不得不提的Bitcoin

    2008年10月31日,中本聰發(fā)表了比特幣白皮書《Bitcoin: A Peer-to-Peer Electronic Cash System》,天才般地為此類問題提供了創(chuàng)造性的解決思路,使得協(xié)調(diào)復(fù)雜網(wǎng)絡(luò)環(huán)境中的成千上萬(wàn)節(jié)點(diǎn)成為可能。事實(shí)上,中本聰并不是為了解決這個(gè)技術(shù)問題而發(fā)表了比特幣白皮書。相反,中本聰想象的更加宏大,他創(chuàng)造性地發(fā)明了比特幣這種完全點(diǎn)對(duì)點(diǎn)的電子現(xiàn)金系統(tǒng),以消除傳統(tǒng)支付中需要依賴的可信第三方中間人,而在實(shí)現(xiàn)的過程中恰好依賴并解決了開放網(wǎng)絡(luò)中眾多節(jié)點(diǎn)間的一致性問題。也可以說,比特幣所解決的最核心問題是點(diǎn)對(duì)點(diǎn)網(wǎng)絡(luò)中電子貨幣的雙花問題。然而,比特幣的實(shí)現(xiàn)機(jī)制絕不僅僅是分布式網(wǎng)絡(luò)技術(shù)問題,還結(jié)合了密碼學(xué)、經(jīng)濟(jì)學(xué)、博弈論等思想,并以一種非確定性的概率方式實(shí)現(xiàn)了節(jié)點(diǎn)間的一致性。因此,單純地稱為算法已不太能準(zhǔn)確表達(dá)其含義,可能叫作共識(shí)機(jī)制(consensus mechanism)更為恰當(dāng),因?yàn)槠鋵?shí)現(xiàn)的確依賴了一整套的完整策略與制度。這里我們不過多闡述比特幣的思想意義與實(shí)現(xiàn)細(xì)節(jié),而僅聚焦在其共識(shí)機(jī)制的實(shí)現(xiàn)上。

    比特幣實(shí)際上是電子簽名鏈,幣的owner可以通過對(duì)前一個(gè)交易的哈希值和下一個(gè)owner的公鑰進(jìn)行簽名,并將簽名添加到幣的末尾,從而實(shí)現(xiàn)轉(zhuǎn)賬。接受者通過校驗(yàn)簽名來驗(yàn)證幣的owner構(gòu)成的鏈。然而,問題是幣的接受者沒有辦法確保幣的owner沒有進(jìn)行雙花(double-spend),即有可能某個(gè)幣的owner將同一個(gè)幣先后轉(zhuǎn)給了兩個(gè)人。因此我們需要一種機(jī)制來讓接收者確保幣的前一個(gè)owner并沒有在此之前將幣轉(zhuǎn)給其他人,為了確保這一點(diǎn),唯一的辦法就是讓所有人知曉所有的交易。而在無可信第三方的情況下,想實(shí)現(xiàn)這一點(diǎn),所有的交易必須廣播給所有人。因此我們需要一個(gè)系統(tǒng),其中的所有參與者對(duì)他們接收幣的順序達(dá)成一致,形成唯一的順序記錄歷史。不難發(fā)現(xiàn),這其實(shí)就是分布式一致性問題。

    而比特幣提供的方案就是需要一個(gè)由所有節(jié)點(diǎn)組成的時(shí)間戳服務(wù)器(timestamp server),時(shí)間戳服務(wù)器可以對(duì)交易區(qū)塊的哈希加蓋時(shí)間戳,并將該哈希廣播出去。每一個(gè)時(shí)間戳都在其哈希中包含了前一個(gè)時(shí)間戳,從而形成一條鏈,而每一個(gè)新的時(shí)間戳都是對(duì)其之前所有時(shí)間戳的確保與強(qiáng)化。為了在點(diǎn)對(duì)點(diǎn)的網(wǎng)絡(luò)中實(shí)現(xiàn)分布式的時(shí)間戳服務(wù)器,比特幣采用了工作量證明機(jī)制(proof-of-work,PoW)。PoW涉及在做哈希運(yùn)算時(shí),需要尋找某個(gè)值,使得總體哈希值的開頭前幾位都為零,而所需要的平均工作量隨著零位數(shù)目的增多而指數(shù)增加。另外,該哈希沒有任何規(guī)律,為了保證開頭前幾位為零,只能通過暴力的方法不斷地隨機(jī)試錯(cuò)。一旦消耗了足夠的CPU的算力,找到了符合條件的哈希值,則該區(qū)塊就無法變更,除非再耗費(fèi)CPU重做一遍。

    另外,PoW也解決了大多數(shù)決策問題。在比特幣中,最長(zhǎng)的那條鏈就代表了大多數(shù)的決策。因?yàn)槿绻\(chéng)實(shí)的節(jié)點(diǎn)控制了大部分的算力,則誠(chéng)實(shí)的鏈就會(huì)快速增長(zhǎng)并超過其他鏈。如果想篡改某個(gè)過去的區(qū)塊,攻擊者必須重做相應(yīng)的區(qū)塊和其后面所有區(qū)塊的PoW任務(wù),然后追趕并趕超誠(chéng)實(shí)的節(jié)點(diǎn)。這種難度是非常巨大的,從數(shù)學(xué)上不難證明,隨著后續(xù)節(jié)點(diǎn)數(shù)目的增多,較慢的攻擊者想追趕上來的概率指數(shù)下降,一般認(rèn)為經(jīng)過6個(gè)區(qū)塊之后,想追趕上來幾乎是不可能的。另外,PoW任務(wù)的難度并不是固定的,而是用移動(dòng)平均的方法動(dòng)態(tài)調(diào)整的,這主要是考慮到硬件運(yùn)算速率的提高和挖礦人數(shù)的增減變化,算的快就加大難度、算的慢就減小難度,通過動(dòng)態(tài)調(diào)節(jié)難度使得比特幣的出塊時(shí)間大致穩(wěn)定在10分鐘左右。

    整個(gè)網(wǎng)絡(luò)的運(yùn)行過程如下:

  • 新交易廣播到所有節(jié)點(diǎn)。
  • 每個(gè)節(jié)點(diǎn)都將收到的交易打包到一個(gè)區(qū)塊內(nèi)。
  • 每個(gè)節(jié)點(diǎn)都為該區(qū)塊不斷嘗試改變nonce,做PoW任務(wù),以使得該區(qū)塊的哈希符合指定條件。
  • 一旦某個(gè)節(jié)點(diǎn)完成了PoW任務(wù),則它將該區(qū)塊廣播給其他所有節(jié)點(diǎn)。
  • 其他節(jié)點(diǎn)收到該區(qū)塊后,驗(yàn)證區(qū)塊內(nèi)交易的有效性,驗(yàn)證通過則接受該區(qū)塊。
  • 節(jié)點(diǎn)如何表達(dá)自己接受了該區(qū)塊呢?那就在添加下一個(gè)區(qū)塊的時(shí)候,將該已接受區(qū)塊的哈希值作為下一個(gè)區(qū)塊的前一個(gè)哈希值(previous hash)。
  • ?


    比特幣交易過程(https://www.giottus.com/Bitcoin)

    關(guān)于交易、挖礦等細(xì)節(jié),這里不過多闡述,有興趣的同學(xué)可以參考筆者之前的入門介紹文章(https://www.atatech.org/articles/126343 )。簡(jiǎn)而言之,在比特幣中總是以最長(zhǎng)鏈的信息為準(zhǔn),若某個(gè)節(jié)點(diǎn)發(fā)現(xiàn)了比自己更長(zhǎng)的鏈會(huì)自動(dòng)切換到最長(zhǎng)的鏈工作。

    我們?nèi)滩蛔∫獑?#xff0c;既然PoW成本如此之高,那如何激勵(lì)大家貢獻(xiàn)算力、成為節(jié)點(diǎn),以保證整個(gè)比特幣網(wǎng)絡(luò)的安全呢?比特幣中提供了兩種激勵(lì)策略:

  • 挖出某個(gè)區(qū)塊的節(jié)點(diǎn)會(huì)得到一定量的比特幣,這其實(shí)也是比特幣唯一的發(fā)行機(jī)制(一級(jí)市場(chǎng)),所有的比特幣都只能通過挖礦的形式被挖出然后進(jìn)入流通領(lǐng)域;
  • 礦工處理交易信息可以得到一定量的手續(xù)費(fèi),這其實(shí)是存量比特幣的流通(二級(jí)市場(chǎng)),而當(dāng)比特幣的2100萬(wàn)枚被完全挖出后,激勵(lì)策略就只能依靠手續(xù)費(fèi)這種方式了。
  • 這些激勵(lì)策略也隱含地鼓勵(lì)了節(jié)點(diǎn)保持誠(chéng)實(shí),若某個(gè)貪婪的攻擊者真的擁有了過半的CPU算力,他不得不做出選擇:到底是篡改交易記錄,把他已經(jīng)花出去的比特幣再轉(zhuǎn)回來呢?還是老老實(shí)實(shí)地挖礦賺錢新幣和手續(xù)費(fèi)呢?很可能,老老實(shí)實(shí)地挖礦是更有利的,畢竟能賺到的幣比其他所有節(jié)點(diǎn)加起來都要多;而破壞比特幣體系也將會(huì)破壞自身財(cái)富的有效性,畢竟若比特幣不再可靠,其價(jià)值也會(huì)迅速崩潰。這里多提一點(diǎn),攻擊者并不像一般人想象的那樣可以為所欲為、任意篡改或偽造交易記錄,他能做的只可能是將其最近花出去的比特幣偷回來。

    PoW為什么有效?

    比特幣在沒有任何組織或團(tuán)體維護(hù)的情況下,僅僅依靠社區(qū)志愿者自發(fā)維護(hù),穩(wěn)定運(yùn)行了10年之久,期間從未發(fā)生過重大問題,這不能不說是個(gè)奇跡,也足以證明了比特幣背后共識(shí)機(jī)制的有效性。我們?nèi)滩蛔∫獑?#xff0c;為什么比特幣能夠做到?為什么比特幣背后的共識(shí)機(jī)制能夠如此有效?bitnodes數(shù)據(jù)顯示目前比特幣節(jié)點(diǎn)數(shù)目超過1萬(wàn)(比特幣節(jié)點(diǎn)類型較多,不同口徑數(shù)量可能不一致,這里僅考慮全節(jié)點(diǎn))。為什么比特幣能夠在permissionless的網(wǎng)絡(luò)環(huán)境中,協(xié)調(diào)上萬(wàn)的節(jié)點(diǎn)保持一致性?

    筆者粗淺的認(rèn)為,可能有以下幾個(gè)原因:

    • 有效的激勵(lì)策略:通過激勵(lì)策略有效地激勵(lì)了更多節(jié)點(diǎn)參與到比特幣的點(diǎn)對(duì)點(diǎn)網(wǎng)絡(luò)中,節(jié)點(diǎn)越多比特幣網(wǎng)絡(luò)越安全。
    • PoW:挖礦出塊需要消耗CPU算力,人為地制造障礙、增加成本,提高了攻擊者的作惡成本。
    • 博弈論思想:激勵(lì)策略也考慮了博弈平衡,理性節(jié)點(diǎn)保持誠(chéng)實(shí)的收益更大。
    • 通訊效率:比特幣節(jié)點(diǎn)間的通訊效率并不低效,大家可能注意到其中也涉及到了交易和區(qū)塊的廣播,不過這種廣播并非是兩兩廣播,而是由某個(gè)節(jié)點(diǎn)(發(fā)生交易或算出PoW的節(jié)點(diǎn))將信息廣播到其他所有節(jié)點(diǎn)。另外,交易廣播并不要求觸達(dá)所有節(jié)點(diǎn),只要有許多節(jié)點(diǎn)接受,不久之后就會(huì)被打包。2014年也有Miller等人(Anonymous Byzantine Consensus from Moderately-Hard Puzzles: A Model for Bitcoin)嚴(yán)格證明,消息復(fù)雜度并不隨網(wǎng)絡(luò)大小而增大,而是一個(gè)常數(shù)。另外,區(qū)塊廣播也容許消息丟失,若某個(gè)節(jié)點(diǎn)未收到某個(gè)區(qū)塊,則當(dāng)它接收到下個(gè)區(qū)塊時(shí),會(huì)意識(shí)到自己遺漏了上個(gè)區(qū)塊,而主動(dòng)向其他節(jié)點(diǎn)請(qǐng)求該區(qū)塊。
    • 概率性的一致性:相比其他一致性算法,比特幣的共識(shí)機(jī)制最特別的是不再追求確定性的一致性,而是追求概率性的一致性。當(dāng)某個(gè)區(qū)塊剛被挖出的時(shí)候,其包含的交易信息并非被所有節(jié)點(diǎn)最終確認(rèn)、其包含的數(shù)據(jù)并非是最終一致性的結(jié)果,還是有可能被攻擊者篡改的;但是隨著后續(xù)節(jié)點(diǎn)數(shù)目的增多,這種被篡改的可能性指數(shù)下降,最終一致性的概率顯著增大;一旦后續(xù)節(jié)點(diǎn)超過6個(gè)(也就是經(jīng)過約60分鐘),這種一致性就可以被認(rèn)為是確定的、最終的。

    顯然,比特幣的共識(shí)機(jī)制不再拘泥于分布式算法層面,而是包含了更多經(jīng)濟(jì)學(xué)、博弈論、概率論等思想,因此可能叫作共識(shí)機(jī)制更為恰當(dāng)。不過,我們?nèi)匀豢梢詫⒈忍貛诺腜oW共識(shí)機(jī)制放到一致性問題的框架內(nèi)來思考,從FLP和CAP的角度來看:

  • 比特幣最大程度地考慮了故障容錯(cuò)和網(wǎng)絡(luò)分區(qū)容錯(cuò),這也是對(duì)網(wǎng)絡(luò)openness的必要要求,因?yàn)殚_放網(wǎng)絡(luò)環(huán)境極其復(fù)雜,誰(shuí)都可以隨時(shí)進(jìn)出,節(jié)點(diǎn)遍布全球各地,機(jī)器故障、網(wǎng)絡(luò)分化、系統(tǒng)攻擊隨時(shí)可能發(fā)生,容錯(cuò)是必須需要考慮應(yīng)對(duì)的。而利用PoW機(jī)制,比特幣不僅做到了故障容錯(cuò),而且結(jié)合密碼學(xué)非對(duì)稱加密技術(shù),也可以做到拜占庭容錯(cuò),抵御惡意篡改與攻擊。
  • 比特幣盡可能地保證了liveness和availability,比特幣的出塊時(shí)間總是在10分鐘左右,這也就意味著系統(tǒng)總可以在10分鐘內(nèi)達(dá)成一致;比特幣網(wǎng)絡(luò)十年來不曾癱瘓,從這個(gè)角度來講確實(shí)將可用性做到了極致。然而,我們必須指出,比特幣的可用性與我們通常理解的互聯(lián)網(wǎng)領(lǐng)域的可用性是有很大差異的。互聯(lián)網(wǎng)領(lǐng)域的系統(tǒng)可用性,不僅要求系統(tǒng)穩(wěn)定運(yùn)行不宕機(jī),還對(duì)服務(wù)體驗(yàn)如響應(yīng)時(shí)間有明確要求。如果你用支付寶轉(zhuǎn)賬,不是隨時(shí)可轉(zhuǎn)、3秒到賬,而是告訴你系統(tǒng)繁忙,需要等待10分鐘、甚至30分鐘,這顯然會(huì)被認(rèn)為服務(wù)不可用。然而,這一現(xiàn)象在比特幣中一直在發(fā)生,比特幣每10分鐘一個(gè)區(qū)塊,而區(qū)塊大小只有1M,裝不下太多交易,若同一時(shí)間交易過多,只能一直等待,直到能被下一個(gè)區(qū)塊打包進(jìn)去,所以經(jīng)常可能需要等待20分鐘、30分鐘、甚至更久。從這一角度對(duì)比來看,其實(shí)比特幣網(wǎng)絡(luò)放寬了對(duì)響應(yīng)時(shí)間的要求,做到了比較基本的可用性:讀的可用性極高,而寫的可用性很低。
  • 比特幣對(duì)于safety和consistency,不再追求確定性,而是采用了概率性的保障,基本可以認(rèn)為保證了最終安全性和最終一致性,只不過這里的“最終”依然是有時(shí)間條件的、基于概率的。比如,如果我剛剛給你轉(zhuǎn)賬了一個(gè)比特幣,沒人敢說這個(gè)結(jié)果是確定的、最終的,但是隨著時(shí)間的推移,不斷有新的區(qū)塊被挖出,我轉(zhuǎn)賬的交易信息也會(huì)被更多的節(jié)點(diǎn)確認(rèn)、被更多的后續(xù)區(qū)塊強(qiáng)化,這一結(jié)果確定性的概率不斷增大,一旦過了足夠的時(shí)間(如1個(gè)小時(shí)),我們從概率角度可以認(rèn)為結(jié)果被篡改的可能性極低,系統(tǒng)達(dá)成最終一致性的概率極高,從實(shí)踐上就可以認(rèn)為系統(tǒng)保證了最終的一致性。
  • 綜合來看,不難看出,比特幣的PoW共識(shí)機(jī)制在FLP和CAP的限制下,做到了比較好的折中權(quán)衡,在實(shí)踐中確實(shí)提供了開放復(fù)雜網(wǎng)絡(luò)中分布式一致性問題的可行解法,比特幣近十年來的穩(wěn)定可靠運(yùn)行也有力地證明了這一點(diǎn)。

    另外,比特幣的PoW算法也被Miller等人(https://socrates1024.s3.amazonaws.com/consensus.pdf :Anonymous Byzantine Consensus from Moderately-Hard Puzzles: A Model for Bitcoin)嚴(yán)謹(jǐn)?shù)胤治霾⒆C明:

    • 比特幣網(wǎng)絡(luò)可以看作是由近似無窮節(jié)點(diǎn)組成的,每個(gè)節(jié)點(diǎn)貢獻(xiàn)一小部分算力,并且相應(yīng)地每個(gè)節(jié)點(diǎn)都有較小概率可以創(chuàng)造區(qū)塊。
    • PoW算法依賴于同步網(wǎng)絡(luò)模型。在該模型中,若網(wǎng)絡(luò)延遲為0,則算法可以容忍50%錯(cuò)誤;而以目前真實(shí)觀測(cè)的網(wǎng)絡(luò)延遲來看,比特幣可以容忍49.5%的錯(cuò)誤;若網(wǎng)絡(luò)延遲等于區(qū)塊時(shí)間(即10分鐘),則只能容忍33%的錯(cuò)誤;若網(wǎng)絡(luò)延遲接近無窮,則算法的容錯(cuò)也趨近于0。
    • 比特幣PoW算法具有擴(kuò)展性(scalable),這是因?yàn)楣沧R(shí)時(shí)間和消息復(fù)雜度都與網(wǎng)絡(luò)大小(網(wǎng)絡(luò)中的節(jié)點(diǎn)數(shù)目)無關(guān),而只與錯(cuò)誤節(jié)點(diǎn)的相應(yīng)算力有關(guān),可以認(rèn)為是一個(gè)無量綱常數(shù)。

    可見,PoW算法不僅在實(shí)踐中可靠,在理論上也能經(jīng)受考驗(yàn)。PoW算法采用了同步模型與隨機(jī)概率來規(guī)避FLP的確定性異步模型不可能定理。而PoW獨(dú)立于網(wǎng)絡(luò)大小的可擴(kuò)展性,與PBFT算法O(n2)復(fù)雜度相比優(yōu)勢(shì)巨大:節(jié)點(diǎn)越多,系統(tǒng)效率并未降低,而系統(tǒng)卻更安全。

    PoW到底是什么?

    我們?nèi)滩蛔∫獑?#xff0c;PoW機(jī)制到底有何神奇之處呢?

    其實(shí),大家可能也意識(shí)到了,PoW的思想并不高深,事實(shí)上也并非是中本聰首創(chuàng)。早在1993年這一思想就被提出用于對(duì)抗垃圾郵件(Pricing via Processing or Combatting Junk Mail),但直到中本聰創(chuàng)造比特幣之前,這一思想都尚未得到廣泛應(yīng)用。PoW思想的精髓就在于故意制造障礙、增加參與者的成本,以盡量降低參與者的惡意企圖。比如要求請(qǐng)求者做些額外的工作以檢測(cè)DDoS攻擊、垃圾郵件等,也比如最常見的登錄網(wǎng)站需要輸入驗(yàn)證碼,也是為了增加登錄成本,防止網(wǎng)站被攻擊。這類任務(wù)最核心的特征是非對(duì)稱:對(duì)于服務(wù)請(qǐng)求者來說,完成任務(wù)必須有一定難度;而對(duì)服務(wù)提供者來說,驗(yàn)證任務(wù)必須很簡(jiǎn)單快速。對(duì)于比特幣PoW而言,顯然符合非對(duì)稱性:不斷試錯(cuò),尋找使哈希符合條件的nonce(隨機(jī)數(shù))需要消耗大量算力,而驗(yàn)證尋找到的nonce是否符合條件只需要做一次簡(jiǎn)單的哈希運(yùn)算驗(yàn)證即可。

    比特幣的PoW本質(zhì)上是one-CPU-one-vote,一個(gè)CPU投一票。為什么選擇CPU,而不是IP地址呢?這仍然是基于任務(wù)難度考慮,若是one-IP-one-vote,則系統(tǒng)可以被擁有大量IP地址的人(如ip供應(yīng)商)輕易控制。相對(duì)而言,至少在當(dāng)時(shí)(尚未出現(xiàn)ASIC和FPGA)CPU仍然是比較昂貴的硬件,想擁有大量的算力(CPU+電力)并不容易。當(dāng)然,這其實(shí)也隱含地為比特幣的價(jià)值提供了現(xiàn)實(shí)錨定:虛擬的貨幣體系通過算力找到了現(xiàn)實(shí)物理世界的價(jià)值錨定,雖然在很多人看來這種算力的消耗是毫無意義、浪費(fèi)能源的。

    也有很多人提出如何降低比特幣的挖礦成本,當(dāng)然這種思考嘗試有其積極意義,這種工作量證明的成本需要適宜:難度過大、成本過高確實(shí)浪費(fèi)能源較多,不過比特幣網(wǎng)絡(luò)的安全性也得到了提高;難度過小、成本過低則會(huì)起不到防攻擊的目的,進(jìn)而也會(huì)降低比特幣網(wǎng)絡(luò)的安全性。這其實(shí)是一個(gè)需要做tradeoff的問題,也是一個(gè)偏主觀的價(jià)值判斷,取決于大眾對(duì)比特幣的認(rèn)識(shí)和定位。價(jià)值判斷總是充滿了主觀偏見,目前對(duì)于比特幣的爭(zhēng)論如此之大,其實(shí)也正是因?yàn)樯鐣?huì)大眾尚未達(dá)成共識(shí),尚未構(gòu)建出對(duì)于比特幣未來共同一致的想象。

    簡(jiǎn)言之,比特幣的PoW是一整套的機(jī)制,包含了技術(shù)上的權(quán)衡、經(jīng)濟(jì)和博弈的考量,這一整套的策略和機(jī)制共同保障了比特幣網(wǎng)絡(luò)的安全可靠。

    PoW機(jī)制的局限性

    凡事沒有完美,PoW機(jī)制也不可例外地存在局限,其實(shí)從大家對(duì)比特幣的諸多批評(píng)也可見一二,通常地大家認(rèn)為PoW機(jī)制存在以下局限性:

  • 成本過高、浪費(fèi)能源:大家對(duì)比特幣浪費(fèi)能源的批評(píng)聲不絕于耳,digiconomist數(shù)據(jù)顯示,比特幣的全年電力消耗基本與新西蘭相當(dāng),也相當(dāng)于澳大利亞用電量的1/5;而每筆比特幣轉(zhuǎn)賬交易的成本是每10萬(wàn)筆visa轉(zhuǎn)賬交易的3倍。雖然有時(shí)候這種對(duì)比有失公允(比特幣交易即清算,而visa除交易成本之外還有額外的清算成本),也有不少人并不以為然。前文也提到這其實(shí)也是一種主觀價(jià)值判斷,但這畢竟是一種聲音,有時(shí)候也是切實(shí)的痛點(diǎn),比如恐怕沒人愿意用比特幣買杯咖啡,畢竟手續(xù)費(fèi)可能會(huì)比咖啡還貴。而罪魁禍?zhǔn)桩?dāng)然是PoW機(jī)制所需要的CPU算力消耗,因此不斷有人嘗試改進(jìn),甚至提出新的解決思路。
  • 效率低下:大家習(xí)慣了互聯(lián)網(wǎng)的便捷,習(xí)慣了秒級(jí)到賬和百萬(wàn)級(jí)別的TPS,對(duì)于比特幣交易動(dòng)輒需要等待幾十分鐘,每秒鐘僅能支持7筆交易,顯然不太滿意。雖然這種對(duì)比也并不公正,畢竟銀行系統(tǒng)后臺(tái)只有幾個(gè)機(jī)房、最多百臺(tái)機(jī)器,并且交易只進(jìn)入到了其中某臺(tái)機(jī)器,事后的清算環(huán)節(jié)才保證了最終一致性;而比特幣無任何單點(diǎn),協(xié)調(diào)的是上萬(wàn)臺(tái)機(jī)器,并且交易即清算。不過這種效率的低下也確實(shí)是事實(shí),也不斷有人嘗試改進(jìn),如把比特幣每個(gè)區(qū)塊的size limit調(diào)大,讓其每個(gè)區(qū)塊能打包更多的交易,bitcoin cash就是這么干的;再如把比特幣的出塊時(shí)間改小,讓其更快出塊,litecoin就是這么干的。但即便如此,PoW為了保證網(wǎng)絡(luò)安全性而要求的巨大的工作量證明成本,也注定了網(wǎng)絡(luò)的效率很難有質(zhì)的提升。
  • 中心化風(fēng)險(xiǎn):隨著ASIC和FPGA等特制挖礦芯片的出現(xiàn),普通個(gè)人PC想挖出比特幣幾乎是天方夜譚。挖礦越來越集中到有實(shí)力研發(fā)芯片的巨頭企業(yè)上,而礦池(為了平滑收益大量節(jié)點(diǎn)組成聯(lián)盟共同挖礦、平分收益)的出現(xiàn)也加劇了這一趨勢(shì)。另外,對(duì)比特幣block size limit的調(diào)大,也會(huì)導(dǎo)致運(yùn)行比特幣全節(jié)點(diǎn)需要龐大的存儲(chǔ)空間,以至于無法在普通PC上運(yùn)行,而只能運(yùn)行在特制的大型計(jì)算機(jī)上。這些中心化的傾向無疑都會(huì)損害比特幣網(wǎng)絡(luò)的安全性,畢竟由全世界各個(gè)角落的普通PC構(gòu)成的比特幣網(wǎng)絡(luò)的安全性遠(yuǎn)遠(yuǎn)高于由幾個(gè)巨頭公司直接或間接控制的比特幣網(wǎng)絡(luò)。雖然這一問題的爭(zhēng)議更大,仁者見仁,但仍然有很多人在嘗試尋求新的解決思路。
  • PoS

    在這些新的解決思路中,無疑最引人注目的就是Proof-of-stake(PoS、權(quán)益證明),同樣面對(duì)開放復(fù)雜網(wǎng)絡(luò)中的一致性問題,提出了全新的解決方案。

    基本思想

    2011年在bitcointalk論壇一個(gè)名為QuantumMechanic的用戶率先提出了proof-of-stake的思想(https://bitcointalk.org/index.php?topic=27787.0 ),而后不斷發(fā)展完善,得到越來越多人的信賴。

    PoS的基本思想大致如下:

    • 所有節(jié)點(diǎn)不再同時(shí)競(jìng)爭(zhēng)挖礦,而是每次僅有1個(gè)節(jié)點(diǎn)做驗(yàn)證者:在比特幣網(wǎng)絡(luò)中,所有節(jié)點(diǎn)都需要做PoW任務(wù),也就是說都需要做復(fù)雜的哈希運(yùn)算而消耗大量CPU算力,而只有最先找到答案的節(jié)點(diǎn)才能獲得獎(jiǎng)勵(lì)。這種所有節(jié)點(diǎn)間的同時(shí)競(jìng)爭(zhēng)挖礦無疑需要消耗大量資源,那么是否可以每次只有一個(gè)節(jié)點(diǎn)工作呢?如果可以,那怎么選定這個(gè)幸運(yùn)兒呢?PoS中不再需要挖礦,不再有miner,而是每次只需要選出一個(gè)節(jié)點(diǎn)作為validator去驗(yàn)證區(qū)塊的有效性。如果某個(gè)節(jié)點(diǎn)被選為validator來驗(yàn)證下一個(gè)區(qū)塊,它將驗(yàn)證該區(qū)塊內(nèi)的所有交易是否有效。如果所有交易都驗(yàn)證有效,則該節(jié)點(diǎn)對(duì)該區(qū)塊進(jìn)行簽名,并添加到區(qū)塊鏈上。作為回報(bào),該validator將會(huì)收到這些交易相關(guān)的交易費(fèi)用。顯然,在PoS中每次共識(shí)只有一個(gè)節(jié)點(diǎn)付出了勞動(dòng),且該勞動(dòng)非常輕松,從而達(dá)到了節(jié)約資源的目的。
    • 想成為validator必須提供保證金:為了防止validator作惡,想成為validator必須提前往指定賬戶存入代幣作為保證金或抵押擔(dān)保金,一旦被發(fā)現(xiàn)作惡,則保證金即會(huì)被罰沒,而誠(chéng)實(shí)工作將會(huì)得到激勵(lì)。顯然,只要作惡帶來的收益不超過保證金額度,節(jié)點(diǎn)就會(huì)老老實(shí)實(shí)地保持誠(chéng)實(shí)。
    • 被選為validator并不是完全隨機(jī)的,而是被選定概率與提供的保證金金額成正比:例如Alice提供100個(gè)幣的保證金,而Bob提供500個(gè)幣的保證金,則Bob被隨機(jī)選為validator從而產(chǎn)出下一個(gè)區(qū)塊的概率是Alice的5倍。這其實(shí)就類似于股份制公司,按照出資比例來劃分發(fā)言權(quán)、最終受益權(quán)等,大股東出資多、承擔(dān)責(zé)任大、相應(yīng)的回報(bào)也大。

    ?


    PoW與PoS對(duì)比圖(https://hackernoon.com/consensus-mechanisms-explained-pow-vs-pos-89951c66ae10)

    不難發(fā)現(xiàn),PoS也是采用了經(jīng)濟(jì)和博弈的思想,通過激勵(lì)策略和懲罰機(jī)制來確保了網(wǎng)絡(luò)的安全可靠。

    PoS為什么有效?

    PoS協(xié)議仍然符合傳統(tǒng)的拜占庭容錯(cuò)算法研究的結(jié)論。目前圍繞PoS的研究可以分為兩條主線:一條圍繞同步網(wǎng)絡(luò)模型、一條圍繞部分異步網(wǎng)絡(luò)模型。而基于鏈的PoS算法幾乎總是依賴于同步網(wǎng)絡(luò)模型,并且其有效性與安全性可以像PoW算法一樣被嚴(yán)格證明(https://nakamotoinstitute.org/static/docs/anonymous-byzantine-consensus.pdf )。

    另外,從CAP的角度來看,基于鏈的PoS算法與PoW算法類似,也是盡可能地做到了容錯(cuò)性,另外在可用性與一致性之間,更多地保證了可用性。

    如果說傳統(tǒng)的一致性算法(Paxos、Raft和PBFT)實(shí)現(xiàn)的是確定性的最終性(finality)或一致性,那么PoS與PoW類似,轉(zhuǎn)而尋求概率性的最終一致性。從傳統(tǒng)CAP的視角,這其實(shí)是對(duì)一致性的弱化,然而從實(shí)踐可行性的視角來看,也是一種全新的思維和突破。

    而從PoS的設(shè)計(jì)策略來看,也可以分為兩大陣營(yíng)(https://arxiv.org/pdf/1710.09437.pdf ):

    • 一類是如前所述的chain-based PoS,主要是模仿PoW機(jī)制,通過偽隨機(jī)地把區(qū)塊創(chuàng)造權(quán)分配給stakeholders來模擬挖礦過程,典型代表如PeerCoin、Blackcoin等。其安全性與有效性可以參考類比pow來看。
    • 另一類是BFT based PoS,基于近30年來的BFT類一致性算法研究。基于BFT算法來設(shè)計(jì)PoS的思想最初在Tendermint中提出,以太坊2.0中的Casper也遵從了這一傳統(tǒng)并做了一些修改完善。這類PoS的安全性與有效性可以參考BFT類算法來看,如可以從數(shù)學(xué)上證明,只要協(xié)議參與者的2/3以上節(jié)點(diǎn)都誠(chéng)實(shí)地遵照協(xié)議,不管網(wǎng)絡(luò)延遲有多大,算法都能保證最終狀態(tài)不會(huì)出現(xiàn)沖突區(qū)塊。不過此類算法也并不完美,特別是針對(duì)51%攻擊問題,也尚未完全解決,目前該領(lǐng)域仍然處于開放探索階段。

    PoS的爭(zhēng)論

    PoS的思想并不復(fù)雜,而其中比較容易被詬病的恰恰就是這種與現(xiàn)實(shí)世界類似的按出資比例獲取收益的制度。大家對(duì)現(xiàn)實(shí)世界的馬太效應(yīng)已經(jīng)非常警惕,這種制度顯然容易帶來富者越富、窮者越窮的結(jié)果:擁有更多代幣的人,將會(huì)有更多機(jī)會(huì)成為validator,從而參與網(wǎng)絡(luò)并獲得更多收益。

    然而,對(duì)這一問題的看法爭(zhēng)議很大,很多人提出了完全不同的看法,認(rèn)為PoS相比PoW更公平、更有助于對(duì)抗中心化趨勢(shì)。理由主要是:PoW挖礦依賴現(xiàn)實(shí)世界的物理硬件和電力資源,而這很容易帶來規(guī)模經(jīng)濟(jì)(Economies of scale)優(yōu)勢(shì)。購(gòu)買10000臺(tái)礦機(jī)的公司相比購(gòu)買1臺(tái)礦機(jī)的個(gè)人更有議價(jià)權(quán),甚至可以自主研發(fā)成本更低的礦機(jī);而擁有10000臺(tái)礦機(jī)的礦場(chǎng),對(duì)電費(fèi)的議價(jià)權(quán)也更高,甚至可以搬遷到電費(fèi)便宜的國(guó)家和地區(qū)的電站旁邊,甚至可以自建成本更低的電站。由此帶來的后果就是越龐大的組織的綜合挖礦成本越低,而這正是現(xiàn)實(shí)世界真實(shí)已經(jīng)發(fā)生的事實(shí)。相比之下,PoS不需要依賴現(xiàn)實(shí)硬件,不存在規(guī)模經(jīng)濟(jì)優(yōu)勢(shì),在不考慮價(jià)格操縱的情況下,買1個(gè)幣的價(jià)格和買10000個(gè)幣的價(jià)格是線性增加的,從這個(gè)角度理解,PoS可能更公平,更有助于去中心化。

    對(duì)PoS的另一個(gè)擔(dān)憂是其安全性,畢竟PoS不再像PoW那樣做復(fù)雜的CPU運(yùn)算以證明自己。在PoW中,若想發(fā)動(dòng)攻擊,需要控制51%的算力(近來也有研究發(fā)現(xiàn)只需25%算力即有可能攻擊成功),這也就意味著需要擁有大部分的礦機(jī)和算力資源。而在PoS中,若想控制整個(gè)體系,需要擁有51%的代幣。究竟哪個(gè)更安全?其實(shí)也不太好講,不過可以從現(xiàn)實(shí)世界的例子來看,如果比特幣算法切換為PoS,則控制比特幣體系需要大約比特幣市值的一半,大概是400~1600億美金(比特幣價(jià)格區(qū)間5000~20000美金),顯然這一數(shù)字遠(yuǎn)遠(yuǎn)高于礦機(jī)成本,想擁有這么大資金量發(fā)動(dòng)攻擊幾乎是不可能的,從這個(gè)角度來講,PoS可能更安全。

    除此之外,PoS因?yàn)椴渴鸪杀竞艿?#xff08;對(duì)硬件要求很低),在真實(shí)世界中會(huì)導(dǎo)致代幣非常容易分叉,從而產(chǎn)生一堆山寨幣,而PoW不存在這個(gè)問題。因?yàn)镻oW依賴硬件挖礦,若想把比特幣的某個(gè)參數(shù)改改,這很容易;但真想跑起來,則需要大量算力的支持,需要爭(zhēng)取大量miner的支持,比如bitcoin cash從bitcoin中分叉出來就歷經(jīng)波折。而PoS完全沒這個(gè)顧慮,隨便某個(gè)人都可以下載開源代碼、隨意改下,拉幾個(gè)節(jié)點(diǎn)就可以聲稱自己創(chuàng)造了一種全新的代幣,比如從EOS(代幣名)中可以輕易分叉出幾十上百個(gè)山寨兄弟幣,每個(gè)都聲稱自己很獨(dú)特。這確實(shí)是事實(shí),不過也不太容易說孰好孰壞。

    PoS的改進(jìn)優(yōu)化

    PoS機(jī)制中最關(guān)鍵的當(dāng)屬下一個(gè)區(qū)塊validator或creator的選擇機(jī)制,究竟誰(shuí)來做這個(gè)幸運(yùn)兒?前文所說的根據(jù)賬戶資金按比例按概率選擇其實(shí)是最簡(jiǎn)單的一種方式,這種方式確實(shí)容易導(dǎo)致有錢人獲得一勞永逸的收益,從而損害網(wǎng)絡(luò)中其他參與者的積極性。目前有很多種思路來改善這一問題,其中比較有意思的是coin age-based方法,在選擇creator的時(shí)候,除了考慮資金量,還會(huì)考慮coin age(幣齡)。所謂的coin age指的是幣在某個(gè)賬戶上的停留時(shí)間,比如1個(gè)幣轉(zhuǎn)入指定賬戶經(jīng)過10天,可以認(rèn)為幣齡是10,而每次幣發(fā)生變動(dòng)幣齡都會(huì)從0開始重新計(jì)算。通過這樣,可以限制大資金量節(jié)點(diǎn)頻繁成為creator,比如可以設(shè)定幣齡達(dá)到30才有機(jī)會(huì)成為creator,而成為creator之后幣齡立即清零。這其實(shí)是限制了大參與者的利益,為其他中小參與者提供了更多的參與機(jī)會(huì)。

    基于PoS改進(jìn)的比較有名的方案當(dāng)屬Delegated Proof-of-Stake(DPoS),其中采用了代理人委托機(jī)制。在DPoS中不再是所有節(jié)點(diǎn)都有可能成為creator,而是節(jié)點(diǎn)間相互投票,只有得票最高的一些節(jié)點(diǎn)才可能參與區(qū)塊創(chuàng)造過程。具體如下:

    • 代理人的職責(zé)包含保證自身節(jié)點(diǎn)持續(xù)運(yùn)行、收集交易信息并打包到區(qū)塊中、簽名驗(yàn)證并廣播區(qū)塊、解決網(wǎng)絡(luò)中可能存在的一致性問題。
    • 對(duì)于大多數(shù)DPoS鏈來說,網(wǎng)絡(luò)中的所有持幣人(token holders)都可以向代理人投票,且投票權(quán)與持幣數(shù)量成正比。用戶也可以不直接投票,而把投票權(quán)委托給其他人來代表他們投票。
    • 投票是動(dòng)態(tài)的、可變的,意味著某個(gè)代理人隨時(shí)可能被選進(jìn)來或選出去。而一旦某個(gè)代理人被發(fā)現(xiàn)作惡或欺詐,就將失去收入和名譽(yù),這就起到了激勵(lì)代理人保持誠(chéng)實(shí)、保證網(wǎng)絡(luò)安全的目的。代理人可以將收到的區(qū)塊獎(jiǎng)勵(lì)按比例分給向他投票的用戶(這其實(shí)相當(dāng)于賄選,在有些方案中不被允許)。
    • 不像傳統(tǒng)的PoS,代理人不再需要持有大量的代幣,而是必須相互競(jìng)爭(zhēng)從持幣者那里爭(zhēng)取投票。
    • DPoS限制了交易區(qū)塊的驗(yàn)證者人數(shù),這相當(dāng)于犧牲了一定程度的去中心化,但卻帶來了效率的提升,因?yàn)榫W(wǎng)絡(luò)達(dá)成共識(shí)所需的工作量大幅降低。

    ?


    DPoS選舉validator/witness過程(https://www.nichanank.com/blog/2018/6/4/consensus-algorithms-pos-dpos)

    不難發(fā)現(xiàn),DPoS通過引入投票機(jī)制,盡可能地保證了節(jié)點(diǎn)的廣泛參與;而對(duì)validator數(shù)目的限制(一般是21-101個(gè)),盡可能地提高了系統(tǒng)的運(yùn)行效率。雖然充滿很大爭(zhēng)議,DPoS仍然不失為一種可行的解法,越來越多的區(qū)塊鏈系統(tǒng)也在嘗試對(duì)其進(jìn)行改進(jìn)和探索。

    在公有鏈中的應(yīng)用

    在公有鏈中,眾多項(xiàng)目都采用了PoS機(jī)制,比較有名的有:

    • 以太坊(Ethereum:https://www.ethereum.org/ ):目前階段以太坊仍然采用的是PoW挖礦機(jī)制,不過作為以太坊的創(chuàng)始人和公有鏈領(lǐng)域的領(lǐng)軍人物Vitalik Buterin對(duì)于PoS機(jī)制顯然更為青睞,也多次闡述過PoS的設(shè)計(jì)哲學(xué)(https://medium.com/@VitalikButerin/a-proof-of-stake-design-philosophy-506585978d51 ),以及PoS相比PoW的優(yōu)勢(shì)(https://github.com/ethereum/wiki/wiki/Proof-of-Stake-FAQ#what-are-the-benefits-of-proof-of-stake-as-opposed-to-proof-of-work )。目前以太坊正在開發(fā)基于PoS的Casper協(xié)議(https://arxiv.org/pdf/1710.09437.pdf ),預(yù)計(jì)將于今年下半年發(fā)布,這種從PoW到PoS的轉(zhuǎn)變也標(biāo)志著以太坊進(jìn)入2.0時(shí)代。如下圖所示,在以太坊2.0 phase0階段,將會(huì)發(fā)布采用Casper協(xié)議的PoS beacon chain,作為coordination layer(https://github.com/ethereum/wiki/wiki/Sharding-roadmap )。

    ?


    以太坊2.0 layers和phases(https://docs.ethhub.io/ethereum-roadmap/ethereum-2.0/eth-2.0-phases/)

    • EOS(https://eos.io/ ):作為DPoS思想的提出者Daniel Larimer發(fā)起了EOS公有鏈項(xiàng)目,其中眾多節(jié)點(diǎn)會(huì)一起競(jìng)爭(zhēng),期望成為擁有記賬權(quán)的21個(gè)Supernodes中的其中一員。這種類似現(xiàn)實(shí)世界議會(huì)制度的設(shè)計(jì)引起了非常大的爭(zhēng)議,而超級(jí)節(jié)點(diǎn)的競(jìng)選也可能蘊(yùn)含著巨大的商業(yè)利益,這些都已經(jīng)超越了技術(shù)討論的范疇,在此不做過多討論。

    Proof of X?

    其實(shí),PoS機(jī)制的興起除了其本身具備的低成本、高效率、去中心化等特點(diǎn)之外,還在于它打開了一扇新的大門——基于博弈論機(jī)制來設(shè)計(jì)如何降低中心化風(fēng)險(xiǎn)的一系列技術(shù),如何預(yù)防中心化壟斷巨頭的形成,以及在已有巨頭的情況下如何防范它們損害網(wǎng)絡(luò)( Proof of stake opens the door to a wider array of techniques that use game-theoretic mechanism design in order to better discourage centralized cartels from forming and, if they do form, from acting in ways that are harmful to the network)。

    而隨著近年來區(qū)塊鏈(特別是公有鏈)的蓬勃發(fā)展,其他各種Proof of機(jī)制也層出不窮。從這里面的諸多機(jī)制中都可以看到PoS思想的影子,即如何從經(jīng)濟(jì)角度和博弈視角來設(shè)計(jì)制度盡可能地保證去中心化、安全性與高效率。下面對(duì)這些機(jī)制做簡(jiǎn)要說明:

    • Leased Proof of Stake:持幣量非常低的眾多節(jié)點(diǎn)可以將代幣出租給其他節(jié)點(diǎn),從而形成合力,增加成為validator的幾率;而一旦選舉勝出得到獎(jiǎng)勵(lì),則按比例分配手續(xù)費(fèi),其實(shí)與礦池的思想比較類似。
    • Proof of Elapsed Time:所有節(jié)點(diǎn)都必須等待一定的時(shí)間才能成為記賬者,而等待時(shí)間是完全隨機(jī)的。而要想保證公平,核心的兩個(gè)問題是:如何保證等待時(shí)間確實(shí)是完全隨機(jī)的?如何保證某個(gè)節(jié)點(diǎn)真的等待了指定的時(shí)間?目前的解法依賴于Intel的特殊CPU硬件Intel SGX 系統(tǒng),目前通常也僅能應(yīng)用在permissioned網(wǎng)絡(luò)環(huán)境中,如前所述的以太坊企業(yè)聯(lián)盟EEA中。
    • Proof of Activity:PoA同時(shí)結(jié)合了PoW和PoS的思想。在PoA中,起始過程與PoW類似,仍然是miners間競(jìng)爭(zhēng)解題挖礦,只不過所挖的區(qū)塊僅僅包含頭信息和礦工地址。而一旦區(qū)塊被挖出,則系統(tǒng)自動(dòng)切換成PoS模式,區(qū)塊頭信息指向一個(gè)隨機(jī)的持幣者(stakeholder),由該持幣者來驗(yàn)證該pre-mined區(qū)塊。
    • Proof of Importance:有感于PoS機(jī)制傾向于鼓勵(lì)人持幣而不是流通、也容易導(dǎo)致富者越富的問題,PoI在計(jì)算節(jié)點(diǎn)對(duì)系統(tǒng)的重要性上吸納了更多的維度:除了考慮幣的數(shù)量、幣在賬戶上的停留時(shí)間之外,還考慮了交易對(duì)手(與其他賬戶的凈交易越多分?jǐn)?shù)越高)以及最近30天交易數(shù)目和大小(交易越頻繁、數(shù)額越大分?jǐn)?shù)越高)。
    • Proof of Capacity:也稱作Proof of Space,思想與PoW類似,只是不再以CPU算力為衡量標(biāo)準(zhǔn),而是以存儲(chǔ)空間來衡量。
    • Proof of Burn:礦工必須燒毀一定量的代幣,即將一定量的代幣轉(zhuǎn)入eater address(黑洞地址,只進(jìn)不出,即私鑰未知的地址),以此來證明自己。本質(zhì)上與PoW的思想接近,只是工作量證明消耗了算力資源,而PoB直接消耗了代幣本身。
    • Proof of Weight:PoWeight是在PoS考慮代幣量的基礎(chǔ)之上,增加考慮了更多的權(quán)重因子。比如FileCoin(IPFS分布式文件系統(tǒng)上的代幣)考慮了你擁有的IPFS數(shù)據(jù)大小;其他的一些權(quán)重因子也包含但不限于Proof-of-Spacetime、Proof-of-Reputation等。

    ?


    一致性算法概覽(https://101blockchains.com/consensus-algorithms-blockchain/)

    不難發(fā)現(xiàn),雖然這些Proof-of機(jī)制層出不窮、不盡相同,但其要解決的核心本質(zhì)問題是相同的,即:讓誰(shuí)來成為能夠記賬的幸運(yùn)兒?這些Proof-of機(jī)制只不過是采取了各種不同的策略來制定游戲規(guī)則,讓各個(gè)節(jié)點(diǎn)盡可能公平地證明自己,從中公平地選出幸運(yùn)兒。所有這些策略,包括基于CPU算力、持有代幣數(shù)量、存儲(chǔ)空間大小、隨機(jī)等待時(shí)間、銷毀代幣數(shù)量、節(jié)點(diǎn)活躍度、節(jié)點(diǎn)貢獻(xiàn)度等,都是在特定的場(chǎng)景下對(duì)于開放網(wǎng)絡(luò)中一致性問題的探索。

    一切關(guān)乎信任

    從PoW到PoS,再到Proof of "Everything you can think",對(duì)于permissionless網(wǎng)絡(luò)中的一致性問題一直在探索中。“一致性”的內(nèi)涵也在發(fā)生變化,從傳統(tǒng)的如何防范網(wǎng)絡(luò)與機(jī)器硬件的故障,保證網(wǎng)絡(luò)節(jié)點(diǎn)間的數(shù)據(jù)一致性,到開放網(wǎng)絡(luò)中,如何防范網(wǎng)絡(luò)中人的作惡,保證網(wǎng)絡(luò)中節(jié)點(diǎn)數(shù)據(jù)間的真實(shí)一致。可以說是從硬件的可信,邁進(jìn)了“人的可信”,公有鏈技術(shù)也被視為“信任的機(jī)器”。不過顯然,人的可信問題過于復(fù)雜,甚至也超越了單純的技術(shù)范疇。目前階段所能做到的也遠(yuǎn)遠(yuǎn)未能保證“人的可信”,更多的仍停留在人對(duì)于機(jī)器的信任、人對(duì)于“協(xié)議”的信任。不過可喜的是,我們終于邁出了這一步,開始直面這個(gè)棘手的問題,探索創(chuàng)新性的解法。

    ?


    信任的機(jī)器(https://www.economist.com/leaders/2015/10/31/the-trust-machine)

    總結(jié)

    這個(gè)世界充滿了不確定性,計(jì)算機(jī)科學(xué)也一樣。從計(jì)算機(jī)出現(xiàn)開始,我們就不得不面對(duì)機(jī)器硬件的不確定性:意外故障可能帶來的問題。從互聯(lián)網(wǎng)興起開始,我們就不得不面對(duì)網(wǎng)絡(luò)的不確定性:通訊消息可能的延遲、亂序、丟失。而應(yīng)對(duì)不確定性問題最自然的解法就是冗余,通過大量節(jié)點(diǎn)來實(shí)現(xiàn)系統(tǒng)整體的安全性,避免單點(diǎn)故障,增強(qiáng)容錯(cuò)能力和抵御攻擊的能力。正是基于此,才帶來了大型分布式網(wǎng)絡(luò)的蓬勃發(fā)展,而如何在不確定的網(wǎng)絡(luò)和節(jié)點(diǎn)間尋找到某種確定性,協(xié)調(diào)眾多節(jié)點(diǎn)間的一致性,正是分布式一致性算法需要解決的問題。能夠應(yīng)對(duì)故障類錯(cuò)誤的CFT算法包括最經(jīng)典的Paxos算法和更簡(jiǎn)單的Raft算法,可以在網(wǎng)絡(luò)中正常節(jié)點(diǎn)超過一半的情況下保證算法的有效性。這類算法通常應(yīng)用在環(huán)境可信的封閉網(wǎng)絡(luò)中,協(xié)調(diào)幾個(gè)到幾十個(gè)節(jié)點(diǎn)間的一致性,如公司內(nèi)部的分布式存儲(chǔ)、分布式服務(wù)協(xié)議、分布式消息系統(tǒng)等。另外,也可以應(yīng)用于由少數(shù)機(jī)構(gòu)組成的需要授權(quán)才能訪問的聯(lián)盟鏈網(wǎng)絡(luò)中。

    然而,不確定的不止是網(wǎng)絡(luò)與機(jī)器本身,還有控制網(wǎng)絡(luò)中各個(gè)節(jié)點(diǎn)的人的行為。如何在可能存在搗亂者惡意篡改數(shù)據(jù)或攻擊網(wǎng)絡(luò)的情況下,保證分布式網(wǎng)絡(luò)的一致性,正是拜占庭容錯(cuò)類算法BFT需要考慮的問題。BFT類算法中最常見的就是PBFT算法,可以在網(wǎng)絡(luò)中正常節(jié)點(diǎn)超過1/3的情況下保證算法的有效性。即便如此,PBFT對(duì)于網(wǎng)絡(luò)中惡意行為的應(yīng)對(duì)能力仍然是有限的,另外其性能也會(huì)隨著網(wǎng)絡(luò)中節(jié)點(diǎn)數(shù)目的增多而顯著下降。這些局限性也導(dǎo)致PBFT算法僅能用于環(huán)境較為可信的、有權(quán)限控制的網(wǎng)絡(luò)中,協(xié)調(diào)幾個(gè)到幾十個(gè)節(jié)點(diǎn)間的一致性,比如聯(lián)盟鏈場(chǎng)景中。

    而在無權(quán)限控制的permissionless開放網(wǎng)絡(luò)中,不確定性更加嚴(yán)峻,特別是網(wǎng)絡(luò)節(jié)點(diǎn)背后的人的行為的不確定性。如何防止網(wǎng)絡(luò)中的控制人之間通過腐敗串通組成寡頭,從而控制網(wǎng)絡(luò)中的過半節(jié)點(diǎn),達(dá)到控制、損害、攻擊網(wǎng)絡(luò)的目的,即是開放網(wǎng)絡(luò)需要考慮的問題。從這一角度看,開放網(wǎng)絡(luò)中的一致性還隱含了安全性的前提:即不僅要求節(jié)點(diǎn)間能夠達(dá)成共識(shí),還要求該共識(shí)確實(shí)是由節(jié)點(diǎn)眾多控制人真實(shí)表達(dá)而形成的。而為了達(dá)到這種一致性與安全性,不僅需要實(shí)現(xiàn)物理硬件節(jié)點(diǎn)在結(jié)構(gòu)上的decentralization,還需要盡可能地保證節(jié)點(diǎn)背后實(shí)際控制人的decentralization。為了實(shí)現(xiàn)這一點(diǎn),需要保證任何人都可以隨時(shí)部署運(yùn)行網(wǎng)絡(luò)協(xié)議而成為網(wǎng)絡(luò)中的節(jié)點(diǎn)、可以隨時(shí)進(jìn)出網(wǎng)絡(luò);節(jié)點(diǎn)之間點(diǎn)對(duì)點(diǎn)通訊,無任何中心化控制節(jié)點(diǎn);節(jié)點(diǎn)的角色是完全對(duì)等的,按照規(guī)則有公平的可能性參與記賬。而如何協(xié)調(diào)開放網(wǎng)絡(luò)中數(shù)量龐大的上萬(wàn)個(gè)節(jié)點(diǎn)間的行為,保證網(wǎng)絡(luò)的一致性與安全性,即是公有鏈共識(shí)機(jī)制要解決的問題。其中,最典型的當(dāng)屬比特幣首創(chuàng)的基于工作量證明的PoW共識(shí)機(jī)制,以及隨后興起的基于權(quán)益證明的PoS共識(shí)機(jī)制。這些共識(shí)機(jī)制不再局限于技術(shù)上的一致性本身,而是更多地引入了經(jīng)濟(jì)學(xué)和博弈論的思想,從經(jīng)濟(jì)和博弈的角度盡可能保證網(wǎng)絡(luò)的一致性與安全性。

    從傳統(tǒng)的封閉分布式網(wǎng)絡(luò)環(huán)境中的一致性,到有權(quán)限控制的聯(lián)盟鏈場(chǎng)景中的一致性,再到無權(quán)限控制的公有鏈開放網(wǎng)絡(luò)環(huán)境中的共識(shí)機(jī)制,面對(duì)的問題越來越復(fù)雜,應(yīng)對(duì)的挑戰(zhàn)也越來越嚴(yán)峻。從單純的技術(shù)視角來看,其中對(duì)于consensus的研究是一脈相承的,這些一致性算法或共識(shí)機(jī)制同樣也都受到傳統(tǒng)分布式一致性理論研究中FLP impossibility和CAP theorem的制約。Paxos、Raft和PBFT都強(qiáng)調(diào)了fault tolerance與safety/consistency,而弱化了liveness與availability。而PoW與PoS則采用了全新的視角來考慮該問題,盡可能地保證了fault tolerance,以及l(fā)iveness與availability,放棄了對(duì)于安全性與一致性確定性的追求,而僅僅以概率性的方式追求最終的safety與consistency。

    另外,對(duì)于consensus的思考,也在不斷深入,從單純的節(jié)點(diǎn)間的數(shù)據(jù)一致性,到強(qiáng)調(diào)節(jié)點(diǎn)背后的人之間的共識(shí)與認(rèn)同;從保證網(wǎng)絡(luò)與硬件的可信,到盡可能地確保組成網(wǎng)絡(luò)的節(jié)點(diǎn)背后的人的可信。雖然人與人之間的可信非常復(fù)雜,也超越了單純的技術(shù)范疇,可喜的是我們已經(jīng)走在路上,而目前在該領(lǐng)域正在進(jìn)行的創(chuàng)新性的積極探索,也必將讓世界變得更加可信。

    注:本文篇幅較長(zhǎng)、寫作時(shí)間跨度較長(zhǎng)、本人水平也有限,所參考資料可能有疏漏或個(gè)人理解偏差,歡迎大家指正、討論、交流、建議,后續(xù)將進(jìn)行更新。

    參考資料

  • An Overview of Blockchain Technology: Architecture, Consensus, and Future Trends
  • https://101blockchains.com/consensus-algorithms-blockchain/
  • Comparative Analysis of Blockchain Consensus Algorithms
  • https://draveness.me/consensus
  • https://yeasy.gitbooks.io/blockchain_guide/content/distribute_system/consensus.html
  • http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.67.6951&rep=rep1&type=pdf
  • https://dba.stackexchange.com/questions/18435/cap-theorem-vs-base-nosql
  • https://www.quora.com/What-is-the-difference-between-CAP-and-BASE-and-how-are-they-related-with-each-other
  • http://ug93tad.github.io/flpcap/
  • https://ramcloud.stanford.edu/~ongaro/userstudy/paxos.pdf
  • https://en.wikipedia.org/wiki/Paxos_(computer_science)
  • http://www.pmg.csail.mit.edu/papers/bft-tocs.pdf
  • https://www.youtube.com/watch?v=M4RW6GAwryc
  • https://medium.com/codechain/safety-and-liveness-blockchain-in-the-point-of-view-of-flp-impossibility-182e33927ce6
  • http://www.cs.utexas.edu/~lorenzo/corsi/cs380d/past/15S2/notes/week14.pdf
  • http://disi.unitn.it/~montreso/ds/slides17/10-pbft.pdf
  • https://eprints.soton.ac.uk/415083/2/itasec18_main.pdf
  • http://www.scs.stanford.edu/14au-cs244b/labs/projects/copeland_zhong.pdf
  • https://people.cs.umass.edu/~emery/classes/cmpsci691st/scribe/lecture17-byz.pdf
  • https://lamport.azurewebsites.net/tla/byzsimple.pdf
  • https://blockonomi.com/practical-byzantine-fault-tolerance/
  • https://medium.com/@VitalikButerin/the-meaning-of-decentralization-a0c92b76a274
  • https://bitcoin.org/bitcoin.pdf
  • https://en.wikipedia.org/wiki/Proof-of-work_system
  • https://bitnodes.earn.com/
  • Data Consistency and Blockchain
  • https://www.mangoresearch.co/understanding-blockchain-tech-cap-theorem/
  • https://cryptographics.info/cryptographics/blockchain/cap-theorem/
  • https://paulkernfeld.com/2016/01/15/bitcoin-cap-theorem.html
  • https://digiconomist.net/bitcoin-energy-consumption
  • https://www.economist.com/the-economist-explains/2018/07/09/why-bitcoin-uses-so-much-energy
  • https://www.youtube.com/watch?v=M3EFi_POhps
  • http://www.wisdom.weizmann.ac.il/~naor/PAPERS/pvp.pdf
  • https://bitcointalk.org/index.php?topic=27787.0
  • https://lisk.io/academy/blockchain-basics/how-does-blockchain-work/delegated-proof-of-stake
  • https://medium.com/loom-network/understanding-blockchain-fundamentals-part-3-delegated-proof-of-stake-b385a6b92ef
  • https://www.youtube.com/watch?v=Qfm26MX-Kdo
  • https://lisk.io/academy/blockchain-basics/how-does-blockchain-work/byzantine-fault-tolerance-explained
  • https://www.slideshare.net/oryband/the-stellar-blockchain-and-the-story-of-the-federated-consensusblockchain-academy
  • https://www.slideshare.net/sharkag/consistency-availability-partition-make-your-choice
  • https://fenix.tecnico.ulisboa.pt/downloadFile/1126518382178117/10.e-CAP-3.pdf
  • https://people.eecs.berkeley.edu/~brewer/cs262b-2004/PODC-keynote.pdf
  • https://www.infoq.com/news/2008/01/consistency-vs-availability
  • https://www.giottus.com/Bitcoin
  • https://www.nichanank.com/blog/2018/6/4/consensus-algorithms-pos-dpos
  • https://en.bitcoinwiki.org/wiki/DPoS
  • https://cryptographics.info/cryptographics/blockchain/consensus-mechanisms/leased-proof-stake/
  • https://tokens-economy.gitbook.io/consensus/chain-based-trusted-computing-algorithms/poet
  • https://www.investopedia.com/terms/p/proof-elapsed-time-cryptocurrency.asp
  • https://www.investopedia.com/terms/p/proof-activity-cryptocurrency.asp
  • https://www.mycryptopedia.com/proof-of-importance/
  • https://en.wikipedia.org/wiki/Proof-of-space
  • https://en.bitcoin.it/wiki/Proof_of_burn
  • https://hackernoon.com/a-hitchhikers-guide-to-consensus-algorithms-d81aae3eb0e3
  • https://github.com/ethereum/wiki/wiki/Proof-of-Stake-FAQ
  • https://socrates1024.s3.amazonaws.com/consensus.pdf
  • http://groups.csail.mit.edu/tds/papers/Lynch/jacm88.pdf
  • https://en.wikipedia.org/wiki/Las_Vegas_algorithm
  • https://bitcoinmagazine.com/articles/selfish-mining-a-25-attack-against-the-bitcoin-network-1383578440/
  • https://medium.com/mechanism-labs/finality-in-blockchain-consensus-d1f83c120a9a
  • https://medium.com/@marchionnip/the-dlt-consensus-ecosystem-dff47d2cb926
  • https://pdfs.semanticscholar.org/da8a/37b10bc1521a4d3de925d7ebc44bb606d740.pdf
  • https://www.infoq.cn/article/5-consortium-blockchain-comparison
  • https://medium.com/@micobo/technical-difference-between-ethereum-hyperledger-fabric-and-r3-corda-5a58d0a6e347
  • https://medium.com/newcryptoblock/hyperledger-fabric-vs-r3-corda-7954035a4884
  • https://docs.corda.net/design/kafka-notary/decisions/replicated-storage.html
  • https://hyperledger-fabric.readthedocs.io/en/release-1.4/raft_configuration.html
  • https://www.hyperledger.org/wp-content/uploads/2017/08/Hyperledger_Arch_WG_Paper_1_Consensus.pdf
  • https://medium.com/coinmonks/hyperledger-fabric-the-taste-of-raft-4f9f0df20b5e
  • https://medium.com/kokster/understanding-hyperledger-fabric-byzantine-fault-tolerance-cf106146ef43
  • https://fenix.tecnico.ulisboa.pt/downloadFile/282093452042936/alysson-bessani-2.pdf
  • https://hyperledger-fabric.readthedocs.io/en/release-1.4/orderer/ordering_service.html
  • https://entethalliance.org/wp-content/uploads/2018/05/EEA-TS-0001-0-v1.00-EEA-Enterprise-Ethereum-Specification-R1.pdf
  • https://medium.com/@VitalikButerin/a-proof-of-stake-design-philosophy-506585978d51
  • https://github.com/ethereum/wiki/wiki/Proof-of-Stake-FAQ
  • https://docs.google.com/presentation/d/1G5UZdEL71XAkU5B2v-TC3lmGaRIu2P6QSeF8m3wg6MU/edit#slide=id.g3aba11d29b_0_41
  • https://arxiv.org/pdf/1710.09437.pdf
  • https://arxiv.org/pdf/1607.01341.pdf
  • https://en.bitcoinwiki.org/wiki/DPoS
  • https://amplab.github.io/cs262a-fall2016/notes/21-Paxos-Raft.pdf
  • https://www.the-paper-trail.org/post/2012-03-25-flp-and-cap-arent-the-same-thing/
  • ?

    https://yq.aliyun.com/articles/702243?utm_content=g_1000057448

    總結(jié)

    以上是生活随笔為你收集整理的从分布式一致性算法到区块链共识机制的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

    国产av剧情md精品麻豆 | 少妇邻居内射在线 | 午夜男女很黄的视频 | 无码精品国产va在线观看dvd | 天天综合网天天综合色 | 无遮挡国产高潮视频免费观看 | 国产激情无码一区二区app | 久在线观看福利视频 | 日日鲁鲁鲁夜夜爽爽狠狠 | 国产成人无码专区 | 国产精品久久久一区二区三区 | 国产精品久久福利网站 | 青青青爽视频在线观看 | 97se亚洲精品一区 | 无码人妻精品一区二区三区下载 | 中文字幕乱妇无码av在线 | 亚洲欧美精品伊人久久 | 中文亚洲成a人片在线观看 | 少妇无码av无码专区在线观看 | 性色av无码免费一区二区三区 | 国产乱人无码伦av在线a | 高中生自慰www网站 | 国产高清不卡无码视频 | 亚洲 欧美 激情 小说 另类 | 日日鲁鲁鲁夜夜爽爽狠狠 | 亚洲午夜久久久影院 | 三上悠亚人妻中文字幕在线 | 亚洲综合无码久久精品综合 | 日韩人妻无码一区二区三区久久99 | 精品国产一区二区三区av 性色 | 国产精品美女久久久久av爽李琼 | 中文字幕av无码一区二区三区电影 | 日本精品高清一区二区 | 丝袜足控一区二区三区 | 奇米影视7777久久精品 | 免费网站看v片在线18禁无码 | 午夜理论片yy44880影院 | 午夜无码人妻av大片色欲 | 日韩视频 中文字幕 视频一区 | 日本成熟视频免费视频 | 熟妇人妻中文av无码 | 精品欧美一区二区三区久久久 | 国产猛烈高潮尖叫视频免费 | 又粗又大又硬又长又爽 | 亚洲国产精品无码久久久久高潮 | 久久国内精品自在自线 | 欧美日韩在线亚洲综合国产人 | 精品水蜜桃久久久久久久 | 久久www免费人成人片 | 国产av一区二区精品久久凹凸 | 色情久久久av熟女人妻网站 | 国产精品嫩草久久久久 | 高清不卡一区二区三区 | 人人妻人人澡人人爽人人精品浪潮 | 国产亚洲精品久久久ai换 | 亚洲中文字幕在线无码一区二区 | 精品国产麻豆免费人成网站 | 成人片黄网站色大片免费观看 | 亚洲狠狠色丁香婷婷综合 | 精品国产av色一区二区深夜久久 | 中文字幕乱码亚洲无线三区 | 亚洲人交乣女bbw | 人妻中文无码久热丝袜 | 亚洲午夜久久久影院 | 丰满少妇高潮惨叫视频 | 色综合久久久久综合一本到桃花网 | 麻豆人妻少妇精品无码专区 | 国产精品久久国产精品99 | 亚洲成a人片在线观看日本 | 永久免费观看国产裸体美女 | 少妇太爽了在线观看 | 又黄又爽又色的视频 | 欧美丰满老熟妇xxxxx性 | 国产凸凹视频一区二区 | 少妇人妻大乳在线视频 | 日韩人妻少妇一区二区三区 | 蜜臀aⅴ国产精品久久久国产老师 | 日本www一道久久久免费榴莲 | 国产精品免费大片 | 亚洲精品一区三区三区在线观看 | 国产色视频一区二区三区 | 狠狠色丁香久久婷婷综合五月 | 一个人看的www免费视频在线观看 | 国产精品无套呻吟在线 | 国产性猛交╳xxx乱大交 国产精品久久久久久无码 欧洲欧美人成视频在线 | 亚洲中文字幕va福利 | 学生妹亚洲一区二区 | 美女扒开屁股让男人桶 | 亚洲毛片av日韩av无码 | av无码久久久久不卡免费网站 | 天堂а√在线中文在线 | 九九在线中文字幕无码 | 国产精品久久福利网站 | 日本免费一区二区三区最新 | 国产精品亚洲一区二区三区喷水 | 国产精品手机免费 | 国内精品人妻无码久久久影院 | 国产黄在线观看免费观看不卡 | 激情国产av做激情国产爱 | 久久无码人妻影院 | 国产国产精品人在线视 | 东京热无码av男人的天堂 | 熟妇人妻中文av无码 | 成熟人妻av无码专区 | 亚洲人成网站色7799 | aⅴ亚洲 日韩 色 图网站 播放 | 夫妻免费无码v看片 | 国产午夜无码视频在线观看 | 国产成人av免费观看 | 精品国偷自产在线 | 真人与拘做受免费视频 | 国产精品美女久久久久av爽李琼 | 1000部夫妻午夜免费 | 国产特级毛片aaaaaa高潮流水 | 国产乱子伦视频在线播放 | 爱做久久久久久 | 玩弄人妻少妇500系列视频 | 天天摸天天碰天天添 | 激情爆乳一区二区三区 | 无码精品人妻一区二区三区av | 久久精品国产一区二区三区 | 久久久久久久女国产乱让韩 | 性色av无码免费一区二区三区 | 黑人玩弄人妻中文在线 | 成人片黄网站色大片免费观看 | 国产一区二区不卡老阿姨 | 国产av一区二区精品久久凹凸 | 欧美freesex黑人又粗又大 | 色狠狠av一区二区三区 | 亚洲色大成网站www国产 | 成人无码视频在线观看网站 | 国产精品久久久一区二区三区 | 国产精品99爱免费视频 | 麻豆av传媒蜜桃天美传媒 | 国产成人综合美国十次 | 玩弄中年熟妇正在播放 | 老子影院午夜精品无码 | 妺妺窝人体色www婷婷 | 天堂久久天堂av色综合 | 人妻有码中文字幕在线 | √8天堂资源地址中文在线 | 午夜不卡av免费 一本久久a久久精品vr综合 | 免费人成在线视频无码 | 亚洲码国产精品高潮在线 | 亚洲欧洲无卡二区视頻 | 亚洲日本一区二区三区在线 | aⅴ在线视频男人的天堂 | 亚洲精品无码人妻无码 | 久久精品中文字幕大胸 | 国产国产精品人在线视 | 风流少妇按摩来高潮 | 老子影院午夜精品无码 | 精品国产一区二区三区av 性色 | 曰韩少妇内射免费播放 | 亚洲熟女一区二区三区 | 色综合久久久久综合一本到桃花网 | 精品乱子伦一区二区三区 | 无套内谢老熟女 | 动漫av网站免费观看 | 人妻天天爽夜夜爽一区二区 | 日韩精品a片一区二区三区妖精 | 亚洲爆乳精品无码一区二区三区 | 精品 日韩 国产 欧美 视频 | 国产情侣作爱视频免费观看 | √天堂中文官网8在线 | 99国产欧美久久久精品 | 青青久在线视频免费观看 | 97夜夜澡人人双人人人喊 | 亚洲国产欧美在线成人 | 少妇愉情理伦片bd | 无码人妻丰满熟妇区毛片18 | 熟女少妇人妻中文字幕 | 亚洲一区二区三区偷拍女厕 | 夜夜夜高潮夜夜爽夜夜爰爰 | 亚洲а∨天堂久久精品2021 | 又大又紧又粉嫩18p少妇 | 精品国产青草久久久久福利 | 国产精品第一区揄拍无码 | 欧美日韩亚洲国产精品 | 人妻少妇精品久久 | 欧美午夜特黄aaaaaa片 | 台湾无码一区二区 | 久久人人爽人人爽人人片av高清 | 免费人成网站视频在线观看 | 久久五月精品中文字幕 | 学生妹亚洲一区二区 | 精品国产青草久久久久福利 | 国产在线无码精品电影网 | а√天堂www在线天堂小说 | 国产综合在线观看 | 亚洲s色大片在线观看 | 久久久久成人片免费观看蜜芽 | 丁香花在线影院观看在线播放 | 亚洲欧美精品aaaaaa片 | 美女毛片一区二区三区四区 | 国产又爽又黄又刺激的视频 | 狂野欧美性猛交免费视频 | 国产肉丝袜在线观看 | 国产麻豆精品精东影业av网站 | 色婷婷av一区二区三区之红樱桃 | 捆绑白丝粉色jk震动捧喷白浆 | 蜜桃视频韩日免费播放 | 国产成人精品无码播放 | 天天做天天爱天天爽综合网 | 国产性生交xxxxx无码 | 小鲜肉自慰网站xnxx | 老司机亚洲精品影院 | 国产在线精品一区二区三区直播 | 国产一区二区三区日韩精品 | 日本又色又爽又黄的a片18禁 | 在线观看免费人成视频 | 少妇人妻大乳在线视频 | 激情亚洲一区国产精品 | 野外少妇愉情中文字幕 | 中文无码成人免费视频在线观看 | 国产精华av午夜在线观看 | 99久久精品国产一区二区蜜芽 | 久久www免费人成人片 | 国精产品一品二品国精品69xx | 熟妇女人妻丰满少妇中文字幕 | 免费国产黄网站在线观看 | 国语自产偷拍精品视频偷 | 国产网红无码精品视频 | 精品夜夜澡人妻无码av蜜桃 | 国产真实夫妇视频 | 欧美日韩精品 | 国产后入清纯学生妹 | 18禁黄网站男男禁片免费观看 | 久久久久久亚洲精品a片成人 | 在线观看欧美一区二区三区 | 成 人 网 站国产免费观看 | 日韩av激情在线观看 | 免费国产成人高清在线观看网站 | 国产内射老熟女aaaa | 亚洲精品午夜国产va久久成人 | 久久综合香蕉国产蜜臀av | 亚洲综合无码一区二区三区 | 成人无码精品一区二区三区 | 免费人成在线视频无码 | 色婷婷香蕉在线一区二区 | 亚洲国产欧美日韩精品一区二区三区 | 亚洲中文字幕成人无码 | 午夜福利试看120秒体验区 | 中文字幕av无码一区二区三区电影 | 曰本女人与公拘交酡免费视频 | 国产精品沙发午睡系列 | 亚洲国产精品成人久久蜜臀 | 国产另类ts人妖一区二区 | 麻豆蜜桃av蜜臀av色欲av | 久久天天躁夜夜躁狠狠 | 扒开双腿吃奶呻吟做受视频 | 日日麻批免费40分钟无码 | 国产人妻人伦精品1国产丝袜 | 免费观看又污又黄的网站 | 亚洲色在线无码国产精品不卡 | 无码人妻出轨黑人中文字幕 | 久久伊人色av天堂九九小黄鸭 | 一个人看的视频www在线 | 7777奇米四色成人眼影 | 无码一区二区三区在线观看 | 国产va免费精品观看 | 成人亚洲精品久久久久软件 | 精品国精品国产自在久国产87 | 午夜无码人妻av大片色欲 | 国产在线精品一区二区高清不卡 | 亚洲精品www久久久 | 国产卡一卡二卡三 | 亚洲国产精品久久人人爱 | 欧美肥老太牲交大战 | 国产精品人人爽人人做我的可爱 | 国产人妻人伦精品1国产丝袜 | 性欧美牲交xxxxx视频 | 国产福利视频一区二区 | 日韩精品无码免费一区二区三区 | 欧洲熟妇色 欧美 | 国产人妻久久精品二区三区老狼 | 四十如虎的丰满熟妇啪啪 | 欧美日韩一区二区综合 | 中国女人内谢69xxxx | 野外少妇愉情中文字幕 | 亚洲国产精品无码一区二区三区 | 波多野结衣av一区二区全免费观看 | 国色天香社区在线视频 | 亚洲男人av天堂午夜在 | 亚洲精品中文字幕 | 亚洲精品综合五月久久小说 | 国产福利视频一区二区 | 欧美性猛交xxxx富婆 | 自拍偷自拍亚洲精品被多人伦好爽 | 在线天堂新版最新版在线8 | 久久久婷婷五月亚洲97号色 | 亚洲日本va中文字幕 | 骚片av蜜桃精品一区 | 亚洲国产精品一区二区第一页 | 性生交片免费无码看人 | 国产乱人伦av在线无码 | 青青青爽视频在线观看 | 久久亚洲精品成人无码 | 中文字幕中文有码在线 | 国产亚洲精品久久久久久国模美 | 久久这里只有精品视频9 | 久久久亚洲欧洲日产国码αv | 天天躁夜夜躁狠狠是什么心态 | 精品无码国产一区二区三区av | 欧美三级a做爰在线观看 | 国产人成高清在线视频99最全资源 | 玩弄中年熟妇正在播放 | 呦交小u女精品视频 | 综合网日日天干夜夜久久 | 亚洲精品国偷拍自产在线麻豆 | 在线天堂新版最新版在线8 | 美女黄网站人色视频免费国产 | 欧美老熟妇乱xxxxx | 亚洲天堂2017无码 | 国产猛烈高潮尖叫视频免费 | 性欧美熟妇videofreesex | 女人和拘做爰正片视频 | 国产综合色产在线精品 | 无码人妻出轨黑人中文字幕 | 久久天天躁夜夜躁狠狠 | www一区二区www免费 | 一区二区三区乱码在线 | 欧洲 | 亚洲成色在线综合网站 | 亚洲欧洲日本无在线码 | 又紧又大又爽精品一区二区 | 300部国产真实乱 | 亚洲综合无码久久精品综合 | 爆乳一区二区三区无码 | 久久久久99精品成人片 | 中文字幕日韩精品一区二区三区 | 中文字幕无码视频专区 | 永久黄网站色视频免费直播 | 亚洲日韩av片在线观看 | 久久人人97超碰a片精品 | 成人试看120秒体验区 | 欧美性黑人极品hd | 国产成人精品三级麻豆 | 人人爽人人爽人人片av亚洲 | 国产福利视频一区二区 | 亚洲人成网站在线播放942 | 久久久久久国产精品无码下载 | 中文久久乱码一区二区 | 精品无人国产偷自产在线 | 国产麻豆精品精东影业av网站 | 老太婆性杂交欧美肥老太 | 国产成人无码专区 | 少妇人妻偷人精品无码视频 | 日本乱人伦片中文三区 | 国产在线一区二区三区四区五区 | 国产香蕉尹人视频在线 | 男女下面进入的视频免费午夜 | 美女黄网站人色视频免费国产 | 一区二区传媒有限公司 | 国产色视频一区二区三区 | 免费无码av一区二区 | 精品国精品国产自在久国产87 | 国产真实伦对白全集 | 亚洲成在人网站无码天堂 | 亚洲 另类 在线 欧美 制服 | 精品亚洲韩国一区二区三区 | 久久精品人人做人人综合 | 天堂无码人妻精品一区二区三区 | 久久久久免费精品国产 | 亚洲日韩中文字幕在线播放 | 久久久久久av无码免费看大片 | 中文字幕无码免费久久99 | 毛片内射-百度 | 九九热爱视频精品 | 精品国产一区二区三区av 性色 | 国产凸凹视频一区二区 | 精品无码一区二区三区爱欲 | 国产乱人无码伦av在线a | 免费播放一区二区三区 | 高潮毛片无遮挡高清免费视频 | 最近免费中文字幕中文高清百度 | 5858s亚洲色大成网站www | 日欧一片内射va在线影院 | 久久综合九色综合欧美狠狠 | 日韩亚洲欧美精品综合 | 奇米影视888欧美在线观看 | 人人爽人人爽人人片av亚洲 | 扒开双腿吃奶呻吟做受视频 | 国内精品久久久久久中文字幕 | 亚洲国产精品一区二区美利坚 | 欧美亚洲日韩国产人成在线播放 | 国产偷抇久久精品a片69 | 亚洲日韩av一区二区三区四区 | 国产成人综合在线女婷五月99播放 | 99久久无码一区人妻 | 伦伦影院午夜理论片 | 国产成人精品三级麻豆 | 日本一卡2卡3卡四卡精品网站 | 日本在线高清不卡免费播放 | 久久99精品久久久久婷婷 | 2019午夜福利不卡片在线 | 欧美性猛交内射兽交老熟妇 | 嫩b人妻精品一区二区三区 | 国产亚洲精品久久久久久 | 亚洲中文字幕成人无码 | 台湾无码一区二区 | 人妻天天爽夜夜爽一区二区 | 国产莉萝无码av在线播放 | 性生交大片免费看女人按摩摩 | 色综合久久久无码中文字幕 | 色综合久久久无码中文字幕 | 色五月五月丁香亚洲综合网 | 精品国产aⅴ无码一区二区 | 久久国产劲爆∧v内射 | 无码毛片视频一区二区本码 | 免费国产成人高清在线观看网站 | 丰满岳乱妇在线观看中字无码 | 国产成人精品一区二区在线小狼 | 日本乱偷人妻中文字幕 | 国产内射爽爽大片视频社区在线 | 四十如虎的丰满熟妇啪啪 | 久久久久久久久888 | 东北女人啪啪对白 | 扒开双腿疯狂进出爽爽爽视频 | 成人片黄网站色大片免费观看 | 日本一卡2卡3卡4卡无卡免费网站 国产一区二区三区影院 | 精品久久久无码中文字幕 | 老熟妇乱子伦牲交视频 | 99久久人妻精品免费二区 | 天天摸天天碰天天添 | 图片小说视频一区二区 | 精品无码一区二区三区的天堂 | 日本一区二区三区免费播放 | 日日鲁鲁鲁夜夜爽爽狠狠 | 欧美日本日韩 | 亚洲爆乳大丰满无码专区 | 无码国产激情在线观看 | 色综合天天综合狠狠爱 | 四十如虎的丰满熟妇啪啪 | 内射爽无广熟女亚洲 | 婷婷综合久久中文字幕蜜桃三电影 | 国产精品无码一区二区三区不卡 | 色老头在线一区二区三区 | 国产办公室秘书无码精品99 | 国产精品无码一区二区桃花视频 | 欧美三级不卡在线观看 | 久青草影院在线观看国产 | 欧美野外疯狂做受xxxx高潮 | 国产精品视频免费播放 | 久久精品丝袜高跟鞋 | 97se亚洲精品一区 | 久久人人爽人人人人片 | 真人与拘做受免费视频一 | 天天av天天av天天透 | 乌克兰少妇xxxx做受 | 国产精品无码成人午夜电影 | 无码帝国www无码专区色综合 | 午夜无码人妻av大片色欲 | 国产极品美女高潮无套在线观看 | 国产精品爱久久久久久久 | 日本大乳高潮视频在线观看 | 青青草原综合久久大伊人精品 | 国产成人无码a区在线观看视频app | 久久精品女人天堂av免费观看 | 国产九九九九九九九a片 | 97久久国产亚洲精品超碰热 | 中文字幕无码人妻少妇免费 | 免费无码av一区二区 | 色综合视频一区二区三区 | а天堂中文在线官网 | 亚洲国产成人av在线观看 | 久久久av男人的天堂 | 2019nv天堂香蕉在线观看 | 波多野结衣av一区二区全免费观看 | 午夜精品久久久久久久久 | 国产农村妇女aaaaa视频 撕开奶罩揉吮奶头视频 | 狠狠躁日日躁夜夜躁2020 | 中文字幕乱码人妻无码久久 | 免费无码午夜福利片69 | 精品无码国产自产拍在线观看蜜 | 乱人伦中文视频在线观看 | 成人欧美一区二区三区 | 久久精品国产亚洲精品 | 亚洲成a人一区二区三区 | 久久久国产精品无码免费专区 | 麻豆成人精品国产免费 | 成人精品一区二区三区中文字幕 | 国产 精品 自在自线 | 草草网站影院白丝内射 | 九月婷婷人人澡人人添人人爽 | 成熟女人特级毛片www免费 | 狂野欧美性猛xxxx乱大交 | 亚洲成色www久久网站 | 日本va欧美va欧美va精品 | 高潮毛片无遮挡高清免费 | 99久久人妻精品免费二区 | 激情国产av做激情国产爱 | 老熟女重囗味hdxx69 | 精品偷拍一区二区三区在线看 | 日韩精品无码免费一区二区三区 | 午夜精品久久久久久久 | 天堂а√在线地址中文在线 | 久热国产vs视频在线观看 | 熟女少妇在线视频播放 | 久久99精品国产.久久久久 | 亚洲а∨天堂久久精品2021 | 人人妻人人澡人人爽欧美精品 | 亚洲小说图区综合在线 | 日本丰满护士爆乳xxxx | 国产手机在线αⅴ片无码观看 | 日本一区二区更新不卡 | 国内综合精品午夜久久资源 | 久久综合激激的五月天 | 波多野结衣一区二区三区av免费 | 人妻体内射精一区二区三四 | 久久午夜夜伦鲁鲁片无码免费 | 十八禁视频网站在线观看 | 成人性做爰aaa片免费看不忠 | 日本xxxx色视频在线观看免费 | 色婷婷香蕉在线一区二区 | 欧美放荡的少妇 | 亚洲成av人片天堂网无码】 | 国产黑色丝袜在线播放 | 中文字幕av无码一区二区三区电影 | 国产香蕉尹人视频在线 | 99精品无人区乱码1区2区3区 | 中文字幕无码日韩欧毛 | 久久无码专区国产精品s | 色综合久久网 | aⅴ亚洲 日韩 色 图网站 播放 | 中文字幕人妻无码一区二区三区 | 国产精品久久久久9999小说 | 中文字幕乱码人妻二区三区 | 伊人色综合久久天天小片 | 久久精品人妻少妇一区二区三区 | 国产口爆吞精在线视频 | 中文字幕人成乱码熟女app | 18精品久久久无码午夜福利 | 欧美亚洲国产一区二区三区 | 久久午夜无码鲁丝片午夜精品 | 成人性做爰aaa片免费看 | 亚洲综合久久一区二区 | 福利一区二区三区视频在线观看 | 中文字幕乱码亚洲无线三区 | av无码电影一区二区三区 | 国内丰满熟女出轨videos | 国产片av国语在线观看 | 亚洲gv猛男gv无码男同 | 亚洲精品欧美二区三区中文字幕 | 欧美日韩一区二区免费视频 | 久久精品无码一区二区三区 | 小鲜肉自慰网站xnxx | 欧美亚洲日韩国产人成在线播放 | 无码国内精品人妻少妇 | 久久99精品久久久久久动态图 | 真人与拘做受免费视频一 | 成 人 免费观看网站 | 亚洲色偷偷男人的天堂 | 成人动漫在线观看 | 国产在线精品一区二区三区直播 | 99国产欧美久久久精品 | 中文字幕av伊人av无码av | 日产国产精品亚洲系列 | 中文字幕乱妇无码av在线 | 久久精品人人做人人综合试看 | 国产精品亚洲专区无码不卡 | 国产激情综合五月久久 | 欧美大屁股xxxxhd黑色 | 黑人巨大精品欧美黑寡妇 | 麻豆果冻传媒2021精品传媒一区下载 | 亚洲人成网站在线播放942 | 人妻体内射精一区二区三四 | 久久99国产综合精品 | 四虎影视成人永久免费观看视频 | 亚洲综合色区中文字幕 | 波多野结衣乳巨码无在线观看 | 精品乱子伦一区二区三区 | 国内丰满熟女出轨videos | 国产办公室秘书无码精品99 | 亚洲精品久久久久久一区二区 | 久久精品国产精品国产精品污 | 丰满护士巨好爽好大乳 | 丰满少妇熟乱xxxxx视频 | 精品水蜜桃久久久久久久 | 久久亚洲中文字幕无码 | 色婷婷综合中文久久一本 | 精品无码国产自产拍在线观看蜜 | 又紧又大又爽精品一区二区 | 国产亚洲日韩欧美另类第八页 | 亚洲国产午夜精品理论片 | 国产乡下妇女做爰 | 欧美老妇交乱视频在线观看 | 久久综合九色综合97网 | 成人无码影片精品久久久 | 国产成人综合色在线观看网站 | 国产suv精品一区二区五 | 无码帝国www无码专区色综合 | 一本久久a久久精品vr综合 | 少女韩国电视剧在线观看完整 | 好爽又高潮了毛片免费下载 | 天天摸天天碰天天添 | 97精品国产97久久久久久免费 | 欧美日韩一区二区免费视频 | 性色欲网站人妻丰满中文久久不卡 | 一本久久a久久精品vr综合 | 午夜福利试看120秒体验区 | 中文字幕无码乱人伦 | 国产超级va在线观看视频 | 亚洲精品成a人在线观看 | 国产精品香蕉在线观看 | 国产亚洲精品久久久久久久久动漫 | 国产成人精品无码播放 | av香港经典三级级 在线 | a片在线免费观看 | 国产精品怡红院永久免费 | 一本加勒比波多野结衣 | 国产精品人人爽人人做我的可爱 | 亚洲成在人网站无码天堂 | 亚洲人交乣女bbw | 精品成在人线av无码免费看 | 玩弄人妻少妇500系列视频 | 九九久久精品国产免费看小说 | 熟女体下毛毛黑森林 | 中文字幕色婷婷在线视频 | 日本精品高清一区二区 | 成人亚洲精品久久久久 | 丰满人妻精品国产99aⅴ | 国产精品怡红院永久免费 | 一本久道久久综合狠狠爱 | 国产69精品久久久久app下载 | 日日碰狠狠躁久久躁蜜桃 | 131美女爱做视频 | 精品偷自拍另类在线观看 | 色婷婷久久一区二区三区麻豆 | 国内少妇偷人精品视频免费 | 久在线观看福利视频 | 中文字幕人妻无码一区二区三区 | 国产明星裸体无码xxxx视频 | 特黄特色大片免费播放器图片 | 国产精华av午夜在线观看 | 国产精品国产自线拍免费软件 | 一本久久a久久精品vr综合 | 欧美激情一区二区三区成人 | 日本一卡2卡3卡4卡无卡免费网站 国产一区二区三区影院 | 久久久国产精品无码免费专区 | 成人女人看片免费视频放人 | 亚洲精品久久久久avwww潮水 | 日韩人妻系列无码专区 | 久久午夜无码鲁丝片秋霞 | 午夜男女很黄的视频 | 中文字幕乱码人妻二区三区 | 亚洲a无码综合a国产av中文 | 国产激情一区二区三区 | 男女超爽视频免费播放 | 欧美日韩在线亚洲综合国产人 | 国产亚洲欧美日韩亚洲中文色 | 性欧美大战久久久久久久 | 天天拍夜夜添久久精品 | 高潮毛片无遮挡高清免费视频 | 国产成人综合在线女婷五月99播放 | 日韩亚洲欧美中文高清在线 | 樱花草在线播放免费中文 | 麻花豆传媒剧国产免费mv在线 | 国产精品国产自线拍免费软件 | av无码久久久久不卡免费网站 | 日本丰满护士爆乳xxxx | 东京热一精品无码av | 国产乱人伦偷精品视频 | 欧美日韩综合一区二区三区 | 在线观看欧美一区二区三区 | 九九在线中文字幕无码 | 狠狠噜狠狠狠狠丁香五月 | 红桃av一区二区三区在线无码av | 亚洲国产精品一区二区美利坚 | 国产精品成人av在线观看 | 77777熟女视频在线观看 а天堂中文在线官网 | 少妇一晚三次一区二区三区 | 亚洲日本一区二区三区在线 | 少妇无套内谢久久久久 | 亚洲欧美精品伊人久久 | 欧美zoozzooz性欧美 | 久热国产vs视频在线观看 | 日韩精品无码一本二本三本色 | 日韩av无码中文无码电影 | 精品国产一区av天美传媒 | 国产亚洲精品精品国产亚洲综合 | 欧美真人作爱免费视频 | 日产国产精品亚洲系列 | 日韩无套无码精品 | 欧美老熟妇乱xxxxx | 对白脏话肉麻粗话av | 一本大道伊人av久久综合 | 国产精品国产三级国产专播 | 成人毛片一区二区 | 中文字幕乱妇无码av在线 | 国产黄在线观看免费观看不卡 | 国产无遮挡又黄又爽免费视频 | 无码免费一区二区三区 | 国产片av国语在线观看 | 成人av无码一区二区三区 | 漂亮人妻洗澡被公强 日日躁 | 国产一区二区不卡老阿姨 | 国产在线精品一区二区高清不卡 | ass日本丰满熟妇pics | 亚洲国产精品成人久久蜜臀 | 大肉大捧一进一出好爽视频 | 装睡被陌生人摸出水好爽 | 久久精品国产一区二区三区 | 国产办公室秘书无码精品99 | 成人性做爰aaa片免费看 | 国产明星裸体无码xxxx视频 | 俺去俺来也在线www色官网 | 国产精品久久久久久亚洲影视内衣 | 国产网红无码精品视频 | 在线a亚洲视频播放在线观看 | 亚洲色欲久久久综合网东京热 | 中文久久乱码一区二区 | 欧美丰满熟妇xxxx性ppx人交 | 沈阳熟女露脸对白视频 | 无码人妻丰满熟妇区五十路百度 | 亚洲国产av精品一区二区蜜芽 | 一本色道久久综合亚洲精品不卡 | 久久综合九色综合97网 | 日韩精品a片一区二区三区妖精 | 欧洲精品码一区二区三区免费看 | √天堂资源地址中文在线 | 在线 国产 欧美 亚洲 天堂 | 亚洲色www成人永久网址 | 人妻人人添人妻人人爱 | 奇米影视7777久久精品人人爽 | 亚洲欧美国产精品专区久久 | 三上悠亚人妻中文字幕在线 | 国产成人亚洲综合无码 | 欧美变态另类xxxx | 久久亚洲日韩精品一区二区三区 | 99精品国产综合久久久久五月天 | 欧美日韩亚洲国产精品 | 亚洲国产成人a精品不卡在线 | 少妇激情av一区二区 | 日本熟妇浓毛 | 亚洲熟妇色xxxxx亚洲 | 国产精品第一区揄拍无码 | 欧美精品国产综合久久 | 日韩人妻少妇一区二区三区 | 77777熟女视频在线观看 а天堂中文在线官网 | 日韩视频 中文字幕 视频一区 | 成人无码视频在线观看网站 | 亚洲色欲久久久综合网东京热 | 国产精品成人av在线观看 | 久久无码专区国产精品s | 成人性做爰aaa片免费看 | 久激情内射婷内射蜜桃人妖 | 亚洲成色在线综合网站 | 国产绳艺sm调教室论坛 | 任你躁在线精品免费 | 真人与拘做受免费视频 | 成在人线av无码免观看麻豆 | 欧美黑人性暴力猛交喷水 | 亚洲欧美日韩成人高清在线一区 | 亚洲啪av永久无码精品放毛片 | 帮老师解开蕾丝奶罩吸乳网站 | 一二三四在线观看免费视频 | 国产成人精品久久亚洲高清不卡 | 国产精品国产自线拍免费软件 | 亚洲国产精品无码久久久久高潮 | 国产人妻精品一区二区三区不卡 | 精品一区二区三区无码免费视频 | 日日橹狠狠爱欧美视频 | 久久精品女人天堂av免费观看 | 亚洲精品无码人妻无码 | 一本加勒比波多野结衣 | 久久精品中文字幕大胸 | 99久久精品无码一区二区毛片 | 亚洲最大成人网站 | 51国偷自产一区二区三区 | 无码帝国www无码专区色综合 | 国产精品18久久久久久麻辣 | 国产熟妇高潮叫床视频播放 | 久久综合九色综合97网 | 国产 精品 自在自线 | 国产乱人伦偷精品视频 | 国产综合色产在线精品 | 国产综合在线观看 | 亚洲熟悉妇女xxx妇女av | 性生交大片免费看女人按摩摩 | 亚洲精品久久久久久久久久久 | 领导边摸边吃奶边做爽在线观看 | 成人性做爰aaa片免费看 | 亚洲国产成人a精品不卡在线 | 日韩人妻少妇一区二区三区 | 亚洲国产av精品一区二区蜜芽 | 亚欧洲精品在线视频免费观看 | 少妇人妻偷人精品无码视频 | 色综合久久88色综合天天 | 亚洲精品国偷拍自产在线观看蜜桃 | 欧美阿v高清资源不卡在线播放 | 无码av最新清无码专区吞精 | 国产成人综合在线女婷五月99播放 | 性开放的女人aaa片 | 无码国产乱人伦偷精品视频 | 无码av最新清无码专区吞精 | 日韩少妇白浆无码系列 | 蜜桃视频韩日免费播放 | 亚洲欧美日韩成人高清在线一区 | 99久久精品无码一区二区毛片 | 精品熟女少妇av免费观看 | 无码国产色欲xxxxx视频 | 无码国产乱人伦偷精品视频 | 久久天天躁夜夜躁狠狠 | 色欲av亚洲一区无码少妇 | 精品无码国产一区二区三区av | 国产精品第一区揄拍无码 | 国产亚洲视频中文字幕97精品 | 无码人妻av免费一区二区三区 | 无码av最新清无码专区吞精 | 老熟妇仑乱视频一区二区 | 久久精品国产99久久6动漫 | 国产亚洲精品久久久久久国模美 | 欧洲熟妇精品视频 | 亚洲中文字幕乱码av波多ji | 男女性色大片免费网站 | 欧美三级不卡在线观看 | 六月丁香婷婷色狠狠久久 | 真人与拘做受免费视频 | 呦交小u女精品视频 | 亚洲国产精品美女久久久久 | 狠狠色色综合网站 | 色综合久久久久综合一本到桃花网 | 亚洲成色www久久网站 | 中文无码伦av中文字幕 | 国产精品久久久 | 精品国产精品久久一区免费式 | 国产成人精品视频ⅴa片软件竹菊 | 国产办公室秘书无码精品99 | 国产莉萝无码av在线播放 | 亚洲国产综合无码一区 | 曰韩无码二三区中文字幕 | 国产艳妇av在线观看果冻传媒 | 激情内射亚州一区二区三区爱妻 | 天天综合网天天综合色 | 久久人人爽人人爽人人片av高清 | 人人妻人人澡人人爽欧美一区九九 | 日韩av无码一区二区三区不卡 | 精品偷自拍另类在线观看 | 亚洲а∨天堂久久精品2021 | 综合激情五月综合激情五月激情1 | 久久99精品久久久久婷婷 | 人人澡人人透人人爽 | 欧美丰满少妇xxxx性 | 国产在线一区二区三区四区五区 | 麻豆国产97在线 | 欧洲 | 国产乱码精品一品二品 | 大地资源中文第3页 | 精品国产青草久久久久福利 | 福利一区二区三区视频在线观看 | 天下第一社区视频www日本 | 亚洲成色www久久网站 | 国产一区二区三区日韩精品 | 亚洲色欲色欲天天天www | 国产亚洲美女精品久久久2020 | 成人无码视频免费播放 | 亚洲日韩中文字幕在线播放 | 亚洲精品www久久久 | 亚洲精品久久久久久久久久久 | 六月丁香婷婷色狠狠久久 | 大地资源中文第3页 | 久久99精品久久久久婷婷 | 亚洲中文字幕无码中字 | 国产成人一区二区三区别 | 小鲜肉自慰网站xnxx | 天天拍夜夜添久久精品 | 玩弄中年熟妇正在播放 | 丰满肥臀大屁股熟妇激情视频 | 精品少妇爆乳无码av无码专区 | 大屁股大乳丰满人妻 | 欧美大屁股xxxxhd黑色 | 久久99久久99精品中文字幕 | 国产成人精品一区二区在线小狼 | 亚洲欧美日韩国产精品一区二区 | 精品厕所偷拍各类美女tp嘘嘘 | 亚洲狠狠婷婷综合久久 | 国产乱人伦app精品久久 国产在线无码精品电影网 国产国产精品人在线视 | 国产小呦泬泬99精品 | 午夜福利试看120秒体验区 | 日本丰满护士爆乳xxxx | 少女韩国电视剧在线观看完整 | 最新国产乱人伦偷精品免费网站 | 亚洲综合色区中文字幕 | 麻豆md0077饥渴少妇 | 99久久婷婷国产综合精品青草免费 | 狂野欧美性猛交免费视频 | 亚洲国产精品一区二区美利坚 | 亚洲综合无码一区二区三区 | 精品欧美一区二区三区久久久 | 男女性色大片免费网站 | 人人妻人人澡人人爽人人精品 | 女人和拘做爰正片视频 | 亚洲乱亚洲乱妇50p | 人人爽人人澡人人人妻 | 55夜色66夜色国产精品视频 | 亚洲人成人无码网www国产 | 欧美日韩综合一区二区三区 | 天堂亚洲免费视频 | 无码人妻av免费一区二区三区 | 日日麻批免费40分钟无码 | 欧美精品一区二区精品久久 | 欧美freesex黑人又粗又大 | 久久精品人妻少妇一区二区三区 | 亚洲色成人中文字幕网站 | 久久精品视频在线看15 | 国产高清不卡无码视频 | 人妻少妇精品无码专区动漫 | 欧美日韩久久久精品a片 | 国产精品二区一区二区aⅴ污介绍 | 精品人人妻人人澡人人爽人人 | 国产两女互慰高潮视频在线观看 | 国产无遮挡又黄又爽免费视频 | 欧美三级不卡在线观看 | 蜜臀av无码人妻精品 | 强辱丰满人妻hd中文字幕 | 国产特级毛片aaaaaaa高清 | 人妻少妇精品无码专区二区 | 全黄性性激高免费视频 | 麻豆国产人妻欲求不满谁演的 | 在线看片无码永久免费视频 | 夜先锋av资源网站 | 久久精品国产大片免费观看 | 亚洲爆乳精品无码一区二区三区 | 97人妻精品一区二区三区 | 精品国产一区av天美传媒 | 国产三级久久久精品麻豆三级 | 国产欧美精品一区二区三区 | 日本乱偷人妻中文字幕 | 99久久精品国产一区二区蜜芽 | 97精品国产97久久久久久免费 | 奇米影视7777久久精品 | 精品一区二区不卡无码av | 无码人妻精品一区二区三区不卡 | 人妻插b视频一区二区三区 | 伊人久久大香线蕉av一区二区 | 欧美35页视频在线观看 | 成人精品视频一区二区三区尤物 | 4hu四虎永久在线观看 | 欧美喷潮久久久xxxxx | 奇米影视7777久久精品 | 国产亚洲精品久久久久久久久动漫 | 少妇被粗大的猛进出69影院 | 日产精品99久久久久久 | 荫蒂被男人添的好舒服爽免费视频 | 国内揄拍国内精品少妇国语 | 丰满肥臀大屁股熟妇激情视频 | 亚洲综合久久一区二区 | 久久久中文久久久无码 | аⅴ资源天堂资源库在线 | 娇妻被黑人粗大高潮白浆 | 亚洲中文字幕在线无码一区二区 | 少妇太爽了在线观看 | 无码av中文字幕免费放 | 国产在线精品一区二区高清不卡 | 精品国产一区二区三区av 性色 | 亚洲天堂2017无码 | 国产麻豆精品一区二区三区v视界 | 一个人看的www免费视频在线观看 | 人妻少妇精品久久 | 97精品国产97久久久久久免费 | 国产又爽又黄又刺激的视频 | 乱人伦人妻中文字幕无码久久网 | 亚洲日韩乱码中文无码蜜桃臀网站 | 欧美丰满老熟妇xxxxx性 | 精品日本一区二区三区在线观看 | 国内精品一区二区三区不卡 | 女人色极品影院 | 久久精品人人做人人综合试看 | 一本久道久久综合狠狠爱 | 色综合视频一区二区三区 | 国产成人精品一区二区在线小狼 | 国产午夜无码精品免费看 | 国产亚洲美女精品久久久2020 | 国内精品一区二区三区不卡 | 东京一本一道一二三区 | 无码av最新清无码专区吞精 | 国产香蕉尹人综合在线观看 | 免费男性肉肉影院 | 精品欧洲av无码一区二区三区 | 亚洲精品久久久久中文第一幕 | 国产色视频一区二区三区 | 免费人成网站视频在线观看 | 自拍偷自拍亚洲精品10p | 精品 日韩 国产 欧美 视频 | 装睡被陌生人摸出水好爽 | 欧美老熟妇乱xxxxx | 亚洲国产一区二区三区在线观看 | 熟女体下毛毛黑森林 | 日本精品高清一区二区 | 亚洲精品国偷拍自产在线观看蜜桃 | 中文字幕精品av一区二区五区 | 国产精品手机免费 | 国产猛烈高潮尖叫视频免费 | 精品欧美一区二区三区久久久 | 国产精品久久久久久亚洲影视内衣 | 日韩精品无码一本二本三本色 | 18黄暴禁片在线观看 | 久久亚洲a片com人成 | 成人亚洲精品久久久久软件 | 午夜福利一区二区三区在线观看 | 漂亮人妻洗澡被公强 日日躁 | 日韩欧美中文字幕在线三区 | 国产人成高清在线视频99最全资源 | 男人的天堂2018无码 | 亚洲精品欧美二区三区中文字幕 | 日本肉体xxxx裸交 | 亚洲日韩乱码中文无码蜜桃臀网站 | 色综合视频一区二区三区 | 色老头在线一区二区三区 | 国产免费观看黄av片 | 亚洲综合无码久久精品综合 | 美女张开腿让人桶 | 色情久久久av熟女人妻网站 | 国产绳艺sm调教室论坛 | 日本精品人妻无码免费大全 | 自拍偷自拍亚洲精品被多人伦好爽 | 亚洲综合另类小说色区 | 亚洲精品国偷拍自产在线麻豆 | 男女爱爱好爽视频免费看 | 永久免费观看美女裸体的网站 | 国产人妻久久精品二区三区老狼 | 亚洲自偷自偷在线制服 | 激情亚洲一区国产精品 | 久久久www成人免费毛片 | 精品国偷自产在线视频 | av在线亚洲欧洲日产一区二区 | 精品国产一区二区三区av 性色 | 久久午夜无码鲁丝片 | 国语精品一区二区三区 | 亲嘴扒胸摸屁股激烈网站 | 特级做a爰片毛片免费69 | 精品无码国产自产拍在线观看蜜 | 国精品人妻无码一区二区三区蜜柚 | 国产成人无码av一区二区 | 久久精品国产一区二区三区 | 动漫av网站免费观看 | 狠狠色丁香久久婷婷综合五月 | 国产9 9在线 | 中文 | 99re在线播放 | 国产午夜亚洲精品不卡 | 97久久国产亚洲精品超碰热 | 伊人久久婷婷五月综合97色 | 中文字幕亚洲情99在线 | √天堂资源地址中文在线 | 国产成人人人97超碰超爽8 | 亚洲国产精品久久人人爱 | 丰满肥臀大屁股熟妇激情视频 | 又紧又大又爽精品一区二区 | 日日鲁鲁鲁夜夜爽爽狠狠 | 人妻尝试又大又粗久久 | 少妇人妻偷人精品无码视频 | 亚洲中文字幕久久无码 | 内射欧美老妇wbb | 中文字幕色婷婷在线视频 | 大乳丰满人妻中文字幕日本 | 亚洲精品久久久久久久久久久 | 久久人人爽人人爽人人片ⅴ | 国产人妖乱国产精品人妖 | 免费无码av一区二区 | √天堂资源地址中文在线 | 色婷婷av一区二区三区之红樱桃 | 成人片黄网站色大片免费观看 | 久久久久se色偷偷亚洲精品av | 日韩亚洲欧美中文高清在线 | 亚洲精品欧美二区三区中文字幕 | 国精产品一品二品国精品69xx | 亚洲s码欧洲m码国产av | 成人欧美一区二区三区黑人 | 国产真实伦对白全集 | 成人三级无码视频在线观看 | 国产精品久久国产精品99 | 日日噜噜噜噜夜夜爽亚洲精品 | √8天堂资源地址中文在线 | 中文无码伦av中文字幕 | 亚洲精品一区三区三区在线观看 | 熟妇人妻无乱码中文字幕 | 特级做a爰片毛片免费69 | 久久综合久久自在自线精品自 | 国产精品va在线播放 | 无码吃奶揉捏奶头高潮视频 | 又大又黄又粗又爽的免费视频 | 99久久精品无码一区二区毛片 | 久久久久久av无码免费看大片 | 中文字幕色婷婷在线视频 | 国产亚洲视频中文字幕97精品 | 久久精品99久久香蕉国产色戒 | 伊在人天堂亚洲香蕉精品区 | 九九热爱视频精品 | 国产午夜亚洲精品不卡 | 日韩av无码中文无码电影 | 日韩在线不卡免费视频一区 | 亚洲精品综合五月久久小说 | 樱花草在线播放免费中文 | 丰满妇女强制高潮18xxxx | 精品无码一区二区三区的天堂 | 久久久久亚洲精品中文字幕 | 欧美日本免费一区二区三区 | 国产av一区二区三区最新精品 | 国产69精品久久久久app下载 | 成人aaa片一区国产精品 | 99久久无码一区人妻 | 久久综合狠狠综合久久综合88 | 丰满人妻一区二区三区免费视频 | 激情五月综合色婷婷一区二区 | 亚洲经典千人经典日产 | 亚洲国产精品一区二区美利坚 | 性欧美大战久久久久久久 | 四虎国产精品一区二区 | 青青青手机频在线观看 | 一本大道伊人av久久综合 | 精品人妻av区 | 国产精品亚洲lv粉色 | 日日天日日夜日日摸 | 国产精品人妻一区二区三区四 | 国产无遮挡吃胸膜奶免费看 | 亚洲国产欧美日韩精品一区二区三区 | 99久久亚洲精品无码毛片 | 久久国产精品精品国产色婷婷 | 真人与拘做受免费视频 | 桃花色综合影院 | 狠狠综合久久久久综合网 | av小次郎收藏 | 亚洲gv猛男gv无码男同 | 国产精品丝袜黑色高跟鞋 | 自拍偷自拍亚洲精品10p | 久久综合激激的五月天 | 国产性猛交╳xxx乱大交 国产精品久久久久久无码 欧洲欧美人成视频在线 | 欧美 亚洲 国产 另类 | 狠狠色色综合网站 | 日韩精品a片一区二区三区妖精 | 成年美女黄网站色大免费视频 | 中文字幕无码热在线视频 | 国产精品久久久久久久影院 | 欧美老人巨大xxxx做受 | 国产黄在线观看免费观看不卡 | 人人爽人人爽人人片av亚洲 | 牛和人交xxxx欧美 | 欧美国产日产一区二区 | 亚洲欧洲日本无在线码 | 日韩亚洲欧美中文高清在线 | 国产va免费精品观看 | 熟妇人妻中文av无码 | 真人与拘做受免费视频 | 国内揄拍国内精品人妻 | 爆乳一区二区三区无码 | 国产农村妇女aaaaa视频 撕开奶罩揉吮奶头视频 | 大肉大捧一进一出好爽视频 | 狠狠色丁香久久婷婷综合五月 | 午夜精品久久久内射近拍高清 | 国产精品二区一区二区aⅴ污介绍 | 久久综合久久自在自线精品自 | 国产精品怡红院永久免费 | 狠狠cao日日穞夜夜穞av | 久久综合九色综合97网 | 亚洲欧美日韩综合久久久 | 成人欧美一区二区三区 | 在教室伦流澡到高潮hnp视频 | 国产香蕉尹人视频在线 | 性欧美疯狂xxxxbbbb | 粉嫩少妇内射浓精videos | 粉嫩少妇内射浓精videos | 亚洲啪av永久无码精品放毛片 | 国产亲子乱弄免费视频 | 亚洲精品一区国产 | 久久成人a毛片免费观看网站 | 中文字幕日韩精品一区二区三区 | 亚洲s色大片在线观看 | 亚洲小说图区综合在线 | 欧美人与禽猛交狂配 | 国产免费久久久久久无码 | 午夜性刺激在线视频免费 | 日韩人妻少妇一区二区三区 | 在线观看国产午夜福利片 | 天天爽夜夜爽夜夜爽 | 东京热一精品无码av | 福利一区二区三区视频在线观看 | 久在线观看福利视频 | 亚洲日韩乱码中文无码蜜桃臀网站 | 我要看www免费看插插视频 | 国产明星裸体无码xxxx视频 | 88国产精品欧美一区二区三区 | 999久久久国产精品消防器材 | 黑人大群体交免费视频 | 免费男性肉肉影院 | 久久久久久久人妻无码中文字幕爆 | 伊在人天堂亚洲香蕉精品区 | 精品久久综合1区2区3区激情 | 国产又爽又猛又粗的视频a片 | 好屌草这里只有精品 | 狠狠综合久久久久综合网 | 无码福利日韩神码福利片 | 在线 国产 欧美 亚洲 天堂 | 国产精品亚洲综合色区韩国 | 国产片av国语在线观看 | 九九热爱视频精品 | 久久综合给合久久狠狠狠97色 | 狠狠色欧美亚洲狠狠色www | 亚洲熟妇自偷自拍另类 | 任你躁在线精品免费 | av人摸人人人澡人人超碰下载 | 无套内谢的新婚少妇国语播放 | 国语精品一区二区三区 | 欧美怡红院免费全部视频 | 欧美成人高清在线播放 | 亚洲日本va中文字幕 | 久久成人a毛片免费观看网站 | 内射白嫩少妇超碰 | 亚洲精品国偷拍自产在线麻豆 | 大胆欧美熟妇xx | 国产亚洲精品久久久久久久 | 亚洲午夜福利在线观看 | 精品一二三区久久aaa片 | 亚洲国产精品一区二区美利坚 | 鲁鲁鲁爽爽爽在线视频观看 | 国产色在线 | 国产 | 无码精品人妻一区二区三区av | 欧美精品国产综合久久 | 亚洲熟妇色xxxxx欧美老妇 | 成年美女黄网站色大免费全看 | 免费无码av一区二区 | 国内揄拍国内精品人妻 | 丰满肥臀大屁股熟妇激情视频 | 亚洲中文字幕av在天堂 | 风流少妇按摩来高潮 | 国产亚洲精品精品国产亚洲综合 | 无码人妻精品一区二区三区下载 | 无码人妻少妇伦在线电影 | 亚洲七七久久桃花影院 | 男人扒开女人内裤强吻桶进去 | 曰韩无码二三区中文字幕 | 少妇厨房愉情理9仑片视频 | 色综合久久久久综合一本到桃花网 | 18黄暴禁片在线观看 | 中文字幕色婷婷在线视频 | 特大黑人娇小亚洲女 | 久久午夜夜伦鲁鲁片无码免费 | 激情亚洲一区国产精品 | 5858s亚洲色大成网站www | 久久婷婷五月综合色国产香蕉 | 5858s亚洲色大成网站www | 亚洲成a人片在线观看无码3d | 色五月丁香五月综合五月 | 最近中文2019字幕第二页 | 亚洲国产成人av在线观看 | 97久久精品无码一区二区 | 精品国产麻豆免费人成网站 | 中文字幕无码乱人伦 | 成熟女人特级毛片www免费 | 给我免费的视频在线观看 | 蜜桃臀无码内射一区二区三区 | aⅴ在线视频男人的天堂 | 精品人妻中文字幕有码在线 | 丰满少妇女裸体bbw | 少妇邻居内射在线 | 狠狠色欧美亚洲狠狠色www | 色欲久久久天天天综合网精品 | 漂亮人妻洗澡被公强 日日躁 | 久久精品女人天堂av免费观看 | 精品少妇爆乳无码av无码专区 | 午夜男女很黄的视频 | 麻豆果冻传媒2021精品传媒一区下载 | 国产69精品久久久久app下载 | 国产精品久久久久久亚洲毛片 | 97夜夜澡人人双人人人喊 | 在线成人www免费观看视频 | 好爽又高潮了毛片免费下载 | 国产成人人人97超碰超爽8 | 无码午夜成人1000部免费视频 | 亚洲日本va午夜在线电影 | 国产激情艳情在线看视频 | 蜜桃视频韩日免费播放 | 成人无码视频在线观看网站 | 国产精品美女久久久久av爽李琼 | a在线亚洲男人的天堂 | 少妇人妻av毛片在线看 | 久久久久久久久蜜桃 | 女人被男人爽到呻吟的视频 | 国产情侣作爱视频免费观看 | 午夜熟女插插xx免费视频 | 久久综合给合久久狠狠狠97色 | 成熟妇人a片免费看网站 | 亚洲人成影院在线观看 | 久久精品成人欧美大片 | 秋霞成人午夜鲁丝一区二区三区 | 成人片黄网站色大片免费观看 | 久久午夜无码鲁丝片午夜精品 | 少女韩国电视剧在线观看完整 | 又大又紧又粉嫩18p少妇 | 亚洲综合另类小说色区 | 疯狂三人交性欧美 | 狠狠躁日日躁夜夜躁2020 | 精品无码一区二区三区爱欲 | 在线播放亚洲第一字幕 | 亚洲精品久久久久avwww潮水 | 丰满岳乱妇在线观看中字无码 | 精品国产一区二区三区四区 | 国产成人精品久久亚洲高清不卡 | 激情亚洲一区国产精品 | 丰满护士巨好爽好大乳 | 蜜臀av无码人妻精品 | 午夜无码区在线观看 | 亚洲精品欧美二区三区中文字幕 | 中文字幕无码日韩专区 | 亚洲精品国偷拍自产在线麻豆 | 日日摸天天摸爽爽狠狠97 | 亚洲人成网站免费播放 | 色综合久久久久综合一本到桃花网 | 国产偷自视频区视频 | 国内精品久久久久久中文字幕 | 欧美真人作爱免费视频 | 亚洲天堂2017无码 | 99er热精品视频 | 亚洲国产精华液网站w | 亚洲日本va午夜在线电影 | 亚洲人成无码网www | 蜜桃臀无码内射一区二区三区 | 国产乱人伦偷精品视频 | 无码任你躁久久久久久久 | 国产凸凹视频一区二区 | 国产性猛交╳xxx乱大交 国产精品久久久久久无码 欧洲欧美人成视频在线 | 久久精品99久久香蕉国产色戒 | 一本大道久久东京热无码av | 中文无码伦av中文字幕 | 国产午夜精品一区二区三区嫩草 | 国产手机在线αⅴ片无码观看 | 人人妻人人澡人人爽人人精品浪潮 | 免费看男女做好爽好硬视频 | 亚洲一区二区三区四区 | 中文字幕无码av波多野吉衣 | 亚洲日本在线电影 | 欧美肥老太牲交大战 | 18精品久久久无码午夜福利 | 99精品视频在线观看免费 | 特大黑人娇小亚洲女 | 国产一区二区三区日韩精品 | аⅴ资源天堂资源库在线 | 亚洲一区二区三区含羞草 | 日本精品人妻无码免费大全 | 国产性猛交╳xxx乱大交 国产精品久久久久久无码 欧洲欧美人成视频在线 | 午夜熟女插插xx免费视频 | 国产精品毛多多水多 | 婷婷综合久久中文字幕蜜桃三电影 | 国产欧美亚洲精品a | 亚洲精品一区二区三区大桥未久 | 成人免费视频在线观看 | 日韩无套无码精品 | 色爱情人网站 | 97久久国产亚洲精品超碰热 | 丝袜 中出 制服 人妻 美腿 | 色噜噜亚洲男人的天堂 | 国产午夜无码视频在线观看 | 国产精品久久久午夜夜伦鲁鲁 | 九九热爱视频精品 | 激情五月综合色婷婷一区二区 | 久久精品人妻少妇一区二区三区 | 精品无码一区二区三区的天堂 | 欧美精品一区二区精品久久 | 国产精品视频免费播放 | 西西人体www44rt大胆高清 | 国产极品视觉盛宴 | 对白脏话肉麻粗话av | 精品无码一区二区三区爱欲 | 久久久精品欧美一区二区免费 | 日本免费一区二区三区最新 | 日本精品少妇一区二区三区 | 熟妇女人妻丰满少妇中文字幕 | 国产成人综合色在线观看网站 | 久久熟妇人妻午夜寂寞影院 | 中国女人内谢69xxxxxa片 | 日本在线高清不卡免费播放 | 精品久久8x国产免费观看 | 亚洲精品久久久久avwww潮水 | 无码人妻av免费一区二区三区 | 97无码免费人妻超级碰碰夜夜 | 宝宝好涨水快流出来免费视频 | 人妻天天爽夜夜爽一区二区 | 欧美老妇交乱视频在线观看 | 伊人久久大香线蕉av一区二区 | 狠狠色丁香久久婷婷综合五月 | 又粗又大又硬毛片免费看 | 精品国产一区二区三区四区 | 性色欲网站人妻丰满中文久久不卡 | 国产激情综合五月久久 | 久久国产精品精品国产色婷婷 | 国内老熟妇对白xxxxhd | 成人一区二区免费视频 | 天堂在线观看www | 熟女少妇人妻中文字幕 | 亚洲一区二区三区国产精华液 | 成人一在线视频日韩国产 | 成人免费视频在线观看 | 免费播放一区二区三区 | 精品无人区无码乱码毛片国产 | 亚洲综合久久一区二区 | 天海翼激烈高潮到腰振不止 | 国产av人人夜夜澡人人爽麻豆 | 国产精品怡红院永久免费 | 亚洲精品成人av在线 | 4hu四虎永久在线观看 | 国产成人精品视频ⅴa片软件竹菊 | 亚洲欧洲日本无在线码 | 全黄性性激高免费视频 | 97久久精品无码一区二区 | 亚洲日韩中文字幕在线播放 | 国产偷国产偷精品高清尤物 | 激情内射亚州一区二区三区爱妻 | 麻豆果冻传媒2021精品传媒一区下载 | 亚洲色无码一区二区三区 | 中文字幕无码热在线视频 | 国产小呦泬泬99精品 | 亚洲国精产品一二二线 | 国产超碰人人爽人人做人人添 | 人人妻人人澡人人爽人人精品浪潮 | 亚洲午夜福利在线观看 | 日本一卡2卡3卡四卡精品网站 | 亚洲第一网站男人都懂 | 亚洲成a人片在线观看无码 | 亚洲国产精品无码久久久久高潮 | 国产精品久久国产三级国 | 蜜臀av在线观看 在线欧美精品一区二区三区 | 麻豆精产国品 | 色一情一乱一伦 | 国产激情精品一区二区三区 | 伊在人天堂亚洲香蕉精品区 | 国产成人综合美国十次 | 亚洲一区二区三区播放 | 欧美老人巨大xxxx做受 | 曰韩无码二三区中文字幕 | 亚洲欧美中文字幕5发布 | 大地资源网第二页免费观看 | 无码人妻黑人中文字幕 | 18精品久久久无码午夜福利 | 人妻互换免费中文字幕 | 中文字幕+乱码+中文字幕一区 | 国产成人综合美国十次 | 少妇无码吹潮 | 日本乱人伦片中文三区 | 国产热a欧美热a在线视频 | 色综合久久中文娱乐网 | 人妻少妇被猛烈进入中文字幕 | 人妻尝试又大又粗久久 | 国产精品久久福利网站 | 亚洲第一无码av无码专区 | 爆乳一区二区三区无码 | 狠狠噜狠狠狠狠丁香五月 | 日日干夜夜干 | 天堂在线观看www | 国产精品欧美成人 | 97资源共享在线视频 | 中文字幕人妻无码一夲道 | 国产亚洲精品久久久久久大师 | 国产网红无码精品视频 | 成人免费视频一区二区 | 欧美高清在线精品一区 | 精品无码av一区二区三区 | 久久天天躁狠狠躁夜夜免费观看 | 免费无码av一区二区 | 精品厕所偷拍各类美女tp嘘嘘 | 97久久超碰中文字幕 | 欧美怡红院免费全部视频 | 亚洲精品久久久久中文第一幕 | 成人影院yy111111在线观看 | 伊人久久大香线蕉av一区二区 | 久久久久成人片免费观看蜜芽 | 久久亚洲中文字幕无码 | 久久五月精品中文字幕 | 欧美丰满熟妇xxxx | av无码电影一区二区三区 | 欧美性猛交xxxx富婆 | 天天摸天天碰天天添 | 蜜桃臀无码内射一区二区三区 | 精品乱子伦一区二区三区 | 久久久精品国产sm最大网站 | 精品国产青草久久久久福利 | 又黄又爽又色的视频 | 国产无遮挡又黄又爽免费视频 | 国产精品久久久久影院嫩草 | 日韩精品成人一区二区三区 | 精品aⅴ一区二区三区 | 俺去俺来也www色官网 | 久久无码专区国产精品s | 国产精品亚洲五月天高清 | 无码精品国产va在线观看dvd | 国产激情无码一区二区app | 老司机亚洲精品影院 | 亚洲中文字幕va福利 | 无码人妻av免费一区二区三区 | 亚拍精品一区二区三区探花 | 国产成人午夜福利在线播放 | 国产亚洲日韩欧美另类第八页 | 国产午夜手机精彩视频 | 男女下面进入的视频免费午夜 | 无码毛片视频一区二区本码 | 亚洲成在人网站无码天堂 | 亚洲国产精品久久久天堂 | 国产精品毛多多水多 | 午夜无码区在线观看 | 午夜男女很黄的视频 | 免费国产黄网站在线观看 | 成年美女黄网站色大免费视频 | 少妇邻居内射在线 | 久久久婷婷五月亚洲97号色 | 久久久久亚洲精品男人的天堂 | 国产成人精品一区二区在线小狼 | 久久国产精品偷任你爽任你 | 国语自产偷拍精品视频偷 | 国产另类ts人妖一区二区 | 国产精品亚洲а∨无码播放麻豆 | 国产精品久久久久久无码 | 曰韩少妇内射免费播放 | 国内精品久久毛片一区二区 | 偷窥村妇洗澡毛毛多 | 亚洲精品成人福利网站 | 国产欧美亚洲精品a | 国内精品人妻无码久久久影院 | 77777熟女视频在线观看 а天堂中文在线官网 | 日韩成人一区二区三区在线观看 | 国产精品香蕉在线观看 | 国产精品视频免费播放 | 99麻豆久久久国产精品免费 | 亚洲综合无码一区二区三区 | 欧美变态另类xxxx | 中文精品无码中文字幕无码专区 | 俄罗斯老熟妇色xxxx | 午夜精品久久久久久久 | 亚洲国产精品久久久久久 | 日韩视频 中文字幕 视频一区 | 人人妻人人澡人人爽精品欧美 | 欧美日本免费一区二区三区 | 四虎永久在线精品免费网址 | 亚洲国产成人av在线观看 | 欧美丰满熟妇xxxx性ppx人交 | 亚洲精品一区二区三区大桥未久 | 亚洲国产精品无码一区二区三区 | 久久精品国产99精品亚洲 | 又紧又大又爽精品一区二区 | 蜜桃臀无码内射一区二区三区 | 国产激情一区二区三区 | 搡女人真爽免费视频大全 | 国色天香社区在线视频 | 成人综合网亚洲伊人 | 中文字幕日韩精品一区二区三区 | 国产亚洲精品久久久久久国模美 | 久久人妻内射无码一区三区 | 丝袜 中出 制服 人妻 美腿 | 亚洲精品国产精品乱码视色 | 无码中文字幕色专区 | 久久国产精品_国产精品 | 成人无码精品1区2区3区免费看 | 中文字幕亚洲情99在线 | 狠狠色噜噜狠狠狠狠7777米奇 | 人妻体内射精一区二区三四 | 精品无码国产一区二区三区av | 精品久久久中文字幕人妻 | 清纯唯美经典一区二区 | 亚洲区欧美区综合区自拍区 | 最近中文2019字幕第二页 | 久9re热视频这里只有精品 | 亚洲日韩精品欧美一区二区 | 鲁一鲁av2019在线 | 偷窥日本少妇撒尿chinese | 日日摸天天摸爽爽狠狠97 | 亚洲欧美综合区丁香五月小说 | 国产亚洲欧美日韩亚洲中文色 | 色噜噜亚洲男人的天堂 | 麻豆av传媒蜜桃天美传媒 | 国产sm调教视频在线观看 | 在线播放免费人成毛片乱码 | 亚洲va中文字幕无码久久不卡 | 又色又爽又黄的美女裸体网站 | 俄罗斯老熟妇色xxxx | 国产亚洲日韩欧美另类第八页 | 国产成人无码一二三区视频 | 欧美激情一区二区三区成人 | 亚洲小说春色综合另类 | 亚洲精品www久久久 | 精品偷拍一区二区三区在线看 | 亚洲一区av无码专区在线观看 | аⅴ资源天堂资源库在线 | 国产超碰人人爽人人做人人添 | 六月丁香婷婷色狠狠久久 | 少妇人妻偷人精品无码视频 | 欧美日韩视频无码一区二区三 | 黑森林福利视频导航 | 国产成人人人97超碰超爽8 | 国产成人综合美国十次 | 蜜臀av无码人妻精品 | 国产精品亚洲五月天高清 | 人妻少妇被猛烈进入中文字幕 | 日产精品高潮呻吟av久久 | 性色欲网站人妻丰满中文久久不卡 | 久久精品人妻少妇一区二区三区 | 老司机亚洲精品影院 | 波多野结衣av一区二区全免费观看 | 国产成人精品视频ⅴa片软件竹菊 | 亚洲欧洲无卡二区视頻 | a片免费视频在线观看 | 成人免费视频视频在线观看 免费 | av在线亚洲欧洲日产一区二区 | 丰满人妻被黑人猛烈进入 | 精品国产一区二区三区四区 | 亚洲 激情 小说 另类 欧美 | 国产精品久久久 | 一本色道婷婷久久欧美 | 毛片内射-百度 | 熟妇女人妻丰满少妇中文字幕 | 欧美老妇与禽交 | 在教室伦流澡到高潮hnp视频 | 国产两女互慰高潮视频在线观看 | 中文亚洲成a人片在线观看 | 老熟妇仑乱视频一区二区 | 欧美xxxx黑人又粗又长 | 麻豆国产丝袜白领秘书在线观看 | 欧美日韩在线亚洲综合国产人 | 熟妇女人妻丰满少妇中文字幕 | 熟女少妇人妻中文字幕 | 亚洲综合精品香蕉久久网 | 亚洲日韩av片在线观看 | 欧美乱妇无乱码大黄a片 | 又大又硬又爽免费视频 | 亚洲国产精品无码久久久久高潮 | 午夜精品一区二区三区在线观看 | 成人欧美一区二区三区黑人 | 欧洲vodafone精品性 | 国产无套粉嫩白浆在线 | 国产精华av午夜在线观看 | 日韩人妻系列无码专区 | 巨爆乳无码视频在线观看 | 丰满人妻精品国产99aⅴ | 亚洲中文字幕无码一久久区 | 日日夜夜撸啊撸 | 亚洲欧洲无卡二区视頻 | 国产av无码专区亚洲awww | 99re在线播放 | 久久99热只有频精品8 | 国产亚洲tv在线观看 | 人妻少妇精品无码专区动漫 | 亚洲中文字幕无码一久久区 | 十八禁视频网站在线观看 | 亚洲精品鲁一鲁一区二区三区 | 伊人久久大香线蕉午夜 | 亚洲色大成网站www国产 | 曰韩无码二三区中文字幕 | 一本精品99久久精品77 | 一本久久a久久精品vr综合 | 国产精品无码mv在线观看 | 人妻无码久久精品人妻 | 国内精品久久毛片一区二区 | 伊人色综合久久天天小片 | 亚洲欧洲无卡二区视頻 | 国产精品怡红院永久免费 | 婷婷五月综合缴情在线视频 | 久在线观看福利视频 | 在线 国产 欧美 亚洲 天堂 | 国产乱码精品一品二品 | 久久视频在线观看精品 | 永久黄网站色视频免费直播 | 中文字幕无码热在线视频 | 日本一区二区三区免费播放 | 国产日产欧产精品精品app | 中文字幕无码人妻少妇免费 | 中文字幕无码日韩欧毛 | 国产亚洲视频中文字幕97精品 | 亚洲人成影院在线观看 | 好爽又高潮了毛片免费下载 | 国产精华av午夜在线观看 | 小鲜肉自慰网站xnxx | 中文字幕无码人妻少妇免费 | 国产成人无码午夜视频在线观看 | 国产亚洲欧美在线专区 | 全球成人中文在线 | 中文毛片无遮挡高清免费 | 牲欲强的熟妇农村老妇女视频 | 97无码免费人妻超级碰碰夜夜 | 色五月丁香五月综合五月 | 久久国内精品自在自线 | 欧美人妻一区二区三区 |