初鏈,你變了


見證了TrueChain的迭代

本文用以介紹公鏈項(xiàng)目-初鏈的基本狀況缠导。分析論證依據(jù)來(lái)源白皮書廉羔,黃皮書,公眾號(hào)文章僻造,Github憋他。并且本文將根據(jù)區(qū)塊鏈的層級(jí)結(jié)構(gòu),從數(shù)據(jù)層髓削,網(wǎng)路層竹挡,共識(shí)層,激勵(lì)層立膛,合約層揪罕,應(yīng)用層逐一針對(duì)初鏈發(fā)展現(xiàn)狀和未來(lái)技術(shù)路線進(jìn)行解讀梯码,旨在表達(dá)的淺顯易懂。分析內(nèi)容包括:核心技術(shù)概括好啰,技術(shù)落地可行性轩娶。申明該文只作為學(xué)習(xí)指導(dǎo),不構(gòu)成任何投資建議框往。

作者視角:經(jīng)寄意蘭舟介紹罢坝,進(jìn)入社區(qū)單純?yōu)榱藬]羊毛,一開始對(duì)TrueChain一無(wú)所知搅窿,固有觀念對(duì)國(guó)內(nèi)項(xiàng)目并不看好嘁酿;伴隨著兩個(gè)月的學(xué)習(xí),親眼看見TrueChain的成長(zhǎng)男应,在技術(shù)上的突破闹司。最開始剛來(lái)的時(shí)候,主網(wǎng)沒(méi)上線沐飘,社區(qū)游桩,公眾號(hào),Github上什么都沒(méi)有耐朴,白皮書的格式都不規(guī)范借卧;到現(xiàn)在社區(qū)活躍度前列的項(xiàng)目,如今TrueChain的公眾號(hào)高產(chǎn)似母豬筛峭,完善了自己的白皮書铐刘,有了自己的黃皮書,也算是看著TrueChain長(zhǎng)大影晓,看到了團(tuán)隊(duì)做實(shí)事的誠(chéng)心镰吵。

個(gè)人成長(zhǎng):如果要評(píng)判一個(gè)事物,還請(qǐng)先真正的走近她, 了解她.

由淺入深

基本介紹

全世界公鏈數(shù)目不計(jì)其數(shù)挂签,可說(shuō)的上來(lái)的也就比特幣疤祭,以太坊,EOS等等...看圖***項(xiàng)目圖

如果我們看白皮書饵婆,除了項(xiàng)目名字不同勺馆,字母簡(jiǎn)稱不同,我們是看不上出他們本質(zhì)上是有什么區(qū)別的侨核。每一個(gè)項(xiàng)目都會(huì)說(shuō)自己是顛覆了生產(chǎn)關(guān)系草穆,打破了互聯(lián)網(wǎng)的固有規(guī)則,會(huì)落地到各行各業(yè)芹关,大家心里都很清楚续挟,最后沉淀下來(lái)的就只有兩三家,我大膽預(yù)測(cè)很可能不會(huì)超過(guò)五家紧卒。老大代表著貨幣體系的應(yīng)用侥衬,老二代表著金融體系的交易合約應(yīng)用,之后都會(huì)代表一個(gè)主流行業(yè)。

image

按照目前區(qū)塊鏈的層級(jí)劃分:數(shù)據(jù)層,網(wǎng)絡(luò)層,共識(shí)層,激勵(lì)層,合約層,應(yīng)用層.***層級(jí)圖轴总,從層級(jí)圖可看出直颅,所有項(xiàng)目都逃不出這個(gè)框架,下面三層是區(qū)塊鏈的基本組成部分怀樟。對(duì)于投資者功偿,開發(fā)者找到有競(jìng)爭(zhēng)優(yōu)勢(shì)的團(tuán)隊(duì)是最大問(wèn)題,這里面有巨大的信息不對(duì)稱往堡,我們無(wú)法花時(shí)間一個(gè)一個(gè)一去了解械荷,團(tuán)隊(duì)是不是真正的做技術(shù),這里面有時(shí)間成本虑灰。在有限的時(shí)間里吨瞎,看到一個(gè)項(xiàng)目,從層級(jí)出發(fā)是理清思路提高了不少效率穆咐。如果能在網(wǎng)絡(luò)層或者共識(shí)層或者激勵(lì)層有自己的東西颤诀,你就可以選擇繼續(xù)看下去,否則這項(xiàng)目就可以丟了对湃。知道了方法論崖叫,如何落實(shí)呢?我的方法是看黃皮書拍柒,Github代碼心傀,公眾號(hào)推送的團(tuán)隊(duì)進(jìn)度。

