成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

IOTA 交易,確認(rèn)和共識

馬忠志 / 2877人閱讀

摘要:紅色交易,表示有沖突,或無效交易。這樣的交易就被認(rèn)為是完全確認(rèn),并且會被每一個新的交易再驗證,再確認(rèn)。因此,交易,,和將永遠(yuǎn)也不會成為一個完全確認(rèn)的狀態(tài)。交易,和可能然后被確認(rèn),但是交易仍然無效。如此,依照協(xié)議規(guī)定創(chuàng)建交易,并相互連接。

Tangle 初始狀態(tài)

與區(qū)塊鏈技術(shù)不同,IOTA 并不是一條有著時間序列概念,每個區(qū)塊前后相連的鏈,鏈中的每個塊包含一些交易。在 IOTA 中,每筆交易都可以其他交易連接(所謂連接,就是驗證其他交易),并且可并行發(fā)生。下面的內(nèi)容將就如何在 IOTA 中加入交易,驗證交易及其共識機(jī)制展開。

上圖是 tangle 的一個案例,下面內(nèi)容都會圍繞該圖展開。綠色交易代表已經(jīng)被網(wǎng)絡(luò)以高確定性(high certainty)地確認(rèn),藍(lán)色交易是部分確認(rèn),也就是確定性較低。灰色(以及下面的黃色)方框表示還沒有任何人驗證過的 tip (tip 有尖端,尾部的意思,比如手指尖就可以用這個詞,這里的 tip 表示 tangle 中最新的尚無人驗證的交易)。紅色交易,表示有沖突,或無效交易。

在上圖中,交易 α 并非一筆普通交易。它引用了交易 hl,由于交易 h 已經(jīng)被交易 l 引用了, α 會選擇一個 tip(l) 和 一個顯然不是 tip 的交易(h)。這么做目前似乎并沒有問題,網(wǎng)絡(luò)也允許這樣的行為。

加入一筆交易

為了向 tangle 中加入一筆新的交易,用戶必須從 tangle 中隨機(jī)挑選出兩個 tip(tip 就是尚未確認(rèn)的交易),并對兩個 tip 進(jìn)行驗證。所謂驗證,意味著用戶需要檢查 tip 的簽名,即所謂的 PoW,并確保所選的 tip 與之前的任何交易(無論是直接相關(guān)還是間接相關(guān))都沒有沖突。如果所選的 tip 是合法的,用戶就對其進(jìn)行引用,也就是加入新的交易。

如果交易既沒有被所選的 tip 直接引用,也沒有被間接引用,那么對于當(dāng)前的驗證過程來說,這些交易就是不相關(guān)的交易。對于不相關(guān)交易,會由其他人或是之后的交易來進(jìn)行驗證,并將它們加入到 tangle 中。

另一筆交易

與此同時(其實不必同時,早一點晚一點都無所謂),另一個用戶可能正在一個不同的位置加入新的交易。它選擇了 tip zy。如此一來,它就在更大的范圍上驗證了已經(jīng)驗證過的同樣交易,即 ak,mn,加上額外的一些沒有在交易 1 驗證路徑上的交易(l, o, r, t, v, yz)。

新的 Tangle 狀態(tài)

交易 12 的驗證路徑有重合之處,我們可以看到有一些交易僅被確認(rèn)一次,有些交易被確認(rèn)兩次。被當(dāng)前所有 tip 驗證和確認(rèn)的交易就被認(rèn)為是完全確認(rèn)。因此,交易 n 進(jìn)入 tangle 更深一層,現(xiàn)在變成了綠色。從現(xiàn)在開始,隨后所有連接到 1 與/或 2 或者它的孩子,將會保持再驗證和再確認(rèn)的交易狀態(tài)。

我們已經(jīng)學(xué)到了什么?

沒有人需要看到和驗證所有的交易。每個用戶僅需要選擇和驗證兩筆交易及其父交易。如此一來,他們僅驗證了 tangle 的一部分而已。當(dāng)其他用戶選擇并驗證不同的 tip 和路徑,完整 tangle 的協(xié)同驗證就出現(xiàn)了。

在某個時間點以后,一旦一筆交易在 tangle 中進(jìn)入足夠深的位置,無論從最新的 tip 中的任意一個,無論從直接或是間接路徑上它都存在。這樣的交易就被認(rèn)為是完全確認(rèn),并且會被每一個新的交易再驗證,再確認(rèn)。我們可以認(rèn)為它被所有用戶(和機(jī)器)確認(rèn),并且確定性很高。

為了對確認(rèn)進(jìn)行檢查,接收者只需要檢查交易是否被已有的所有 tip 直接或間接引用(或者通過一個確定比率,如果確定性更低的話,比如 80%,也可以接受)。這時候就不需要再驗證或是其他類似操作了。注意:可能會有上千個 tip。與其檢查每個 tip 的父節(jié)點,更可能的是選擇一個隨機(jī)樣本,并做一個統(tǒng)計評估。

