www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁(yè) > 物聯(lián)網(wǎng) > 區(qū)塊鏈
[導(dǎo)讀] PPIO的定位不僅僅是做存儲(chǔ),還有數(shù)據(jù)分發(fā)和數(shù)據(jù)傳輸。在數(shù)據(jù)傳輸?shù)臅r(shí)候,如何保證數(shù)據(jù)傳輸?shù)牧髁恳膊捎靡环N公正的,不可抵賴的方式來實(shí)現(xiàn)的。這就是我這篇文章要講解的狀態(tài)通道。PPIO就是通過狀態(tài)通道

PPIO的定位不僅僅是做存儲(chǔ),還有數(shù)據(jù)分發(fā)和數(shù)據(jù)傳輸。在數(shù)據(jù)傳輸?shù)臅r(shí)候,如何保證數(shù)據(jù)傳輸?shù)牧髁恳膊捎靡环N公正的,不可抵賴的方式來實(shí)現(xiàn)的。這就是我這篇文章要講解的狀態(tài)通道。PPIO就是通過狀態(tài)通道的機(jī)制來實(shí)現(xiàn)數(shù)據(jù)傳輸?shù)墓?jì)量。

傳統(tǒng)意義的狀態(tài)通道機(jī)制

狀態(tài)通道在區(qū)塊鏈領(lǐng)域是個(gè)已經(jīng)存在的名字,主要應(yīng)用于高頻交易和微支付。因?yàn)樵谶@兩個(gè)場(chǎng)景下,交易吞吐量會(huì)非常大, 如果所有的操作都是在需要共識(shí)的去中心化的鏈上操作,性能低會(huì)成為重要問題。

狀態(tài)通道的解決思路,本質(zhì)是在交易高吞吐量和驗(yàn)證者的去中心化之間做一個(gè)平衡。具體來說,就是把兩兩交易的細(xì)節(jié),放在鏈下去協(xié)商完成,當(dāng)多步交易完成后,或者交易發(fā)生爭(zhēng)議,再通過區(qū)塊鏈來進(jìn)行“仲裁”。

為了說明狀態(tài)通過,我們先做個(gè)假設(shè),兩個(gè)人 Alice 和 Bob,后面也可能簡(jiǎn)稱 A 和 B。假設(shè) Alice 在一開始的資產(chǎn)是10,Bob 在一開始的資產(chǎn)也是10,他們之間即將發(fā)生一系列高頻的微支付。我們開始模擬這個(gè)狀態(tài)通道。

圖: Alice 和 Bob 使用狀態(tài)通道交易的示意圖

整個(gè)過程大概分為以下幾步:

1. Alice 或者 Bob 創(chuàng)建于一個(gè)狀態(tài)通道智能合約 Contract,后面會(huì)簡(jiǎn)稱 C,此時(shí)狀態(tài)通道處于 opening。這個(gè)過程是要上鏈的。

2. Alice 將10個(gè)資產(chǎn)打入到合約中,接著 Bob 也將10個(gè)資產(chǎn)打入到合約之中,此時(shí)狀態(tài)通道就算是開啟,進(jìn)入 open 狀態(tài)。這個(gè)過程中也是要上鏈的。這時(shí)候的分配方案是【A:10, B:10】。(分配方式是指交易雙方都能夠在鏈下都認(rèn)可的資產(chǎn)分配方式,總量是一樣的的,要么 A 多,要么 B 多,如果這個(gè)時(shí)候合約終止,就會(huì)按照分配方案的資產(chǎn)打回到各自的賬戶上)