按照黃皮書中的介紹拆讯,初鏈團(tuán)隊(duì)在共識(shí)層和合約層走出了自己的創(chuàng)新剧包。

共識(shí)層創(chuàng)新-混合公式算法

目前在分布式系統(tǒng)中,也就是區(qū)塊鏈系統(tǒng)中往果,除了要解決一致性的基本問(wèn)題疆液,還要解決容錯(cuò)性的問(wèn)題。也就是有節(jié)點(diǎn)聯(lián)合起來(lái)故意作惡的問(wèn)題陕贮。

公鏈共識(shí)總的來(lái)說(shuō)有兩個(gè)階段堕油,第一階段:低效率的去中心化解決方案Nakamoto Pow;他們確實(shí)是顛覆性的創(chuàng)造了歷史肮之,從古老的PBFT拜占庭算法投票掉缺,上升到利用哈希算法,它具有隨機(jī)性戈擒,難記算眶明,易驗(yàn)證的特點(diǎn)。這就保證了過(guò)程的安全性筐高,可靠性搜囱。但是在這十年的發(fā)展過(guò)程中丑瞧,也暴露了一些問(wèn)題。首先產(chǎn)生了針對(duì)Hash邏輯運(yùn)算的ASIC礦機(jī)蜀肘,聯(lián)合礦池绊汹,這些產(chǎn)業(yè)都會(huì)讓區(qū)塊鏈走向中心化。綜上傳統(tǒng)的算法效率低扮宠,有中心化的風(fēng)險(xiǎn)西乖。

第二階段:委托協(xié)議階段,DPOS坛增。它雖然提高了效率获雕,但是它委員會(huì)的制度,還不能完美的體現(xiàn)去中心的優(yōu)勢(shì)收捣。

隨即有團(tuán)隊(duì)給出了第三種方案典鸡,混合公式;這可以算是一次嘗試坏晦,也正是TrueChain對(duì)混合共識(shí)算法給出了完整的定義萝玷,和方案,F(xiàn)POW昆婿。

FPOW算法地址:https://github.com/truechain/truechain-fpow

image

FPOW完成狀態(tài):根據(jù)代碼遞交程度和TrueChain公眾號(hào)的透露球碉,已經(jīng)完成Block數(shù)據(jù)結(jié)構(gòu)的更改,加入了Fruit和Record字段仓蛆,模擬了PBTFT發(fā)出交易包的行為睁冬,并將新的數(shù)據(jù)區(qū)塊打包上鏈。

// Header represents a block header in the Ethereum blockchain.
type Header struct {
    ParentHash common.Hash `json:"parentHash"       gencodec:"required"`

    PointerHash  common.Hash `json:"pointerHash"      gencodec:"required"`
    FruitsHash   common.Hash `json:"fruitSetHash"     gencodec:"required"`
    RecordHash   common.Hash
    RecordNumber *big.Int
    Fruit       bool

    UncleHash   common.Hash    `json:"sha3Uncles"       gencodec:"required"`
    Coinbase    common.Address `json:"miner"            gencodec:"required"`
    Root        common.Hash    `json:"stateRoot"        gencodec:"required"`
    TxHash      common.Hash    `json:"transactionsRoot" gencodec:"required"`
    ReceiptHash common.Hash    `json:"receiptsRoot"     gencodec:"required"`
    Bloom       Bloom          `json:"logsBloom"        gencodec:"required"`
    Difficulty  *big.Int       `json:"difficulty"       gencodec:"required"`
    Number      *big.Int       `json:"number"           gencodec:"required"`
    GasLimit    uint64         `json:"gasLimit"         gencodec:"required"`
    GasUsed     uint64         `json:"gasUsed"          gencodec:"required"`
    Time        *big.Int       `json:"timestamp"        gencodec:"required"`
    Extra       []byte         `json:"extraData"        gencodec:"required"`
    MixDigest   common.Hash    `json:"mixHash"          gencodec:"required"`
    Nonce       BlockNonce     `json:"nonce"            gencodec:"required"`
}

// field type overrides for gencodec
type headerMarshaling struct {
    Difficulty *hexutil.Big
    Number     *hexutil.Big
    GasLimit   hexutil.Uint64
    GasUsed    hexutil.Uint64
    Time       *hexutil.Big
    Extra      hexutil.Bytes
    Hash       common.Hash `json:"hash"` // adds call to Hash() in MarshalJSON
}

以上代碼就是TrueChain的底層區(qū)塊的數(shù)據(jù)結(jié)構(gòu)看疙,可以清楚看到新增了fruithash的字段