注意交易 n 還沒有被確認(rèn),因為現(xiàn)在我們的 tip 比較少。下面會展示更多 tip 的場景。

確認(rèn)級別

我加入了一些新的 tip 對上例進(jìn)行了擴(kuò)展。對于每個新的 tip,它的驗證路徑都被高亮了。通過顏色,你可以清楚地看到哪些交易被多少 tip 所驗證,及其驗證等級。

一個商家可能會根據(jù)自身情況設(shè)定個性化的確認(rèn)/確定等級。如果交易速度比交易價值更重要(比如微支付或零價值支付),又或者發(fā)送方是一個朋友,一個人可能會以 75% 的確認(rèn)等級接受交易。在 75% 的確定等級(3/4 tip)下,交易 l, o, 和 t 可能也會被確認(rèn)。

傳播延遲

理論上,由于更慢的 PoW 或者傳播延遲,可能在稍后出現(xiàn)一筆慢速交易 5。鑒于我們已經(jīng)知道了交易 5,交易 n 就不會再被所有的 tip 完全確認(rèn)。但是,他們的確認(rèn)確定性(confirmation certainty)仍然很高,有 4/5 tip 確認(rèn)(實際上會有上千而不是 5 個 tip)。記住,所有一切都是為了一個高概率的確定性 -- 就像在區(qū)塊鏈里面,區(qū)塊的每次確認(rèn)就是增加了確定性的概率。

請注意,本例中的交易 5 的狀態(tài)并非從 “確認(rèn)” 轉(zhuǎn)變?yōu)?“未確認(rèn)”。它僅是從改變了數(shù)學(xué)上精確的確定性比率(比如,如果一共有 100 個 tip,從 100% 到 99%)。一旦一些隨后的交易引用了交易 15,交易 n 就會被所有的 tip 再次完全確認(rèn)。這樣小的確認(rèn)等級變化將不太可能會發(fā)生,更進(jìn)一步的交易會進(jìn)入 tangle。

請注意,100% 的確認(rèn)/確定等級無論如何都很難達(dá)到,因為總會出現(xiàn)一些無正面貢獻(xiàn)的 tip(比如,引用一些無用的交易,或是根本不遵守協(xié)議)。

雙花

想象這樣一種情況,一個用戶在 tangle 的兩個不同的地方加入了兩筆沖突的交易(wy)。對于隨后的用戶,在他們的驗證路徑上可能只有這些沖突交易里面的其中一筆(取決于他們的 tip 選擇,和一些可能的傳播時延)。比如,加入了交易 12 的用戶就不會看到?jīng)_突,并會確認(rèn)他們所選的 tip。因此,雙花就得到了第一次確認(rèn)。但是,遲早必然會發(fā)生的是,這兩筆沖突的交易會出現(xiàn)在一筆交易的驗證路徑上。比如,交易 5 就會看到?jīng)_突,繼而不會確認(rèn)選出的 tip。相反,為了確保它自身會是一筆有效的交易,它會重新選擇 tip 直到找到不沖突的交易。

依賴于 tip 的選擇和 tangle 的推進(jìn),在沖突變得逐漸清晰之前,可能會有更多的用戶在 wy 后面附加交易。取決于用戶在哪里附加最多新的交易,w 或者 y 都會在某個點確認(rèn),但是其他會被丟棄。被丟棄交易(因為它們看不到即將到來的沖突)后面的所有交易也會被丟棄。但是,這些交易并不會丟失,而是可能被任何人(但最可能是交易接收方)接受,并為了新的確認(rèn)機(jī)會再次附加到 tangle。這時,PoW 就需要重新來過,但是并不需要從發(fā)送方發(fā)送新的簽名了。

解決雙花

上面已經(jīng)說到,一個用戶嘗試將交易 5 與 tip 12 相連。由于沖突,它重新進(jìn)行選擇 tip,并且決定連接到 tip 14。另一個用戶(也可能是同一個)選擇 tip 23 連接到交易 7。雖然出現(xiàn)了多個分支,但是由于 wy 的雙花,只有一個能夠存活?;?tip 的隨機(jī)選擇(和交易的累積權(quán)重),這兩個分支的其中一個會接收更多的的子交易(獨(dú)立的,權(quán)重)直到 tangle 進(jìn)入一個狀態(tài),在這個狀態(tài)里就不可能再合法地附加任一片段。在上面的示例中,用戶可能繼續(xù)與交易 5,68 相連,但是不會連接到交易 7。因此,交易 y,2,37 將永遠(yuǎn)也不會成為一個完全確認(rèn)的狀態(tài)。

正如上面所說的,交易 y2,37 可能被再次加入 tangle 。只要他們(仍然)是有效的,就會新的機(jī)會被確認(rèn)。交易 2,37 可能然后被確認(rèn),但是交易 y 仍然無效。