3. 此后,由于 A 和 B 之間的狀態(tài)通道處于 Open 的狀態(tài),A和B之間可以開始交易。如果 A 向 B 轉(zhuǎn)了1個(gè)資產(chǎn),則分配方案為【A:9; B:11;N:1】,這時(shí) B 拿到了 A 對(duì)分配狀態(tài)的簽名;而接著 B 又向 A 轉(zhuǎn)了3個(gè)資產(chǎn),這時(shí)的分配方案變?yōu)椤続:12; B:8; N:2】,這時(shí) A 拿到了 B 對(duì)分配狀態(tài)。這里 N 表示 Nonce。每次鏈下雙方按照約定改變資產(chǎn)分配,則雙方都要自增一次 Nonce 值。誠(chéng)實(shí)的交易者都會(huì)以 Nonce 最大的分配方案作為當(dāng)前的分配方案,而 Nonce 值較小的分配方案都是失效的方案,可以隨時(shí)拋棄。

4. 狀態(tài)提交,在交易的過程中,交易雙方,A 或者 B都可以隨時(shí)向智能合約 C 發(fā)起狀態(tài)提交,如果 A 發(fā)起了狀態(tài)提交,C 會(huì)驗(yàn)證 B 的簽名;反之如果 B 發(fā)起了狀態(tài)的提交,C 會(huì)驗(yàn)證 A 的簽名,同時(shí)也會(huì)驗(yàn)證 Nonce 值。智能合約 C 只接收比上次鏈上分配的 nonce 值更大的方案,如果新提交的分配方案的 Nonce 和簽名都合法,則 C 接收新的分配方案,并更新合約中的 Nonce 值為新分配方案的 Nonce 值。雙方持續(xù)交易,。.. … 直到最后的分配方案,假設(shè)是【A:1; B: 19; N:50】,下面稱為最終狀態(tài)。假設(shè)該方案已被提交到智能合約 C,且被智能合約所接受。

5. 關(guān)閉狀態(tài)通道請(qǐng)求,這時(shí)候可由任一方發(fā)起關(guān)閉狀態(tài)通道,即按照合約中的鏈上分配方案進(jìn)行分配。一旦合約 C 接收到關(guān)閉通道的請(qǐng)求,合約會(huì)進(jìn)入 Closing 狀態(tài)并維持一定的有效期,在該狀態(tài)下且在有效期內(nèi),另一方依然可以提交新的有效的分配方案來將狀態(tài)通道置回 Open 狀態(tài)。如果在有效期內(nèi)另一方未能將狀態(tài)通道置回 Open 狀態(tài),則狀態(tài)通道會(huì)在有效期過后,進(jìn)入 Closed 狀態(tài)。比如,在這個(gè)案例中,B 是受益方,一般來說,是由 B 在這時(shí)候發(fā)起關(guān)閉狀態(tài)通道請(qǐng)求,然后狀態(tài)通道進(jìn)入 Closing 狀態(tài),并在一定有效期后按照鏈上最后的有效分配方案【A:1; B: 19; N:50】進(jìn)行分配。此時(shí),若B是一個(gè)作惡者,雖然現(xiàn)在鏈上的分配方案為【A:1; B: 19; N:50】,但其實(shí)鏈下最新的分配方案已是【A:4; B: 16; N:55】,但 B 嘗試用老的分配方案來分配資產(chǎn),使自己獲益增大。此時(shí)由于合約在 Closing 狀態(tài),只要A及時(shí)發(fā)現(xiàn) B 的鏈上關(guān)閉通道請(qǐng)求的交易,則 A 可以立刻將更新的分配方案【A:4; B: 16; N:55】提交到合約,從而使得合約被置回到 Open 狀態(tài),防止 B 的惡意提款。之后 A 如果想關(guān)閉合約,則可重新向合約發(fā)起關(guān)閉狀態(tài)通道的請(qǐng)求。之后只要 B 無法再給出比 N:55 更新的分配方案,那么狀態(tài)通道最終將在有效期過后,進(jìn)入 Close 狀態(tài)。(注:具體實(shí)現(xiàn)時(shí)也可以將”狀態(tài)提交”和“關(guān)閉狀態(tài)通道請(qǐng)求”合并成一步)

6. 最終資產(chǎn)分配:當(dāng)合約 C 進(jìn)入 Closed 狀態(tài)后,任何一方都可以觸發(fā)最終的資產(chǎn)分配,即按照鏈上已確定的最后有效的分配方案進(jìn)行實(shí)際的資產(chǎn)分配。