在這里我還注意到另一個(gè)有趣的地方豆拨,TrueChain用到了Gas字段,著說(shuō)明TrueChain團(tuán)隊(duì)沿用了ETH的結(jié)算方式能庆。我非常認(rèn)同這個(gè)做法施禾,GAS結(jié)算可以說(shuō)一非常聰明的設(shè)計(jì),特別適合更高級(jí)的區(qū)塊鏈架構(gòu)搁胆,GAS的使用和比特幣中的交易費(fèi)的優(yōu)勢(shì)在于:1.通過(guò)限制區(qū)塊GAS的上限來(lái)達(dá)到定義區(qū)塊內(nèi)存大小的作用弥搞。2.平衡了普通轉(zhuǎn)賬交易和復(fù)雜數(shù)據(jù)提交的費(fèi)用問(wèn)題,更加公平渠旁。

完善了選舉制度

不僅僅是在出現(xiàn)錯(cuò)誤攀例,作惡的情況下,會(huì)主動(dòng)剔除節(jié)點(diǎn)顾腊;現(xiàn)在為了加快節(jié)點(diǎn)積極性和流動(dòng)性粤铭。團(tuán)隊(duì)在原來(lái)的基礎(chǔ)上加入時(shí)長(zhǎng)變量,意味著到了固定時(shí)間杂靶,委員會(huì)的身份很更換一次梆惯,這進(jìn)一步加強(qiáng)了去中心化酱鸭,更多節(jié)點(diǎn)有了平等的權(quán)力。

image

可以看到社區(qū)相當(dāng)活躍加袋,相比于EOS只有大佬,大財(cái)團(tuán)參與節(jié)點(diǎn)競(jìng)選抱既。TrueChain在DAO社區(qū)制度的設(shè)計(jì)上優(yōu)于EOS职烧。最明顯的特征就是有更多的個(gè)人節(jié)點(diǎn)參與進(jìn)來(lái)了。這是一個(gè)社區(qū)健康良好生態(tài)的信號(hào)防泵。如果一個(gè)DAO組織的節(jié)點(diǎn)和礦工都是龐大的資本蚀之,機(jī)構(gòu),最后只會(huì)讓人擔(dān)心和失望捷泞。

image

根據(jù)我和TrueChain開發(fā)團(tuán)隊(duì)的核實(shí)足删,目前該設(shè)想正在開發(fā)狀態(tài)了。如果能實(shí)現(xiàn)那就已經(jīng)在激勵(lì)層面也就是經(jīng)濟(jì)模型層面超過(guò)了EOS锁右。

引入了數(shù)據(jù)分片和分片事物處理系統(tǒng)

根據(jù)我的理解失受,這個(gè)部分的功能和區(qū)塊時(shí)間戳有關(guān)。如果區(qū)塊記錄的不是當(dāng)前狀態(tài)的時(shí)間就是一個(gè)潛在的漏洞咏瑟。

合約層創(chuàng)新-復(fù)用了ETH的虛擬機(jī)原理TVM

TVM

如同ETH的EVM拂到。就像一臺(tái)計(jì)算機(jī)。

特別之處在于一個(gè)全節(jié)點(diǎn)會(huì)有兩個(gè)虛擬機(jī)码泞,為什么兄旬?因?yàn)镕POW算法的原因。一臺(tái)虛擬機(jī)處理PBFT共識(shí)余寥,一臺(tái)虛擬機(jī)處理POW共識(shí)领铐。

在設(shè)計(jì)之初,TrueChain團(tuán)隊(duì)有在Docker和虛擬機(jī)中選擇宋舷,最終還是選擇了虛擬機(jī)绪撵。目前來(lái)看,這個(gè)決定是正確的祝蝠,最為一條公鏈莲兢,鏈上必定將來(lái)有成百上千的只能合約。如果選擇Docker续膳,那就意味著成百上千的docker改艇,這勢(shì)必會(huì)影響性能,假設(shè)是聯(lián)盟鏈坟岔,那docker就是不二的選擇谒兄。出于當(dāng)下性能的考慮測(cè)和docker尚處在發(fā)展階段,將虛擬機(jī)最為短中期的替代產(chǎn)品的確不錯(cuò)社付。

針對(duì)以太坊的范式修改

結(jié)合目前市場(chǎng)上已有的算力承疲,TrueChain設(shè)計(jì)并改進(jìn)了FPOW邻耕,將SnailChain的協(xié)議進(jìn)行復(fù)用,具體細(xì)節(jié)包括補(bǔ)償機(jī)制燕鸽,非POW開采兄世,講實(shí)話黃皮的這一部分目前沒(méi)有看懂。

