嚴(yán)格來(lái)講借跪,Tangle(中文翻譯為“纏結(jié)”)并不屬于區(qū)塊鏈技術(shù)。Tangle系統(tǒng)沒(méi)有礦工將交易打包成區(qū)塊酌壕,而且Tangle的網(wǎng)絡(luò)也不是鏈?zhǔn)浇Y(jié)構(gòu)掏愁,而是由一個(gè)個(gè)交易組成的DAG(DirectedAcyclic Graph,定向非循環(huán)圖)結(jié)構(gòu)卵牍。之所以將Tangle作為一種和PoW果港、PoS、DPoS等并列的共識(shí)機(jī)制來(lái)談辽慕,主要是因?yàn)門angle也是一種重要的京腥,實(shí)現(xiàn)去中心化的,分布式賬本結(jié)構(gòu)的技術(shù)溅蛉。業(yè)內(nèi)比較知名的,采用Tangle技術(shù)的加密貨幣有IOTA和Byteball他宛。
Tangle是通過(guò)什么樣的方式來(lái)達(dá)成共識(shí)的呢船侧?下面以IOTA為例來(lái)簡(jiǎn)要概述。
如上面IOTA定向非循環(huán)圖所示厅各,一個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)要發(fā)起一筆新的交易時(shí)镜撩,需要在Tangle中找2筆合法的歷史交易(IOTA官方推薦采用馬爾可夫蒙特卡洛(MCMC)隨機(jī)游走的方法),并且將自己新發(fā)起的交易指向這兩筆交易。通過(guò)這種方式袁梗,整個(gè)Tangle網(wǎng)絡(luò)不斷向右擴(kuò)展開(kāi)來(lái)宜鸯。
基于這樣的設(shè)計(jì),IOTA中每筆交易通過(guò)指向2筆歷史交易遮怜,直接驗(yàn)證了這兩筆歷史交易淋袖,并且間接驗(yàn)證了這兩筆歷史交易直接和間接指向的更早的交易。
Tangle中的交易分為3類別锯梁,一類是已經(jīng)達(dá)成共識(shí)的交易即碗,另一類是還沒(méi)有達(dá)成共識(shí)的交易,最后一類是末梢交易(tips)陌凳。上圖是IOTA一個(gè)理想情況下的tangle剥懒。綠色的表示已經(jīng)達(dá)成共識(shí)的交易,其特點(diǎn)是所有的末梢交易都直接或間接指向其中任意一個(gè)交易合敦。紅色的表示待確認(rèn)的交易初橘,其特點(diǎn)是只有部分末梢交易直接或間接指向這些交易〕涞海灰色的表示末梢交易壁却。
實(shí)際的情況要復(fù)雜很多,即使等待足夠長(zhǎng)的時(shí)間裸准,也很難保證所有的末梢節(jié)點(diǎn)都指向待確認(rèn)的交易展东,所以實(shí)際上一般使用交易確認(rèn)度(confirmationlevel)來(lái)確認(rèn)交易。不同的場(chǎng)景不同的金額可以靈活采用不同的交易確認(rèn)度炒俱。大部分情況下51%就達(dá)到了理想的交易確認(rèn)度盐肃,對(duì)于一些大額的交易,你可能希望達(dá)到90%甚至更高的的交易確認(rèn)度权悟。
IOTA關(guān)于Tangle的一些技術(shù)細(xì)節(jié)可以進(jìn)一步參考:IOTA簡(jiǎn)介以及改進(jìn)方案?和?Primer on IOTA砸王。
Byteball在Tangle的實(shí)現(xiàn)上和IOTA類似,技術(shù)上主要區(qū)別在于:
1峦阁, [endif]Byteball每筆交易可以指向一個(gè)或多個(gè)歷史交易谦铃,IOTA固定指向兩筆歷史交易。
2榔昔, [endif]IOTA每筆交易需要做少量的PoW來(lái)防止DoS和Sybil攻擊驹闰,而B(niǎo)yteball沒(méi)有使用PoW或PoS。相應(yīng)的IOTA沒(méi)有交易費(fèi)用撒会,而B(niǎo)yteball的設(shè)計(jì)上加入了交易費(fèi)用嘹朗。
3, [endif]ByteballTangle共識(shí)算法引入了12個(gè)見(jiàn)證人(Witness)诵肛。見(jiàn)證人通過(guò)產(chǎn)生序列化的交易屹培,來(lái)生成DAG中的主鏈。Byteball的理論確認(rèn)時(shí)間是30秒。(參考:Byteball whitepaper)
從這點(diǎn)我們可以看出褪秀,Byteball和EoS類似蓄诽,也是通過(guò)犧牲一定程度的去中心化,來(lái)保證系統(tǒng)的安全和性能媒吗。
4仑氛, [endif]而IOTA的理論確認(rèn)時(shí)間依賴于網(wǎng)絡(luò)的交易狀況,理論上蝴猪,交易量越大调衰、交易越活躍,交易被確認(rèn)的時(shí)間就越短自阱。
雖然IOTA理論上可以達(dá)到非常短的交易確認(rèn)時(shí)間嚎莉,但是IOTA的共識(shí)的相對(duì)比較脆弱。實(shí)際網(wǎng)絡(luò)中沛豌,隨著時(shí)間的推移趋箩,你的交易確認(rèn)度不一定一直保持上升。為了解決這個(gè)問(wèn)題加派,IOTA在目前的現(xiàn)網(wǎng)運(yùn)行中引入了協(xié)調(diào)人(coordinator)來(lái)達(dá)到交易的最終確認(rèn)(Finality)叫确。這個(gè)閉源的協(xié)調(diào)人是目前IOTA最被詬病的地方,雖然IOTA辯解后續(xù)會(huì)解決這個(gè)問(wèn)題芍锦,但目前還沒(méi)有看到解決的方法竹勉。(參考:IOTA簡(jiǎn)介以及改進(jìn)方案)
總的來(lái)說(shuō),與區(qū)塊鏈技術(shù)相比娄琉,Tangle技術(shù)的優(yōu)點(diǎn)有:無(wú)區(qū)塊大小限制次乓、易擴(kuò)容、交易越頻繁系統(tǒng)性能越優(yōu)孽水、支持的消息格式較為靈活等等票腰。但是,該技術(shù)尚未經(jīng)過(guò)較為充分的理論與實(shí)踐論證女气,到目前為止杏慰,還沒(méi)有公開(kāi)的、基于DAG技術(shù)的的學(xué)術(shù)研究成果炼鞠。同時(shí)缘滥,基于DAG技術(shù)的分布式賬本系統(tǒng)尚不成熟,例如:在IOTA中簇搅,系統(tǒng)的安全性較大程度依賴于交易頻率和協(xié)調(diào)人完域;在Byteball中,其共識(shí)算法的穩(wěn)定點(diǎn)推進(jìn)策略還在不斷的調(diào)整優(yōu)化中瘩将,同時(shí),目前Byteball系統(tǒng)的見(jiàn)證人節(jié)點(diǎn)都是預(yù)先指定的,還沒(méi)有引入見(jiàn)證人選舉機(jī)制姿现。