回顧整個(gè)過程,需要寫入?yún)^(qū)塊鏈的步驟,只是和鏈上智能合約 C 相關(guān)的部分,分別是開始創(chuàng)建的時(shí)候和分配方案的提交以及最終狀態(tài)的提交。其余都是在鏈下操作,所以在狀態(tài)通道的設(shè)計(jì)中,項(xiàng)目一般設(shè)計(jì)為 只向區(qū)塊鏈智能合約 C 提交一次,從而做到最高的性能。

PPIO 的狀態(tài)通道機(jī)制的設(shè)計(jì)

· PPIO 支持三個(gè)核心模塊

POSS 是 P2P Object Storage Service,對(duì)標(biāo) AWS 的 S3 存儲(chǔ)。

· PCDN 是 P2P Content Delivery Network,對(duì)標(biāo)傳統(tǒng)的 CDN,就像 AWS 的CloudFront。

· PRoute,是基于 P2P 的自適應(yīng)網(wǎng)絡(luò)智能路由,做到兩個(gè)節(jié)點(diǎn)之間,以最合理路徑到達(dá),從而速度最快,延遲最低 。這是協(xié)議層的實(shí)現(xiàn),在 AWS 中沒有對(duì)標(biāo)的產(chǎn)品。

其中除去 POSS 模塊外,PCDN 和 PRoute 都是更多激勵(lì)帶寬的貢獻(xiàn),其網(wǎng)絡(luò)數(shù)據(jù)的傳遞非常頻繁且實(shí)時(shí)。如果每個(gè) Piece 的傳輸,都要寫入?yún)^(qū)塊鏈,這將是非常大的浪費(fèi) 。其實(shí),網(wǎng)絡(luò)數(shù)據(jù)高速傳輸激勵(lì),本質(zhì)上是高頻交易和微支付,所以在設(shè)計(jì) PPIO 的時(shí)候,我們借鑒了傳統(tǒng)的傳統(tǒng)的狀態(tài)通道機(jī)制,來實(shí)現(xiàn)帶寬的激勵(lì)。

1. U 創(chuàng)建了區(qū)塊鏈上的智能合約 Contract(后面簡(jiǎn)稱C)。然后 U 往 C 中轉(zhuǎn)入資產(chǎn),假設(shè)轉(zhuǎn)入了10個(gè)資產(chǎn)。由于 PPIO 設(shè)計(jì)的是單向通道,只有 U 轉(zhuǎn)入資產(chǎn)后,即可進(jìn)入Open 狀態(tài),其分配方案是【U:10; M:0】

2. 開始進(jìn)行數(shù)據(jù)傳輸,U 向 M 請(qǐng)求數(shù)據(jù),M 向 U 返回正確的數(shù)據(jù)后,U 會(huì)給予 M 一個(gè) Voucher,即帶有 U 簽名的新的狀態(tài)分配方案。由于網(wǎng)絡(luò)傳輸?shù)膶?shí)時(shí)性要求非常高,M 需要先給數(shù)據(jù),再拿 Voucher。此時(shí)分配方案逐步變成 了【U:9; M:1】。

3. 繼續(xù)傳輸數(shù)據(jù),狀態(tài)通道的分配方案,U 的資產(chǎn)越來越少,M 的資產(chǎn)越來越多。直到U 把之前存入狀態(tài)通道的資產(chǎn)用完,即【U:0; M:10】;

4. 最終狀態(tài)提交:此時(shí) M 用最新的 Voucher 去區(qū)塊鏈上的智能合約用 Voucher 去提款。C 在驗(yàn)證 Voucher 中有 U 的正確簽名后,接受了 M 的提款。之后狀態(tài)通道關(guān)閉,標(biāo)記為 Close 狀態(tài),之后該狀態(tài)通道不能再進(jìn)行交易。