但是解決了如下問(wèn)題:

1.地址聯(lián)合挖礦

2.地址自私挖礦

3.允許亂序挖礦

愿景

夢(mèng)想是要有的啊研,不然和咸魚有什么分別御滩。改一下,不然和空氣比有什么分別党远。

作為區(qū)塊鏈的參與公民削解,我很開心能看到TrueChain的努力,TrueChain的腳踏實(shí)地沟娱。

根據(jù)白皮書里的說(shuō)明氛驮,TrueChain會(huì)最先應(yīng)用到數(shù)字廣告行業(yè)。這也是2C端非常熱門的方向济似〗梅希看好TrueChain的未來(lái)

節(jié)點(diǎn)競(jìng)選地址

最后附上節(jié)點(diǎn)競(jìng)選的細(xì)則,希望看到最后的你也能參與進(jìn)來(lái):

https://mp.weixin.qq.com/s/dPiA95KcO5YsEIDRPoX-2w

關(guān)于我

image

香港城市大學(xué) 多媒體信息碩士

只愛(ài)三件事:擼代碼砰蠢,演講磷脯,健身

現(xiàn)在最為區(qū)塊鏈社區(qū)的一份子,有如何問(wèn)題歡迎微信交流

wechat:Dinocchou

個(gè)人博客:https://rickeeyzhou.github.io/


黃皮書格式勘誤

中文黃皮書勘誤請(qǐng)及時(shí)查正:

1.中文版6.4節(jié)有錯(cuò)別字娩脾,倒數(shù)第四排赵誓,陷入個(gè)人利息的膨脹的陷進(jìn)

2.關(guān)于交易的第五章的markdown文本格式錯(cuò)誤


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市柿赊,隨后出現(xiàn)的幾起案子俩功,更是在濱河造成了極大的恐慌,老刑警劉巖碰声,帶你破解...
    沈念sama閱讀 223,002評(píng)論 6 519
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件诡蜓,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡胰挑,警方通過(guò)查閱死者的電腦和手機(jī)蔓罚,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,357評(píng)論 3 400
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)瞻颂,“玉大人豺谈,你說(shuō)我怎么就攤上這事」闭猓” “怎么了茬末?”我有些...
    開封第一講書人閱讀 169,787評(píng)論 0 365
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我丽惭,道長(zhǎng)击奶,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 60,237評(píng)論 1 300
  • 正文 為了忘掉前任责掏,我火速辦了婚禮柜砾,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘换衬。我一直安慰自己痰驱,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,237評(píng)論 6 398
  • 文/花漫 我一把揭開白布冗疮。 她就那樣靜靜地躺著萄唇,像睡著了一般檩帐。 火紅的嫁衣襯著肌膚如雪术幔。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,821評(píng)論 1 314
  • 那天湃密,我揣著相機(jī)與錄音诅挑,去河邊找鬼。 笑死泛源,一個(gè)胖子當(dāng)著我的面吹牛拔妥,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播达箍,決...
    沈念sama閱讀 41,236評(píng)論 3 424
  • 文/蒼蘭香墨 我猛地睜開眼没龙,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了缎玫?” 一聲冷哼從身側(cè)響起硬纤,我...
    開封第一講書人閱讀 40,196評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎赃磨,沒(méi)想到半個(gè)月后筝家,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,716評(píng)論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡邻辉,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,794評(píng)論 3 343
  • 正文 我和宋清朗相戀三年溪王,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片值骇。...
    茶點(diǎn)故事閱讀 40,928評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡莹菱,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出吱瘩,到底是詐尸還是另有隱情芒珠,我是刑警寧澤,帶...
    沈念sama閱讀 36,583評(píng)論 5 351
  • 正文 年R本政府宣布搅裙,位于F島的核電站皱卓,受9級(jí)特大地震影響裹芝,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜娜汁,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,264評(píng)論 3 336
  • 文/蒙蒙 一嫂易、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧掐禁,春花似錦怜械、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,755評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至蹭越,卻和暖如春障本,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背响鹃。 一陣腳步聲響...
    開封第一講書人閱讀 33,869評(píng)論 1 274
  • 我被黑心中介騙來(lái)泰國(guó)打工驾霜, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人买置。 一個(gè)月前我還...
    沈念sama閱讀 49,378評(píng)論 3 379
  • 正文 我出身青樓粪糙,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親忿项。 傳聞我的和親對(duì)象是個(gè)殘疾皇子蓉冈,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,937評(píng)論 2 361