離線 Tangle

tangle 能夠讓用戶在離線的情況下,仍然能夠繼續(xù)構(gòu)建交易,比如在公司內(nèi)部的局域網(wǎng),或者在斷電的情況下與鄰居繼續(xù)交互。如此,依照協(xié)議規(guī)定創(chuàng)建交易,并相互連接。

在上面的案例中,交易 12 是首先離線的一批。它們與在線 tangle(online tangle) 最后已知的 tip 相連。隨后的交易與往常一樣不斷地附加到后面。一旦有向主 tangle(main tangle) 的提交(commit),離線的子 tangle 就會通過創(chuàng)建交易 8 得到最終確定,它會將離線 tangle 與當(dāng)前在線 tangle 的 tip 進(jìn)行合并。隨后,交易 8 變?yōu)橐粋€合法的 tip,并且可供后面的在線交易進(jìn)行選擇和驗證。在線連接到交易 8 的下一個用戶,將會在他們的驗證路徑上包含所有的離線交易。

請注意,正如上文,只有當(dāng)離線交易跟其他交易一樣,被加入到主 tangle 中,離線交易才會被完全確認(rèn)。如果離線分支中的任何交易與主 tangle 沖突,交易 18 就不會被確認(rèn)。再一次的,它可能會花費(fèi)隨后幾個交易的時間,直至沖突對于主 tangle 的所有(或者大部分) tip 都可見(也就是上面所說的 “雙花”)。

原文:https://github.com/noneymous/...

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/23988.html

相關(guān)文章

  • Conflux 吐槽君:Hashgraph 是一個真正的企業(yè)級去中心化平臺嗎?

    摘要:哈希圖實際上描述了事件在八卦網(wǎng)絡(luò)中傳播的路徑。但是另一方面,這個機(jī)制也有非常嚴(yán)重的缺點共識參與者的活躍性問題。對項目的建議小建議項目也不要總拿著銀行級聯(lián)盟賬本的性能去找比特幣和以太坊等公鏈碰瓷,都不是一個賽道上有什么好比的。 親愛的好朋友們:上期小C吐了一下 IOTA。說實話,剛開始小C還有些忐忑,畢竟是小C出道的第一篇文章,文章內(nèi)容也可能會引起一些激烈的辯論。結(jié)果,有非常多的朋友給了...

    sshe 評論0 收藏0
  • Conflux 吐槽君:Hashgraph 是一個真正的企業(yè)級去中心化平臺嗎?

    摘要:哈希圖實際上描述了事件在八卦網(wǎng)絡(luò)中傳播的路徑。但是另一方面,這個機(jī)制也有非常嚴(yán)重的缺點共識參與者的活躍性問題。對項目的建議小建議項目也不要總拿著銀行級聯(lián)盟賬本的性能去找比特幣和以太坊等公鏈碰瓷,都不是一個賽道上有什么好比的。 親愛的好朋友們:上期小C吐了一下 IOTA。說實話,剛開始小C還有些忐忑,畢竟是小C出道的第一篇文章,文章內(nèi)容也可能會引起一些激烈的辯論。結(jié)果,有非常多的朋友給了...

    MudOnTire 評論0 收藏0
  • Conflux 吐槽君:Hashgraph 是一個真正的企業(yè)級去中心化平臺嗎?

    摘要:哈希圖實際上描述了事件在八卦網(wǎng)絡(luò)中傳播的路徑。但是另一方面,這個機(jī)制也有非常嚴(yán)重的缺點共識參與者的活躍性問題。對項目的建議小建議項目也不要總拿著銀行級聯(lián)盟賬本的性能去找比特幣和以太坊等公鏈碰瓷,都不是一個賽道上有什么好比的。 親愛的好朋友們:上期小C吐了一下 IOTA。說實話,剛開始小C還有些忐忑,畢竟是小C出道的第一篇文章,文章內(nèi)容也可能會引起一些激烈的辯論。結(jié)果,有非常多的朋友給了...

    The question 評論0 收藏0
  • 【超越白皮書3】DAG技術(shù)解析與實測

    摘要:有向無環(huán)圖,以下簡稱是其中的代表之一。的去中心化和可擴(kuò)展性可認(rèn)為是一體兩面的,因為基于數(shù)據(jù)結(jié)構(gòu)帶來的異步記賬特性,同時實現(xiàn)了高度的參與網(wǎng)絡(luò)節(jié)點的去中心化和交易的可擴(kuò)展性。因此,目前對于雙花問題,需要綜合考慮實際情況進(jìn)行設(shè)計。 本報告由火幣區(qū)塊鏈研究院出品,作者:袁煜明、胡智威。原文地址 相關(guān)報告: 【超越白皮書2】EOS主網(wǎng)上線前夕的實測分析與技術(shù)建議 【超越白皮書1】EOSIO程序?qū)?..

    caikeal 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<