5. 之后 U 在 M 請(qǐng)求數(shù)據(jù),由于資產(chǎn)已經(jīng)用完,M 將不再提供服務(wù)。除非 U 創(chuàng)建新的狀態(tài)通道合約 C1,再轉(zhuǎn)一定的資產(chǎn)進(jìn)去,才能再次向 M 請(qǐng)求數(shù)據(jù)。

圖:PPIO 的數(shù)據(jù)傳輸狀態(tài)通道設(shè)計(jì)

這就是 PPIO 整個(gè)狀態(tài)通道的過程。下面我們做一下簡(jiǎn)單的攻防分析。

1. 假設(shè) User 作惡,作惡方式為 U 向 M 請(qǐng)求到了數(shù)據(jù)之后,不給 Voucher。處于網(wǎng)絡(luò)性能的考慮,PPIO 的設(shè)計(jì)是 M 先給一定的數(shù)據(jù),再要 Voucher。如果 U 不給 Voucher,M 給予一定量的數(shù)據(jù)發(fā)現(xiàn)收不到 Voucher,于是將不再對(duì)該 User 給予更多的數(shù)據(jù)了,并且標(biāo)記為 U 為惡意用戶,已經(jīng)給予的部分?jǐn)?shù)據(jù)作為自己有限的損失。

2. 假設(shè) Miner 作惡,作惡方式是給予 User 錯(cuò)誤的數(shù)據(jù)。User 收到一定量的數(shù)據(jù)后,就會(huì)發(fā)現(xiàn)數(shù)據(jù)異常,于是不給予 Voucher,并向區(qū)塊鏈智能合約 C 發(fā)起關(guān)閉狀態(tài)通道,并標(biāo)記該 Miner 為惡意礦工。如果網(wǎng)絡(luò)中存在 Verifier,U 還可以向 Verifier 舉報(bào) M,之后 Verfier 會(huì)對(duì) M 重點(diǎn)驗(yàn)證,分析 M 是否還存在其他作惡。

圖:如果 User 發(fā)現(xiàn) Miner 作惡的狀態(tài)通道示意圖

采用狀態(tài)通道的方式,在交易雙方存在作惡的情況下,可能存在一方有些輕微損失。但不影響整體的設(shè)計(jì),因此,PPIO 中的帶寬激勵(lì)是不需要 Miner 做任何抵押的,這點(diǎn)和存儲(chǔ)場(chǎng)景不太一樣。

1. 存儲(chǔ)場(chǎng)景具有長(zhǎng)時(shí)性,使得 Miner 抵押成為必要。一次存儲(chǔ)少則幾天,多則數(shù)月,甚至幾年,如果在存儲(chǔ)期間 Miner 作惡,User 可能面臨文件的風(fēng)險(xiǎn),后果很嚴(yán)重,因此在存儲(chǔ)場(chǎng)景下,通過要求 Miner 抵押這一經(jīng)濟(jì)手段還迫使 Miner 誠(chéng)實(shí)可靠的為 User 提供存儲(chǔ)服務(wù)是必要的;

2. 存儲(chǔ)數(shù)據(jù)具有確定性,使得驗(yàn)證存儲(chǔ)的持久性變的可行。確定性的數(shù)據(jù)可用 Merkle樹來組織,然后利用葉子節(jié)點(diǎn)到 Merkle 根的路徑作為數(shù)據(jù)持有證明,而這種證明的驗(yàn)證,利用智能合約或者可信的第三方就可以完成。

而帶寬則不同,帶寬具有瞬時(shí)性和不確定性。帶寬傳輸相對(duì)于存儲(chǔ)來說,交易時(shí)間很短,且傳輸什么數(shù)據(jù)在傳輸前一般都不可知。這兩點(diǎn)導(dǎo)致了 User 很難在數(shù)學(xué)層面上限制 Miner 只傳輸正確的數(shù)據(jù),也就很難通過證明來約束 Miner 使得 Miner 不作惡。一旦 Miner 作惡,可信的第三方或者智能合約也無法準(zhǔn)確的判斷出到底是 Miner 真的作惡,還是 User 在陷害 Miner,因此即使 Miner 做了抵押,可信的第三方或者智能合約也不知在糾紛出現(xiàn)時(shí)如何處置該抵押。所以解決帶寬場(chǎng)景的思路和存儲(chǔ)場(chǎng)景不一樣,帶寬場(chǎng)景的思路是利用狀態(tài)通道實(shí)現(xiàn)“小步快跑”:每次都只做很小的交易,如果發(fā)現(xiàn)對(duì)方作惡,則立刻停止交易,轉(zhuǎn)而尋找新的交易者。這樣即使對(duì)方作惡,己方損失也不是很大。

