HOME 首頁
SERVICE 服務(wù)產(chǎn)品
XINMEITI 新媒體代運營
CASE 服務(wù)案例
NEWS 熱點資訊
ABOUT 關(guān)于我們
CONTACT 聯(lián)系我們
創(chuàng)意嶺
讓品牌有溫度、有情感
專注品牌策劃15年

    區(qū)塊鏈斷鏈丟棄(區(qū)塊鏈斷鏈丟棄怎么辦)

    發(fā)布時間:2023-04-10 17:37:26     稿源: 創(chuàng)意嶺    閱讀: 123        

    大家好!今天讓創(chuàng)意嶺的小編來大家介紹下關(guān)于區(qū)塊鏈斷鏈丟棄的問題,以下是小編對此問題的歸納整理,讓我們一起來看看吧。

    開始之前先推薦一個非常厲害的Ai人工智能工具,一鍵生成原創(chuàng)文章、方案、文案、工作計劃、工作報告、論文、代碼、作文、做題和對話答疑等等

    只需要輸入關(guān)鍵詞,就能返回你想要的內(nèi)容,越精準,寫出的就越詳細,有微信小程序端、在線網(wǎng)頁版、PC客戶端

    官網(wǎng):https://ai.de1919.com。

    創(chuàng)意嶺作為行業(yè)內(nèi)優(yōu)秀的企業(yè),服務(wù)客戶遍布全球各地,如需了解相關(guān)業(yè)務(wù)請撥打電話175-8598-2043,或添加微信:1454722008

    本文目錄:

    區(qū)塊鏈斷鏈丟棄(區(qū)塊鏈斷鏈丟棄怎么辦)

    一、區(qū)塊鏈的共識機制

    一、區(qū)塊鏈共識機制的目標

    區(qū)塊鏈是什么?簡單而言,區(qū)塊鏈是一種去中心化的數(shù)據(jù)庫,或可以叫作分布式賬本(distributed ledger)。傳統(tǒng)上所有的數(shù)據(jù)庫都是中心化的,例如一間銀行的賬本就儲存在銀行的中心服務(wù)器里。中心化數(shù)據(jù)庫的弊端是數(shù)據(jù)的安全及正確性全系于數(shù)據(jù)庫運營方(即銀行),因為任何能夠訪問中心化數(shù)據(jù)庫的人(如銀行職員或黑客)都可以破壞或修改其中的數(shù)據(jù)。

    而區(qū)塊鏈技術(shù)則容許數(shù)據(jù)庫存放在全球成千上萬的電腦上,每個人的賬本通過點對點網(wǎng)絡(luò)進行同步,網(wǎng)絡(luò)中任何用戶一旦增加一筆交易,交易信息將通過網(wǎng)絡(luò)通知其他用戶驗證,記錄到各自的賬本中。區(qū)塊鏈之所以得其名是因為它是由一個個包含交易信息的區(qū)塊(block)從后向前有序鏈接起來的數(shù)據(jù)結(jié)構(gòu)。

    很多人對區(qū)塊鏈的疑問是,如果每一個用戶都擁有一個獨立的賬本,那么是否意味著可以在自己的賬本上添加任意的交易信息,而成千上萬個賬本又如何保證記賬的一致性? 解決記賬一致性問題正是區(qū)塊鏈共識機制的目標 。區(qū)塊鏈共識機制旨在保證分布式系統(tǒng)里所有節(jié)點中的數(shù)據(jù)完全相同并且能夠?qū)δ硞€提案(proposal)(例如是一項交易紀錄)達成一致。然而分布式系統(tǒng)由于引入了多個節(jié)點,所以系統(tǒng)中會出現(xiàn)各種非常復(fù)雜的情況;隨著節(jié)點數(shù)量的增加,節(jié)點失效或故障、節(jié)點之間的網(wǎng)絡(luò)通信受到干擾甚至阻斷等就變成了常見的問題,解決分布式系統(tǒng)中的各種邊界條件和意外情況也增加了解決分布式一致性問題的難度。

    區(qū)塊鏈又可分為三種:

    公有鏈:全世界任何人都可以隨時進入系統(tǒng)中讀取數(shù)據(jù)、發(fā)送可確認交易、競爭記賬的區(qū)塊鏈。公有鏈通常被認為是“完全去中心化“的,因為沒有任何人或機構(gòu)可以控制或篡改其中數(shù)據(jù)的讀寫。公有鏈一般會通過代幣機制鼓勵參與者競爭記賬,來確保數(shù)據(jù)的安全性。

    聯(lián)盟鏈:聯(lián)盟鏈是指有若干個機構(gòu)共同參與管理的區(qū)塊鏈。每個機構(gòu)都運行著一個或多個節(jié)點,其中的數(shù)據(jù)只允許系統(tǒng)內(nèi)不同的機構(gòu)進行讀寫和發(fā)送交易,并且共同來記錄交易數(shù)據(jù)。這類區(qū)塊鏈被認為是“部分去中心化”。

    私有鏈:指其寫入權(quán)限是由某個組織和機構(gòu)控制的區(qū)塊鏈。參與節(jié)點的資格會被嚴格的限制,由于參與的節(jié)點是有限和可控的,因此私有鏈往往可以有極快的交易速度、更好的隱私保護、更低的交易成本、不容易被惡意攻擊、并且能夠做到身份認證等金融行業(yè)必須的要求。相比中心化數(shù)據(jù)庫,私有鏈能夠防止機構(gòu)內(nèi)單節(jié)點故意隱瞞或篡改數(shù)據(jù)。即使發(fā)生錯誤,也能夠迅速發(fā)現(xiàn)來源,因此許多大型金融機構(gòu)在目前更加傾向于使用私有鏈技術(shù)。

    二、區(qū)塊鏈共識機制的分類

    解決分布式一致性問題的難度催生了數(shù)種共識機制,它們各有其優(yōu)缺點,亦適用于不同的環(huán)境及問題。被眾人常識的共識機制有:

    l PoW(Proof of Work)工作量證明機制

    l PoS(Proof of Stake)股權(quán)/權(quán)益證明機制

    l DPoS(Delegated Proof of Stake)股份授權(quán)證明機制

    l PBFT(Practical Byzantine Fault Tolerance)實用拜占庭容錯算法

    l DBFT(Delegated Byzantine Fault Tolerance)授權(quán)拜占庭容錯算法

    l SCP (Stellar Consensus Protocol ) 恒星共識協(xié)議

    l RPCA(Ripple Protocol Consensus Algorithm)Ripple共識算法

    l Pool驗證池共識機制

    (一)PoW(Proof of Work)工作量證明機制

    1. 基本介紹

    在該機制中,網(wǎng)絡(luò)上的每一個節(jié)點都在使用SHA256哈希函數(shù)(hash function) 運算一個不斷變化的區(qū)塊頭的哈希值 (hash sum)。 共識要求算出的值必須等于或小于某個給定的值。 在分布式網(wǎng)絡(luò)中,所有的參與者都需要使用不同的隨機數(shù)來持續(xù)計算該哈希值,直至達到目標為止。當一個節(jié)點的算出確切的值,其他所有的節(jié)點必須相互確認該值的正確性。之后新區(qū)塊中的交易將被驗證以防欺詐。

    在比特幣中,以上運算哈希值的節(jié)點被稱作“礦工”,而PoW的過程被稱為“挖礦”。挖礦是一個耗時的過程,所以也提出了相應(yīng)的激勵機制(例如向礦工授予一小部分比特幣)。PoW的優(yōu)點是完全的去中心化,其缺點是消耗大量算力造成了的資源浪費,達成共識的周期也比較長,共識效率低下,因此其不是很適合商業(yè)使用。

    2. 加密貨幣的應(yīng)用實例

    比特幣(Bitcoin) 及萊特幣(Litecoin)。以太坊(Ethereum) 的前三個階段(Frontier前沿、Homestead家園、Metropolis大都會)皆采用PoW機制,其第四個階段 (Serenity寧靜) 將采用權(quán)益證明機制。PoW適用于公有鏈。

    PoW機制雖然已經(jīng)成功證明了其長期穩(wěn)定和相對公平,但在現(xiàn)有框架下,采用PoW的“挖礦”形式,將消耗大量的能源。其消耗的能源只是不停的去做SHA256的運算來保證工作量公平,并沒有其他的存在意義。而目前BTC所能達到的交易效率為約5TPS(5筆/秒),以太坊目前受到單區(qū)塊GAS總額的上限,所能達到的交易頻率大約是25TPS,與平均千次每秒、峰值能達到萬次每秒處理效率的VISA和MASTERCARD相差甚遠。

    3. 簡圖理解模式

    (ps:其中A、B、C、D計算哈希值的過程即為“挖礦”,為了犒勞時間成本的付出,機制會以一定數(shù)量的比特幣作為激勵。)

    (Ps:PoS模式下,你的“挖礦”收益正比于你的幣齡(幣的數(shù)量*天數(shù)),而與電腦的計算性能無關(guān)。我們可以認為任何具有概率性事件的累計都是工作量證明,如淘金。假設(shè)礦石含金量為p% 質(zhì)量, 當你得到一定量黃金時,我們可以認為你一定挖掘了1/p 質(zhì)量的礦石。而且得到的黃金數(shù)量越多,這個證明越可靠。)

    (二)PoS(Proof of Stake)股權(quán)/權(quán)益證明機制

    1.基本介紹

    PoS要求人們證明貨幣數(shù)量的所有權(quán),其相信擁有貨幣數(shù)量多的人攻擊網(wǎng)絡(luò)的可能性低?;谫~戶余額的選擇是非常不公平的,因為單一最富有的人勢必在網(wǎng)絡(luò)中占主導(dǎo)地位,所以提出了許多解決方案。

    在股權(quán)證明機制中,每當創(chuàng)建一個區(qū)塊時,礦工需要創(chuàng)建一個稱為“幣權(quán)”的交易,這個交易會按照一定比例預(yù)先將一些幣發(fā)給礦工。然后股權(quán)證明機制根據(jù)每個節(jié)點持有代幣的比例和時間(幣齡), 依據(jù)算法等比例地降低節(jié)點的挖礦難度,以加快節(jié)點尋找隨機數(shù)的速度,縮短達成共識所需的時間。

    與PoW相比,PoS可以節(jié)省更多的能源,更有效率。但是由于挖礦成本接近于0,因此可能會遭受攻擊。且PoS在本質(zhì)上仍然需要網(wǎng)絡(luò)中的節(jié)點進行挖礦運算,所以它同樣難以應(yīng)用于商業(yè)領(lǐng)域。

    2.數(shù)字貨幣的應(yīng)用實例

    PoS機制下較為成熟的數(shù)字貨幣是點點幣(Peercoin)和未來幣(NXT),相比于PoW,PoS機制節(jié)省了能源,引入了" 幣天 "這個概念來參與隨機運算。PoS機制能夠讓更多的持幣人參與到記賬這個工作中去,而不需要額外購買設(shè)備(礦機、顯卡等)。每個單位代幣的運算能力與其持有的時間長成正相關(guān),即持有人持有的代幣數(shù)量越多、時間越長,其所能簽署、生產(chǎn)下一個區(qū)塊的概率越大。一旦其簽署了下一個區(qū)塊,持幣人持有的幣天即清零,重新進入新的循環(huán)。

    PoS適用于公有鏈。

    3.區(qū)塊簽署人的產(chǎn)生方式

    在PoS機制下,因為區(qū)塊的簽署人由隨機產(chǎn)生,則一些持幣人會長期、大額持有代幣以獲得更大概率地產(chǎn)生區(qū)塊,盡可能多的去清零他的"幣天"。因此整個網(wǎng)絡(luò)中的流通代幣會減少,從而不利于代幣在鏈上的流通,價格也更容易受到波動。由于可能會存在少量大戶持有整個網(wǎng)絡(luò)中大多數(shù)代幣的情況,整個網(wǎng)絡(luò)有可能會隨著運行時間的增長而越來越趨向于中心化。相對于PoW而言,PoS機制下作惡的成本很低,因此對于分叉或是雙重支付的攻擊,需要更多的機制來保證共識。穩(wěn)定情況下,每秒大約能產(chǎn)生12筆交易,但因為網(wǎng)絡(luò)延遲及共識問題,需要約60秒才能完整廣播共識區(qū)塊。長期來看,生成區(qū)塊(即清零"幣天")的速度遠低于網(wǎng)絡(luò)傳播和廣播的速度,因此在PoS機制下需要對生成區(qū)塊進行"限速",來保證主網(wǎng)的穩(wěn)定運行。

    4.簡圖理解模式

    (PS:擁有越多“股份”權(quán)益的人越容易獲取賬權(quán)。是指獲得多少貨幣,取決于你挖礦貢獻的工作量,電腦性能越好,分給你的礦就會越多。)

    (在純POS體系中,如NXT,沒有挖礦過程,初始的股權(quán)分配已經(jīng)固定,之后只是股權(quán)在交易者之中流轉(zhuǎn),非常類似于現(xiàn)實世界的股票。)

    (三)DPoS(Delegated Proof of Stake)股份授權(quán)證明機制

    1.基本介紹

    由于PoS的種種弊端,由此比特股首創(chuàng)的權(quán)益代表證明機制 DPoS(Delegated Proof of Stake)應(yīng)運而生。DPoS 機制中的核心的要素是選舉,每個系統(tǒng)原生代幣的持有者在區(qū)塊鏈里面都可以參與選舉,所持有的代幣余額即為投票權(quán)重。通過投票,股東可以選舉出理事會成員,也可以就關(guān)系平臺發(fā)展方向的議題表明態(tài)度,這一切構(gòu)成了社區(qū)自治的基礎(chǔ)。股東除了自己投票參與選舉外,還可以通過將自己的選舉票數(shù)授權(quán)給自己信任的其它賬戶來代表自己投票。

    具體來說, DPoS由比特股(Bitshares)項目組發(fā)明。股權(quán)擁有著選舉他們的代表來進行區(qū)塊的生成和驗證。DPoS類似于現(xiàn)代企業(yè)董事會制度,比特股系統(tǒng)將代幣持有者稱為股東,由股東投票選出101名代表, 然后由這些代表負責生成和驗證區(qū)塊。 持幣者若想稱為一名代表,需先用自己的公鑰去區(qū)塊鏈注冊,獲得一個長度為32位的特有身份標識符,股東可以對這個標識符以交易的形式進行投票,得票數(shù)前101位被選為代表。

    代表們輪流產(chǎn)生區(qū)塊,收益(交易手續(xù)費)平分。DPoS的優(yōu)點在于大幅減少了參與區(qū)塊驗證和記賬的節(jié)點數(shù)量,從而縮短了共識驗證所需要的時間,大幅提高了交易效率。從某種角度來說,DPoS可以理解為多中心系統(tǒng),兼具去中心化和中心化優(yōu)勢。優(yōu)點:大幅縮小參與驗證和記賬節(jié)點的數(shù)量,可以達到秒級的共識驗證。缺點:投票積極性不高,絕大部分代幣持有者未參與投票;另整個共識機制還是依賴于代幣,很多商業(yè)應(yīng)用是不需要代幣存在的。

    DPoS機制要求在產(chǎn)生下一個區(qū)塊之前,必須驗證上一個區(qū)塊已經(jīng)被受信任節(jié)點所簽署。相比于PoS的" 全民挖礦 ",DPoS則是利用類似" 代表大會 "的制度來直接選取可信任節(jié)點,由這些可信任節(jié)點(即見證人)來代替其他持幣人行使權(quán)力,見證人節(jié)點要求長期在線,從而解決了因為PoS簽署區(qū)塊人不是經(jīng)常在線而可能導(dǎo)致的產(chǎn)塊延誤等一系列問題。 DPoS機制通常能達到萬次每秒的交易速度,在網(wǎng)絡(luò)延遲低的情況下可以達到十萬秒級別,非常適合企業(yè)級的應(yīng)用。 因為公信寶數(shù)據(jù)交易所對于數(shù)據(jù)交易頻率要求高,更要求長期穩(wěn)定性,因此DPoS是非常不錯的選擇。

    2. 股份授權(quán)證明機制下的機構(gòu)與系統(tǒng)

    理事會是區(qū)塊鏈網(wǎng)絡(luò)的權(quán)力機構(gòu),理事會的人選由系統(tǒng)股東(即持幣人)選舉產(chǎn)生,理事會成員有權(quán)發(fā)起議案和對議案進行投票表決。

    理事會的重要職責之一是根據(jù)需要調(diào)整系統(tǒng)的可變參數(shù),這些參數(shù)包括:

    l 費用相關(guān):各種交易類型的費率。

    l 授權(quán)相關(guān):對接入網(wǎng)絡(luò)的第三方平臺收費及補貼相關(guān)參數(shù)。

    l 區(qū)塊生產(chǎn)相關(guān):區(qū)塊生產(chǎn)間隔時間,區(qū)塊獎勵。

    l 身份審核相關(guān):審核驗證異常機構(gòu)賬戶的信息情況。

    l 同時,關(guān)系到理事會利益的事項將不通過理事會設(shè)定。

    在Finchain系統(tǒng)中,見證人負責收集網(wǎng)絡(luò)運行時廣播出來的各種交易并打包到區(qū)塊中,其工作類似于比特幣網(wǎng)絡(luò)中的礦工,在采用 PoW(工作量證明)的比特幣網(wǎng)絡(luò)中,由一種獲獎概率取決于哈希算力的抽彩票方式來決定哪個礦工節(jié)點產(chǎn)生下一個區(qū)塊。而在采用 DPoS 機制的金融鏈網(wǎng)絡(luò)中,通過理事會投票決定見證人的數(shù)量,由持幣人投票來決定見證人人選。入選的活躍見證人按順序打包交易并生產(chǎn)區(qū)塊,在每一輪區(qū)塊生產(chǎn)之后,見證人會在隨機洗牌決定新的順序后進入下一輪的區(qū)塊生產(chǎn)。

    3. DPoS的應(yīng)用實例

    比特股(bitshares) 采用DPoS。DPoS主要適用于聯(lián)盟鏈。

    4.簡圖理解模式

    (四)PBFT(Practical Byzantine Fault Tolerance)實用拜占庭容錯算法

    1. 基本介紹

    PBFT是一種基于嚴格數(shù)學證明的算法,需要經(jīng)過三個階段的信息交互和局部共識來達成最終的一致輸出。三個階段分別為預(yù)備 (pre-prepare)、準備 (prepare)、落實 (commit)。PBFT算法證明系統(tǒng)中只要有2/3比例以上的正常節(jié)點,就能保證最終一定可以輸出一致的共識結(jié)果。換言之,在使用PBFT算法的系統(tǒng)中,至多可以容忍不超過系統(tǒng)全部節(jié)點數(shù)量1/3的失效節(jié)點 (包括有意誤導(dǎo)、故意破壞系統(tǒng)、超時、重復(fù)發(fā)送消息、偽造簽名等的節(jié)點,又稱為”拜占庭”節(jié)點)。

    2. PBFT的應(yīng)用實例

    著名聯(lián)盟鏈Hyperledger Fabric v0.6采用的是PBFT,v1.0又推出PBFT的改進版本SBFT。PBFT主要適用于私有鏈和聯(lián)盟鏈。

    3. 簡圖理解模式

    上圖顯示了一個簡化的PBFT的協(xié)議通信模式,其中C為客戶端,0 – 3表示服務(wù)節(jié)點,其中0為主節(jié)點,3為故障節(jié)點。整個協(xié)議的基本過程如下:

    (1) 客戶端發(fā)送請求,激活主節(jié)點的服務(wù)操作;

    (2) 當主節(jié)點接收請求后,啟動三階段的協(xié)議以向各從節(jié)點廣播請求;

    (a) 序號分配階段,主節(jié)點給請求賦值一個序號n,廣播序號分配消息和客戶端的請求消息m,并將構(gòu)造pre-prepare消息給各從節(jié)點;

    (b) 交互階段,從節(jié)點接收pre-prepare消息,向其他服務(wù)節(jié)點廣播prepare消息;

    (c) 序號確認階段,各節(jié)點對視圖內(nèi)的請求和次序進行驗證后,廣播commit消息,執(zhí)行收到的客戶端的請求并給客戶端響應(yīng)。

    (3) 客戶端等待來自不同節(jié)點的響應(yīng),若有m+1個響應(yīng)相同,則該響應(yīng)即為運算的結(jié)果;

    (五)DBFT(Delegated Byzantine Fault Tolerance)授權(quán)拜占庭容錯算法

    1. 基本介紹

    DBFT建基于PBFT的基礎(chǔ)上,在這個機制當中,存在兩種參與者,一種是專業(yè)記賬的“超級節(jié)點”,一種是系統(tǒng)當中不參與記賬的普通用戶。普通用戶基于持有權(quán)益的比例來投票選出超級節(jié)點,當需要通過一項共識(記賬)時,在這些超級節(jié)點中隨機推選出一名發(fā)言人擬定方案,然后由其他超級節(jié)點根據(jù)拜占庭容錯算法(見上文),即少數(shù)服從多數(shù)的原則進行表態(tài)。如果超過2/3的超級節(jié)點表示同意發(fā)言人方案,則共識達成。這個提案就成為最終發(fā)布的區(qū)塊,并且該區(qū)塊是不可逆的,所有里面的交易都是百分之百確認的。如果在一定時間內(nèi)還未達成一致的提案,或者發(fā)現(xiàn)有非法交易的話,可以由其他超級節(jié)點重新發(fā)起提案,重復(fù)投票過程,直至達成共識。

    2. DBFT的應(yīng)用實例

    國內(nèi)加密貨幣及區(qū)塊鏈平臺NEO是 DBFT算法的研發(fā)者及采用者。

    3. 簡圖理解模式

    假設(shè)系統(tǒng)中只有四個由普通用戶投票選出的超級節(jié)點,當需要通過一項共識時,系統(tǒng)就會從代表中隨機選出一名發(fā)言人擬定方案。發(fā)言人會將擬好的方案交給每位代表,每位代表先判斷發(fā)言人的計算結(jié)果與它們自身紀錄的是否一致,再與其它代表商討驗證計算結(jié)果是否正確。如果2/3的代表一致表示發(fā)言人方案的計算結(jié)果是正確的,那么方案就此通過。

    如果只有不到2/3的代表達成共識,將隨機選出一名新的發(fā)言人,再重復(fù)上述流程。這個體系旨在保護系統(tǒng)不受無法行使職能的領(lǐng)袖影響。

    上圖假設(shè)全體節(jié)點都是誠實的,達成100%共識,將對方案A(區(qū)塊)進行驗證。

    鑒于發(fā)言人是隨機選出的一名代表,因此他可能會不誠實或出現(xiàn)故障。上圖假設(shè)發(fā)言人給3名代表中的2名發(fā)送了惡意信息(方案B),同時給1名代表發(fā)送了正確信息(方案A)。

    在這種情況下該惡意信息(方案B)無法通過。中間與右邊的代表自身的計算結(jié)果與發(fā)言人發(fā)送的不一致,因此就不能驗證發(fā)言人擬定的方案,導(dǎo)致2人拒絕通過方案。左邊的代表因接收了正確信息,與自身的計算結(jié)果相符,因此能確認方案,繼而成功完成1次驗證。但本方案仍無法通過,因為不足2/3的代表達成共識。接著將隨機選出一名新發(fā)言人,重新開始共識流程。

    上圖假設(shè)發(fā)言人是誠實的,但其中1名代表出現(xiàn)了異常;右邊的代表向其他代表發(fā)送了不正確的信息(B)。

    在這種情況下發(fā)言人擬定的正確信息(A)依然可以獲得驗證,因為左邊與中間誠實的代表都可以驗證由誠實的發(fā)言人擬定的方案,達成2/3的共識。代表也可以判斷到底是發(fā)言人向右邊的節(jié)點說謊還是右邊的節(jié)點不誠實。

    (六)SCP (Stellar Consensus Protocol ) 恒星共識協(xié)議

    1. 基本介紹

    SCP 是 Stellar (一種基于互聯(lián)網(wǎng)的去中心化全球支付協(xié)議) 研發(fā)及使用的共識算法,其建基于聯(lián)邦拜占庭協(xié)議 (Federated Byzantine Agreement) 。傳統(tǒng)的非聯(lián)邦拜占庭協(xié)議(如上文的PBFT和DBFT)雖然確??梢酝ㄟ^分布式的方法達成共識,并達到拜占庭容錯 (至多可以容忍不超過系統(tǒng)全部節(jié)點數(shù)量1/3的失效節(jié)點),它是一個中心化的系統(tǒng) — 網(wǎng)絡(luò)中節(jié)點的數(shù)量和身份必須提前知曉且驗證過。而聯(lián)邦拜占庭協(xié)議的不同之處在于它能夠去中心化的同時,又可以做到拜占庭容錯。

    […]

    (七)RPCA(Ripple Protocol Consensus Algorithm)Ripple共識算法

    1. 基本介紹

    RPCA是Ripple(一種基于互聯(lián)網(wǎng)的開源支付協(xié)議,可以實現(xiàn)去中心化的貨幣兌換、支付與清算功能)研發(fā)及使用的共識算法。在 Ripple 的網(wǎng)絡(luò)中,交易由客戶端(應(yīng)用)發(fā)起,經(jīng)過追蹤節(jié)點(tracking node)或驗證節(jié)點(validating node)把交易廣播到整個網(wǎng)絡(luò)中。追蹤節(jié)點的主要功能是分發(fā)交易信息以及響應(yīng)客戶端的賬本請求。驗證節(jié)點除包含追蹤節(jié)點的所有功能外,還能夠通過共識協(xié)議,在賬本中增加新的賬本實例數(shù)據(jù)。

    Ripple 的共識達成發(fā)生在驗證節(jié)點之間,每個驗證節(jié)點都預(yù)先配置了一份可信任節(jié)點名單,稱為 UNL(Unique Node List)。在名單上的節(jié)點可對交易達成進行投票。共識過程如下:

    (1) 每個驗證節(jié)點會不斷收到從網(wǎng)絡(luò)發(fā)送過來的交易,通過與本地賬本數(shù)據(jù)驗證后,不合法的交易直接丟棄,合法的交易將匯總成交易候選集(candidate set)。交易候選集里面還包括之前共識過程無法確認而遺留下來的交易。

    (2) 每個驗證節(jié)點把自己的交易候選集作為提案發(fā)送給其他驗證節(jié)點。

    (3) 驗證節(jié)點在收到其他節(jié)點發(fā)來的提案后,如果不是來自UNL上的節(jié)點,則忽略該提案;如果是來自UNL上的節(jié)點,就會對比提案中的交易和本地的交易候選集,如果有相同的交易,該交易就獲得一票。在一定時間內(nèi),當交易獲得超過50%的票數(shù)時,則該交易進入下一輪。沒有超過50%的交易,將留待下一次共識過程去確認。

    (4) 驗證節(jié)點把超過50%票數(shù)的交易作為提案發(fā)給其他節(jié)點,同時提高所需票數(shù)的閾值到60%,重復(fù)步驟(3)、步驟(4),直到閾值達到80%。

    (5) 驗證節(jié)點把經(jīng)過80%UNL節(jié)點確認的交易正式寫入本地的賬本數(shù)據(jù)中,稱為最后關(guān)閉賬本(last closed ledger),即賬本最后(最新)的狀態(tài)。

    在Ripple的共識算法中,參與投票節(jié)點的身份是事先知道的,因此,算法的效率比PoW等匿名共識算法要高效,交易的確認時間只需幾秒鐘。這點也決定了該共識算法只適合于聯(lián)盟鏈或私有鏈。Ripple共識算法的拜占庭容錯(BFT)能力為(n-1)/5,即可以容忍整個網(wǎng)絡(luò)中20%的節(jié)點出現(xiàn)拜占庭錯誤而不影響正確的共識。

    2. 簡圖理解模式

    共識過程節(jié)點交互示意圖:

    共識算法流程:

    (八)POOL驗證池共識機制

    Pool驗證池共識機制是基于傳統(tǒng)的分布式一致性算法(Paxos和Raft)的基礎(chǔ)上開發(fā)的機制。Paxos算法是1990年提出的一種基于消息傳遞且具有高度容錯特性的一致性算法。過去, Paxos一直是分布式協(xié)議的標準,但是Paxos難于理解,更難以實現(xiàn)。Raft則是在2013年發(fā)布的一個比Paxos簡單又能實現(xiàn)Paxos所解決問題的一致性算法。Paxos和Raft達成共識的過程皆如同選舉一樣,參選者需要說服大多數(shù)選民(服務(wù)器)投票給他,一旦選定后就跟隨其操作。Paxos和Raft的區(qū)別在于選舉的具體過程不同。而Pool驗證池共識機制即是在這兩種成熟的分布式一致性算法的基礎(chǔ)上,輔之以數(shù)據(jù)驗證的機制。

    二、區(qū)塊鏈中現(xiàn)代密碼學

    1983年 - David Chaum描述的盲簽

    1997年 - Adam Back發(fā)明的HashCash(工作證明制度的一個例子)

    2001年 - Ron Rivest,Adi Shamir和Yael Tauman向加密社區(qū)提出了環(huán)簽名

    2004年 - Patrick P. Tsang和Victor K.提出使用環(huán)簽名系統(tǒng)進行投票和電子現(xiàn)金;

    2008年 - 由Satoshi Nakamoto出版的Bitcoin白皮書

    2011年 - 比特幣系統(tǒng)中的匿名分析,F(xiàn)ergal Reid和Martin Harrigan

    2012 - 目的地址比特幣匿名(CryptoNote中的一次性地址)。

    安全多方計算起源于1982年姚期智的百萬富翁問題。后來Oded Goldreich有比較細致系統(tǒng)的論述。

    姚氏百萬富翁問題是由華裔計算機科學家、圖靈獎獲得者姚啟智教授首先提出的。該問題表述為:兩個百萬富翁Alice和Bob想知道他們兩個誰更富有,但他們都不想讓對方知道自己財富的任何信息。該問題有一些實際應(yīng)用:假設(shè)Alice希望向Bob購買一些商品,但她愿意支付的最高金額為x元;Bob希望的最低賣出價為y元。Alice和Bob都非常希望知道x與y哪個大。如果x>y,他們都可以開始討價還價;如果z<y,他們就不用浪費口舌。但他們都不想告訴對方自己的出價,以免自己在討價還價中處于不利地位。

    該方案用于對兩個數(shù)進行比較,以確定哪一個較大。Alice知道一個整數(shù)i;Bob知道一個整數(shù)j, Alice與B0b希望知道究竟i>=j還是j>i,但都不想讓對方知道自己的數(shù)。為簡單起見,假設(shè)j與i的范圍為[1,100】。Bob有一個公開密鑰Eb和私有密鑰Db。

    安全多方計算(Secure Multi-Party Computation)的研究主要是針對無可信第三方的情況下, 如何安全地計算一個約定函數(shù)的問題. 安全多方計算在電子選舉、電子投票、電子拍賣、秘密共享、門限簽名等場景中有著重要的作用。

    同態(tài)加密(Homomorphic Encryption)是很久以前密碼學界就提出來的一個Open Problem。早在1978年,Ron Rivest, Leonard Adleman, 以及Michael L. Dertouzos就以銀行為應(yīng)用背景提出了這個概念[RAD78]。對,你沒有看錯,Ron Rivest和Leonard Adleman分別就是著名的RSA算法中的R和A。

    什么是同態(tài)加密?提出第一個構(gòu)造出全同態(tài)加密(Fully Homomorphic Encryption)[Gen09]的Craig Gentry給出的直觀定義最好:A way to delegate processing of your data, without giving away access to it.

    這是什么意思呢?一般的加密方案關(guān)注的都是數(shù)據(jù)存儲安全。即,我要給其他人發(fā)個加密的東西,或者要在計算機或者其他服務(wù)器上存一個東西,我要對數(shù)據(jù)進行加密后在發(fā)送或者存儲。沒有密鑰的用戶,不可能從加密結(jié)果中得到有關(guān)原始數(shù)據(jù)的任何信息。只有擁有密鑰的用戶才能夠正確解密,得到原始的內(nèi)容。我們注意到,這個過程中用戶是不能對加密結(jié)果做任何操作的,只能進行存儲、傳輸。對加密結(jié)果做任何操作,都將會導(dǎo)致錯誤的解密,甚至解密失敗。

    同態(tài)加密方案最有趣的地方在于,其關(guān)注的是數(shù)據(jù)處理安全。同態(tài)加密提供了一種對加密數(shù)據(jù)進行處理的功能。也就是說,其他人可以對加密數(shù)據(jù)進行處理,但是處理過程不會泄露任何原始內(nèi)容。同時,擁有密鑰的用戶對處理過的數(shù)據(jù)進行解密后,得到的正好是處理后的結(jié)果。

    有點抽象?我們舉個實際生活中的例子。有個叫Alice的用戶買到了一大塊金子,她想讓工人把這塊金子打造成一個項鏈。但是工人在打造的過程中有可能會偷金子啊,畢竟就是一克金子也值很多錢的說… 因此能不能有一種方法,讓工人可以對金塊進行加工(delegate processing of your data),但是不能得到任何金子(without giving away access to it)?當然有辦法啦,Alice可以這么做:Alice將金子鎖在一個密閉的盒子里面,這個盒子安裝了一個手套。工人可以帶著這個手套,對盒子內(nèi)部的金子進行處理。但是盒子是鎖著的,所以工人不僅拿不到金塊,連處理過程中掉下的任何金子都拿不到。加工完成后。Alice拿回這個盒子,把鎖打開,就得到了金子。

    這里面的對應(yīng)關(guān)系是:盒子:加密算法盒子上的鎖:用戶密鑰將金塊放在盒子里面并且用鎖鎖上:將數(shù)據(jù)用同態(tài)加密方案進行加密加工:應(yīng)用同態(tài)特性,在無法取得數(shù)據(jù)的條件下直接對加密結(jié)果進行處理開鎖:對結(jié)果進行解密,直接得到處理后的結(jié)果同態(tài)加密哪里能用?這幾年不是提了個云計算的概念嘛。同態(tài)加密幾乎就是為云計算而量身打造的!我們考慮下面的情景:一個用戶想要處理一個數(shù)據(jù),但是他的計算機計算能力較弱。這個用戶可以使用云計算的概念,讓云來幫助他進行處理而得到結(jié)果。但是如果直接將數(shù)據(jù)交給云,無法保證安全性??!于是,他可以使用同態(tài)加密,然后讓云來對加密數(shù)據(jù)進行直接處理,并將處理結(jié)果返回給他。這樣一來:用戶向云服務(wù)商付款,得到了處理的結(jié)果;云服務(wù)商掙到了費用,并在不知道用戶數(shù)據(jù)的前提下正確處理了數(shù)據(jù);

    聚合簽名由Boneh等人提出,主要是通過聚合多個簽名為一個簽名,來提高簽名與驗證的效率。要對多個用戶的數(shù)據(jù)進行簽名,聚合簽名能夠極大地降低簽名計算復(fù)雜度。CL就是聚合簽名。

    零知識證明過程有兩個參與方,一方叫證明者,一方叫驗證者。證明者掌握著某個秘密,他想讓驗證者相信他掌握著秘密,但是又不想泄漏這個秘密給驗證者。

    雙方按照一個協(xié)議,通過一系列交互,最終驗證者會得出一個明確的結(jié)論,證明者是或不掌握這個秘密。

    對于比特幣的例子,一筆轉(zhuǎn)帳交易合法與否,其實只要證明三件事:

    發(fā)送的錢屬于發(fā)送交易的人

    發(fā)送者發(fā)送的金額等于接收者收到金額

    發(fā)送者的錢確實被銷毀了

    整個證明過程中,礦工其實并不關(guān)心具體花掉了多少錢,發(fā)送者具體是誰,接受者具體是誰。礦工只關(guān)心系統(tǒng)的錢是不是守恒的。

    zcash 就是用這個思路實現(xiàn)了隱私交易。

    零知識證明的三條性質(zhì)對應(yīng):

    (1)完備性。如果證明方和驗證方都是誠實的,并遵循證明過程的每一步,進行正確的計算,那么這個證明一定是成功的,驗證方一定能夠接受證明方。

    (2)合理性。沒有人能夠假冒證明方,使這個證明成功。

    (3)零知識性。證明過程執(zhí)行完之后,驗證方只獲得了“證明方擁有這個知識”這條信息,而沒有獲得關(guān)于這個知識本身的任何一點信息。

    只有環(huán)成員,沒有管理者,不需要環(huán)成員之間的合作,簽名者利用自己的私鑰和集合中其他成員的公鑰就能獨立的進行簽名,不需要其他人的幫助,集合中的其他成員可能不知道自己被包含在了其中。

    環(huán)簽名可以被用作成一種泄露秘密的方式,例如,可以使用環(huán)形簽名來提供來自“白宮高級官員”的匿名簽名,而不會透露哪個官員簽署了該消息。 環(huán)簽名適用于此應(yīng)用程序,因為環(huán)簽名的匿名性不能被撤銷,并且因為用于環(huán)簽名的組可以被即興創(chuàng)建。

    1)密鑰生成。為環(huán)中每個成員產(chǎn)生一個密鑰對(公鑰PKi,私鑰SKi)

    2)簽名。簽名者用自己的私鑰和任意n個環(huán)成員的公鑰為消息m生成簽名a

    3)簽名驗證。簽名者根據(jù)環(huán)簽名和消息m,驗證簽名是否是環(huán)中成員所簽。如果有效就接收,如果無效就丟棄。

    群簽名的一般流程

    盲數(shù)字簽名(Blind Signature)簡稱盲簽名——是一種數(shù)字簽名的方式,在消息內(nèi)容被簽名之前,對于簽名者來說消息內(nèi)容是不可見的。1982年大衛(wèi)·喬姆首先提出了盲簽名的概念。盲簽名因為具有盲性這一特點,可以有效保護所簽署消息的具體內(nèi)容,所以在電子商務(wù)和電子選舉等領(lǐng)域有著廣泛的應(yīng)用。

    類比例子:對文件簽名就是通過在信封里放一張復(fù)寫紙,簽名者在信封上簽名時,他的簽名便透過復(fù)寫紙簽到文件上。

    所謂盲簽名,就是先將隱蔽的文件放進信封里,而除去盲因子的過程就是打開這個信封,當文件在一個信封中時,任何人不能讀它。對文件簽名就是通過在信封里放一張復(fù)寫紙,簽名者在信封上簽名時,他的簽名便透過復(fù)寫紙簽到文件上。

    一般來說,一個好的盲簽名應(yīng)該具有以下的性質(zhì):

    不可偽造性。除了簽名者本人外,任何人都不能以他的名義生成有效的盲簽名。這是一條最基本的性質(zhì)。

    不可抵賴性。簽名者一旦簽署了某個消息,他無法否認自己對消息的簽名。

    盲性。簽名者雖然對某個消息進行了簽名,但他不可能得到消息的具體內(nèi)容。

    不可跟蹤性。一旦消息的簽名公開后,簽名者不能確定自己何時簽署的這條消息。

    滿足上面幾條性質(zhì)的盲簽名,被認為是安全的。這四條性質(zhì)既是我們設(shè)計盲簽名所應(yīng)遵循的標準,又是我們判斷盲簽名性能優(yōu)劣的根據(jù)。

    另外,方案的可操作性和實現(xiàn)的效率也是我們設(shè)計盲簽名時必須考慮的重要

    因素。一個盲簽名的可操作性和實現(xiàn)速度取決于以下幾個方面:

    1,密鑰的長度;

    2,盲簽名的長度;

    3,盲簽名的算法和驗證算法。

    盲簽名具體步驟

    1,接收者首先將待簽數(shù)據(jù)進行盲變換,把變換后的盲數(shù)據(jù)發(fā)給簽名者。

    2,經(jīng)簽名者簽名后再發(fā)給接收者。

    3,接收者對簽名再作去盲變換,得出的便是簽名者對原數(shù)據(jù)的盲簽名。

    4,這樣便滿足了條件①。要滿足條件②,必須使簽名者事后看到盲簽名時不能與盲數(shù)據(jù)聯(lián)系起來,這通常是依靠某種協(xié)議來實現(xiàn)的。

    三、POA(Proof of Activity)區(qū)塊鏈共識算法

    POA(Proof of Activity)算法是一個區(qū)塊鏈的共識算法,基本原理是結(jié)合POW(Proof of work)和POS(Proof of stake)算法的特點進行工作,POW算法和POS算法的具體內(nèi)容可以參考:

    POW算法 : https://www.jianshu.com/p/b23cbafbbad2

    POS算法 : https://blog.csdn.net/wgwgnihao/article/details/80635162

    POA算法相比于其他算法可以改進網(wǎng)絡(luò)拓撲,維持在線節(jié)點比例,需求更少的交易費同時減少共識算法過程中的能量損耗。

    POA算法需求的網(wǎng)絡(luò)中同樣包含兩類節(jié)點,礦工和普通參與者,其中普通參與者不一定一直保持在線。POA算法首先由礦工構(gòu)造區(qū)塊頭,由塊頭選出N個幣,這N個幣的所有者參與后續(xù)的校驗和生成塊的過程。

    從這里可以看到POA算法不僅與算力有關(guān),后續(xù)的N個參與者的選舉則完全由參與者在網(wǎng)絡(luò)中所擁有的幣的總數(shù)量決定。擁有越多幣的參與者越有機會被選為N個后續(xù)的參與者。而后續(xù)N個參與者參與的必要條件是這N個參與者必須在線,這也是POA命名的由來,POA算法的維護取決于網(wǎng)絡(luò)中的活躍節(jié)點(Active)。

    POA算法的一個理想的基本流程是,類似于POW協(xié)議,礦工構(gòu)造出一個符合難度要求的塊頭,通過礦工得到的塊頭計算衍生出N個幣的編號,從區(qū)塊鏈中追溯可以得到這幾個幣目前所述的參與者。礦工將這個塊頭發(fā)送給這N個參與者,其中前N-1個參與者對這個塊進行校驗和簽名,最后第N個參與者校驗并將交易加入到該塊中,將這個區(qū)塊發(fā)布出去,即完成一個區(qū)塊的出塊。

    一個理想過程如下圖所示:

    在實際運行中,無法保證網(wǎng)絡(luò)上所有參與者都在線,而不在線的參與者則無法進行校驗和簽名,這個無法被校驗和簽名的塊頭則會被廢棄。

    即在實際運行中,應(yīng)該是一個礦工構(gòu)造出塊頭后廣播給各個參與者簽名,同時繼續(xù)重新構(gòu)造新的塊頭,以免上一個塊頭衍生的N個參與者存在有某一個沒有在線,而導(dǎo)致塊頭被廢棄。

    因此,在這種情況下,一個塊是否被確認不僅與礦工的計算能力有關(guān)同時也與網(wǎng)絡(luò)上的在線比例有關(guān)。

    與純POW相比,在與比特幣(POW)同樣10分鐘出一個塊的情況下,POA由于會有參與者不在線而產(chǎn)生的損耗,因此,10分鐘內(nèi)礦工可以構(gòu)造的塊的數(shù)量會更多,即塊頭的難度限制會降低,那么礦工在挖礦過程中會造成的能量損耗也會降低。

    與純POS相比,可以看到POA的出塊流程并不會將構(gòu)造區(qū)塊過程中的相關(guān)信息上鏈,可以明顯減少區(qū)塊鏈上用于維護協(xié)議產(chǎn)生的冗余信息的量。

    本節(jié)對上訴協(xié)議中一些參數(shù)設(shè)置進行分析

    在礦工構(gòu)造出塊頭后對塊頭進行校驗和區(qū)塊構(gòu)造的N個參與者的數(shù)量選定比較類似于比特幣中每一個塊的出塊時間的選取。比特幣中選擇了10分鐘作為每一個塊的期望出塊時間并通過動態(tài)調(diào)節(jié)難度來適應(yīng)。

    這里N的取值同樣可以選擇選定值或者動態(tài)調(diào)節(jié)。動態(tài)調(diào)節(jié)需要更加復(fù)雜的協(xié)議內(nèi)容,同時可能會帶來區(qū)塊鏈的數(shù)據(jù)膨脹,而復(fù)雜的協(xié)議也增加了攻擊者攻擊的可能性。另外暫時沒有辦法證明動態(tài)調(diào)節(jié)可以帶來什么好處。靜態(tài)調(diào)節(jié)在后續(xù)的分析(4 安全分析)中可以得到N=3的取值是比較合適的。

    從上面的描述可以看到,構(gòu)造新的區(qū)塊的除了礦工還有從塊頭中衍生出來的N個幣所有者。在構(gòu)造出一個新的區(qū)塊后,這些參與者同樣應(yīng)該收到一定的激勵,以維持參與者保持在線狀態(tài)。

    礦工與參與者之間的非配比例與參與者的在線狀態(tài)相關(guān)。給予參與者的激勵與參與者保持在線狀態(tài)的熱情密切相關(guān),越多參與者保持在線狀態(tài),能更好地維持網(wǎng)絡(luò)的穩(wěn)定。因此,可以在網(wǎng)絡(luò)上在線參與者不夠多的時候,提高參與者得到的激勵分成比例,從而激發(fā)更多的參與者上線。

    如何確定當前參與者的在線情況呢?可以最后第N個參與者構(gòu)造區(qū)塊時,將構(gòu)造出來但是被廢棄的塊頭加入到區(qū)塊中,如果被丟棄的塊頭數(shù)量過多,說明在線人數(shù)過低,應(yīng)當調(diào)節(jié)分成比例。

    同時最后第N個參與者與其他參與者的分成同樣需要考慮,第N個參與者需要將交易加入?yún)^(qū)塊中,即需要維護UTXO池,同時第N個參與者還需要將被丟棄的塊頭加入新構(gòu)建的區(qū)塊中。

    為了激勵其將廢棄區(qū)塊頭加入新構(gòu)建的區(qū)塊中,可以按照加入的區(qū)塊頭,適當增加一點小的激勵。雖然加入更多的區(qū)塊頭,可以在下一輪的時候增加分成的比例,應(yīng)當足夠激勵參與者往區(qū)塊中加入未使用的塊頭了(這里參與者不可能為了增加分成而更多地加入?yún)^(qū)塊頭,每一個區(qū)塊頭都意味著一位礦工的工作量)。

    一個參與者如果沒有維護UTXO池則無法構(gòu)造區(qū)塊,但是可以參與前N-1個的簽名,因此為了激勵參與者維護UTXO池,作為最后一個構(gòu)造區(qū)塊的參與者,必須給予更多的激勵,比如是其他參與者的兩倍。

    從3.2的描述中可以知道一個用戶必須在線且維護UTXO池才可能盡可能地獲得利益。這種機制勢必會導(dǎo)致一些用戶將自己的賬戶托管給一個中心化的機構(gòu)。這個機構(gòu)一直保持在線,并為用戶維護其賬戶,在被選為構(gòu)造區(qū)塊的參與者時參與區(qū)塊的構(gòu)建并獲取利益。最后該機構(gòu)將收益按照某種形式進行分成。

    上面說到參與者必須用自己的密鑰進行簽名,而托管給某個機構(gòu)后,這個機構(gòu)在可以用這個密鑰簽名構(gòu)造區(qū)塊的同時,也有可能使用這個密鑰消費用戶的財產(chǎn)。這里可以采用一種有限花銷的密鑰,這個密鑰有兩個功能,一個是將賬戶中的部分財產(chǎn)消費出去,另一個是將所有財產(chǎn)轉(zhuǎn)移到一個指定賬戶。在托管的時候可以使用這個密鑰,在被通知部分財產(chǎn)被花費后可以立即將所有財產(chǎn)轉(zhuǎn)移到自己的另一個賬戶下,以保證財產(chǎn)的安全。

    從上面的分析可以看到,POA的安全性與攻擊者所擁有的算力和攻擊者所擁有的股權(quán)有關(guān)。假設(shè)攻擊者擁有的在線股權(quán)占比為 ,則攻擊者的算力需要達到其他所有算力的 倍才能達成分叉。假設(shè)攻擊者股權(quán)總占比為 ,網(wǎng)絡(luò)中誠實用戶的在線比例為 ,則攻擊者的算力需要達到其他所有算力的 倍才能達成攻擊。

    攻擊的分析表格如下:

    從上文的分析可以看到,POA算法相比于其他算法可以改進網(wǎng)絡(luò)拓撲,維持在線節(jié)點比例,需求更少的交易費同時減少共識算法過程中的能量損耗。同時,PoA協(xié)議的攻擊成本要高于比特幣的純PoW協(xié)議。

    參考文獻:Proof of Activity: Extending Bitcoin’s Proof of Work via Proof of Stake

    四、糧食類原料烹飪初加工時應(yīng)注意哪些問題?

    1)盡量減少淘米次數(shù),一般不應(yīng)該3次,淘米也不宜用力搓。淘米應(yīng)用 涼水,侵泡時間不宜過長。

    (2)不要吃“撈飯”即在米煮到半熟后撈出再蒸,扔掉溶于米湯中大量B 族維生素。做米飯應(yīng)采用蒸,煮的方法,如做撈飯,米湯也應(yīng)當飲用。

    (3)烹煮時不要加堿。因為堿容易加速維生素C及B族維生素的破壞。一 般在制作面食時,蒸、烤、烙的方法帶來的B簇維生素的損失較小,但用高溫油炸時損失較大。

    以上就是關(guān)于區(qū)塊鏈斷鏈丟棄相關(guān)問題的回答。希望能幫到你,如有更多相關(guān)問題,您也可以聯(lián)系我們的客服進行咨詢,客服也會為您講解更多精彩的知識和內(nèi)容。


    推薦閱讀:

    百度旗下的區(qū)塊鏈應(yīng)用(百度旗下的區(qū)塊鏈應(yīng)用有)

    杭州萍水街屬于哪個區(qū)(杭州萍水街屬于哪個區(qū)塊)

    景觀設(shè)計中如何劃分區(qū)塊(景觀設(shè)計中如何劃分區(qū)塊類型)

    杭州綜合頻道直播在線(杭州綜合頻道直播在線播放)

    年會感謝老板的文案(年會感謝老板的文案簡短)