講到這里,只是講解了 PPIO 里面應(yīng)用狀態(tài)通道的基本原理,在 PPIO 的一些場(chǎng)景設(shè)計(jì)中,狀態(tài)通道還有更復(fù)雜的用法,但基本原理是不變的。

Owner 角色的引入

PPIO 在設(shè)計(jì)的時(shí)候,我們還設(shè)計(jì)了一個(gè) Owner 的角色,Owner 不是一個(gè) P2P 傳輸角色,而是一個(gè)支付和結(jié)算角色。在 PCDN 架構(gòu)中,每個(gè) Peer 都需要指定一個(gè) Owner。這個(gè) Peer 產(chǎn)生的花費(fèi)由它的 Owner 來承擔(dān),而同樣該 Peer 賺取的收入也由它的 Owner 來接收。

如下圖,同一個(gè) Owner 可以對(duì)接多個(gè) Peer。

圖:Owner 和 Peer 的關(guān)系圖

這個(gè)角色可以簡(jiǎn)單理解為,在需求端就是開發(fā)者,在供給端就是礦池;它本質(zhì)就是 CoinPool。

由狀態(tài)通道升級(jí)后的數(shù)據(jù)分發(fā)合約如下圖所示

圖:PCDN 下最簡(jiǎn)單的下載流程圖

關(guān)于引入 Owner 角色的分發(fā)智能合約的描述。但其中 Peer 和 Peer,Peer 和 Miner 之間的通信本質(zhì)上還是走得狀態(tài)通道的機(jī)制。

這是最基本的 PPIO 狀態(tài)通道邏輯,另外在具體應(yīng)用場(chǎng)景中,如 PCDN 和 PRoute,還有更多的考慮。關(guān)于狀態(tài)通道在 PCDN 場(chǎng)景下應(yīng)用,具體可見文章《讓智能合約在數(shù)據(jù)分發(fā)中更智能?PPIO 的設(shè)計(jì)小巧思》。另外,我后面還會(huì)介紹,PPIO 在具體場(chǎng)景中更深入的實(shí)現(xiàn),請(qǐng)大家敬請(qǐng)期待。

效率提升與價(jià)值落地一直以來都是 PPIO 實(shí)現(xiàn)技術(shù)不斷創(chuàng)新進(jìn)步的標(biāo)尺。這一期文章,我們分享了如何基于傳統(tǒng)的狀態(tài)通道機(jī)制,完成了 PPIO 的狀態(tài)通道機(jī)制的設(shè)計(jì) ,從而實(shí)現(xiàn)數(shù)據(jù)傳輸?shù)墓?jì)量。我們又通過一個(gè)實(shí)際案例,分析了基于這樣的設(shè)計(jì), User 和 Miner 的兩個(gè)角色如何進(jìn)行有效的數(shù)據(jù)傳輸,避免雙方作惡帶來的不必要的損失。同時(shí)也解釋了,PPIO 中的帶寬激勵(lì)是不需要 Miner 做任何抵押的,這一點(diǎn)和存儲(chǔ)場(chǎng)景有本質(zhì)區(qū)別。不知看到這里,是否讓您對(duì)的 PPIO 的技術(shù)工程實(shí)現(xiàn)有了更深入的了解呢?如果您想更進(jìn)一步的和我們一起學(xué)習(xí)探索,就快來關(guān)注 PPIO 公眾號(hào),加入 PPIO 開發(fā)者社區(qū)或 Discord 群組,和我們一起創(chuàng)造精彩。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