女人荫蒂被添全过程13种图片,亚洲+欧美+在线,欧洲精品无码一区二区三区 ,在厨房拨开内裤进入毛片

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

區(qū)塊鏈2.0架構(gòu):簡(jiǎn)單介紹一下以太坊架構(gòu)

C語(yǔ)言專家集中營(yíng) ? 來(lái)源:未知 ? 作者:李倩 ? 2018-10-23 17:04 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

比特幣區(qū)塊鏈架構(gòu)主要圍繞支持虛擬貨幣的實(shí)現(xiàn),雖然它有一定的靈活性,但用來(lái)支撐虛擬貨幣以外的應(yīng)用場(chǎng)景還顯得非常局限。近年來(lái),區(qū)塊鏈逐漸引起IT業(yè)界的關(guān)注,并逐漸成為獨(dú)立于比特幣的一個(gè)平臺(tái)架構(gòu),其重要性越來(lái)越受到重視。區(qū)塊鏈2.0的概念也隨之產(chǎn)生。其核心理念是把區(qū)塊鏈作為一個(gè)可編程的分布式信用基礎(chǔ)設(shè)施,支撐智能合約應(yīng)用,以與過(guò)去比特幣區(qū)塊鏈作為一個(gè)虛擬貨幣支撐平臺(tái)區(qū)別開來(lái)。具體說(shuō)來(lái)就是,不僅僅把區(qū)塊鏈作為一個(gè)去中心化的虛擬貨幣和支付平臺(tái),而是通過(guò)增加鏈上的擴(kuò)展性功能,把區(qū)塊鏈的技術(shù)范圍擴(kuò)展到支撐一個(gè)去中心化的市場(chǎng),交易內(nèi)容可以包括房產(chǎn)的契約、權(quán)益及債務(wù)憑證、知識(shí)產(chǎn)權(quán),甚至汽車、藝術(shù)品等。

區(qū)塊鏈2.0提供一套新的協(xié)議(區(qū)塊鏈2.0協(xié)議)支撐新型的去中心化應(yīng)用。如果用互聯(lián)網(wǎng)協(xié)議來(lái)做類比,區(qū)塊鏈1.0就相當(dāng)于TCP/IP協(xié)議,而區(qū)塊鏈2.0就相當(dāng)于HTTP、SMTP和FTP等高級(jí)協(xié)議。甚至有把區(qū)塊鏈1.0比做電話,而區(qū)塊鏈2.0相當(dāng)于智能電話的比喻。在比特幣后,出現(xiàn)很多被稱為區(qū)塊鏈2.0的平臺(tái),其中,最具代表性的是以太坊平臺(tái)。下面簡(jiǎn)單介紹一下以太坊架構(gòu)。

以太坊的設(shè)計(jì)主要還是以比特幣架構(gòu)為基礎(chǔ)。前面幾章已經(jīng)介紹了以太坊的基本架構(gòu),本章不再詳細(xì)敘述,下面只對(duì)和比特幣架構(gòu)不同的幾個(gè)主要方面做重點(diǎn)討論。以太坊架構(gòu)圖3-9所示。

1.賬戶設(shè)計(jì)

比特幣沒(méi)有賬戶的概念。每個(gè)用戶的余額都是從他們?cè)趨^(qū)塊鏈上的UTXO計(jì)算出來(lái)的。以太坊則有兩種類型的賬戶:一種是外部所有賬戶(EOA),另一種是合約(Contract)賬戶。外部所有賬戶就是我們一般意義上的用戶賬戶,它由私鑰控制。合約是一種特殊的可編程賬戶,合約存在以太坊區(qū)塊鏈上,它是代碼(它的功能)和數(shù)據(jù)(它的狀態(tài))的集合。合約受代碼控制并由外部所有賬戶激活。

以太坊的設(shè)計(jì)是將區(qū)塊鏈作為一個(gè)通用的管理對(duì)象狀態(tài)轉(zhuǎn)換的去中心化平臺(tái),賬戶就是有狀態(tài)的對(duì)象。外部所有賬戶的狀態(tài)就是余額,而合約賬戶的狀態(tài)可以是余額、代碼執(zhí)行情況,以及合約的存儲(chǔ)。以太坊網(wǎng)絡(luò)的狀態(tài)就是所有賬戶的狀態(tài),該狀態(tài)由每個(gè)區(qū)塊的交易來(lái)更新,同時(shí)需在全網(wǎng)形成共識(shí)。用戶和以太坊區(qū)塊鏈的交互需要通過(guò)對(duì)賬戶的交易來(lái)實(shí)現(xiàn)。

每個(gè)以太坊的外部所有賬戶由一對(duì)密鑰定義,一個(gè)是私鑰,一個(gè)是公鑰。區(qū)塊鏈的EOA賬戶由它們的地址來(lái)做索引。取公鑰的后20位作為地址,這和比特幣的地址不一樣。每個(gè)公私鑰對(duì)被編碼存放在一個(gè)密鑰文件(Keyfile)中。密鑰文件采用JSON格式,可以用文本編輯器打開來(lái)看。密鑰文件的私鑰都是用在建立賬戶時(shí)輸入的口令來(lái)加密的。密鑰文件存在以太坊節(jié)點(diǎn)的數(shù)據(jù)目錄中的keystore子目錄中。密鑰文件需要經(jīng)常備份,否則如果失掉密鑰文件,賬戶里的以太幣也就無(wú)法找回了。

合約賬戶可以執(zhí)行圖靈完備的計(jì)算任務(wù),也可在合約賬戶之間傳遞消息,合約編譯成以太坊虛擬機(jī)字節(jié)碼(EthereumVirtual Machine Bytecode),并記錄在區(qū)塊鏈上。

外部所有賬戶可以通過(guò)發(fā)送交易到合約來(lái)實(shí)現(xiàn)對(duì)合同的調(diào)用。這需要提供幾個(gè)參數(shù),例如EOA的地址、合約的地址,以及數(shù)據(jù)。數(shù)據(jù)部分包括需要調(diào)用的合約里的方法(method)以及其傳遞的參數(shù)。這個(gè)需要用到Application Binary Interface(ABI)來(lái)作為傳遞數(shù)據(jù)的編碼和解碼的標(biāo)準(zhǔn)。關(guān)于ABI的詳細(xì)信息可以參考以太坊wiki網(wǎng)頁(yè)https://github.com/ethereum/wiki/wiki/Ethereum-Contract-ABI 。

2.區(qū)塊鏈設(shè)計(jì)

比特幣采用Merkle樹來(lái)將交易的哈希值按一定算法組成二叉樹狀結(jié)構(gòu)1,頂層節(jié)點(diǎn)的哈希值相當(dāng)于整個(gè)交易清單的指紋,可以用來(lái)校驗(yàn)交易清單。中本聰采用Merkle樹設(shè)計(jì),也是為了輕量級(jí)節(jié)點(diǎn)能通過(guò)SPV(簡(jiǎn)化支付驗(yàn)證)方式來(lái)方便地校驗(yàn)交易。SPV不用下載整個(gè)交易清單,而是只需要區(qū)塊報(bào)文頭中交易清單頂層節(jié)點(diǎn)的哈希值,以及與自身節(jié)點(diǎn)相關(guān)的交易,然后可以通過(guò)向其他節(jié)點(diǎn)查詢其他相鄰交易,就可以完成對(duì)某個(gè)交易是否包含在區(qū)塊鏈中某個(gè)區(qū)塊的驗(yàn)證。 區(qū)塊鏈的核心原理http://www.868qkl.com/shenme/9.html以太坊的區(qū)塊鏈的每個(gè)區(qū)塊不但保存著交易清單,還保存最新的狀態(tài)。以太坊作為一個(gè)通用的區(qū)塊鏈編程平臺(tái),引入了賬戶概念,由此它也帶來(lái)更為復(fù)雜的校驗(yàn)和查詢需求。例如要查詢賬戶的余額或判斷一個(gè)賬戶是否存在,光用比特幣的Merkle樹就滿足不了要求。因此以太坊采用Merkle Patricia樹來(lái)實(shí)現(xiàn)對(duì)交易和狀態(tài)的校驗(yàn)和查詢 [2] 。下面看看交易和狀態(tài)面臨的問(wèn)題。

以太坊的狀態(tài)包含一個(gè)鍵值表(key-value map),其中鍵是地址,值是賬戶里聲明的變量,包括余額、隨機(jī)數(shù)(nonce)、代碼和賬戶的存儲(chǔ)(存儲(chǔ)也以一棵樹的形式來(lái)組織)。與交易數(shù)據(jù)只能增不能改不一樣,賬戶的狀態(tài)經(jīng)常被改變,其余額、隨機(jī)數(shù)經(jīng)常變。

另外,新的賬戶也經(jīng)常被插入,鍵在存儲(chǔ)里也被經(jīng)常插入和刪除。因此Merkle樹不適合這種情況,而需要一種可以在插入、更新和刪除操作后快速計(jì)算新的樹根哈希值,而不需要重新計(jì)算整棵樹的數(shù)據(jù)結(jié)構(gòu)。同時(shí),樹的深度是有限的,即使在有攻擊者試圖通過(guò)故意發(fā)很多交易來(lái)盡量增加樹的深度的情況下,不然一個(gè)攻擊者可以通過(guò)操縱樹的深度,以使得每個(gè)更新都變得非常慢,來(lái)對(duì)平臺(tái)實(shí)施拒絕服務(wù)攻擊。

還有一個(gè)要求是樹的根哈希只是與樹的數(shù)據(jù)有關(guān),而與更新的順序無(wú)關(guān)。不同的更新順序或者甚至重新計(jì)算整個(gè)樹的根哈希值都不會(huì)改變樹的根哈希值。Patricia樹是符合這些要求的數(shù)據(jù)結(jié)構(gòu)。

簡(jiǎn)單來(lái)說(shuō),以太坊的賬戶的狀態(tài)由鍵值表(Key-Value Map)來(lái)表示,在Patricia樹里,鍵被編碼成向下訪問(wèn)樹的路徑。在以太坊的Patricia里,每個(gè)節(jié)點(diǎn)有16個(gè)子節(jié)點(diǎn),所以路徑用十六進(jìn)制來(lái)編碼。例如,鍵“dog”的十六進(jìn)制編碼是6461567,所以要訪問(wèn)鍵“dog”所對(duì)應(yīng)的值,就必須先從根節(jié)點(diǎn)開始,向下到第6個(gè)節(jié)點(diǎn),然后再由該節(jié)點(diǎn)向下到第4個(gè)節(jié)點(diǎn),以此類推,一直到最后。

在區(qū)塊鏈的區(qū)塊報(bào)文頭中,不像比特幣那樣僅僅存放一個(gè)交易清單的Merkle樹根哈希值,而是存放了3個(gè)根哈希值:一個(gè)是交易的Merkle根哈希值,另外一個(gè)是狀態(tài)的根哈希值,還有一個(gè)是收據(jù)的根哈希值。 另外一個(gè)和比特幣的不同是,以太坊的區(qū)塊鏈中的每個(gè)區(qū)塊保存區(qū)塊鏈號(hào)和區(qū)塊難度。

3.PoW機(jī)制

以太坊的PoW(工作量證明)算法叫Ethash算法(是一個(gè)經(jīng)過(guò)修改的Dagger-Hashimoto算法),該算法主要尋找一個(gè)隨機(jī)數(shù)作為輸入,使得運(yùn)算結(jié)果小于一個(gè)特定的難度門檻。PoW機(jī)制的前提是,不存在比逐個(gè)試更好的找到該隨機(jī)數(shù)的方法,同時(shí)驗(yàn)證結(jié)果必須非常方便且成本小。由于哈希運(yùn)算的結(jié)果是均勻分布(Uniform Distribution)的,所以可以保證,通常找到該隨機(jī)數(shù)的時(shí)間取決于難度門檻。這樣的話可以通過(guò)控制難度來(lái)控制在網(wǎng)絡(luò)上找到一個(gè)新區(qū)塊的時(shí)間。以太坊是通過(guò)動(dòng)態(tài)調(diào)控難度來(lái)達(dá)到平均每15s在全網(wǎng)中找到一個(gè)新區(qū)塊

的。每15s的“心跳”基本上是全網(wǎng)更新系統(tǒng)狀態(tài)的節(jié)奏,并保證當(dāng)攻擊者的計(jì)算能力不超過(guò)全網(wǎng)的計(jì)算能力的一半時(shí),攻擊者無(wú)法改寫交易記錄或進(jìn)行分叉(以便進(jìn)行雙花交易)

。這就是所謂的“51%”攻擊。網(wǎng)絡(luò)上的礦工的挖礦收入期望直接反映他們擁有的計(jì)算力,或者哈希速率在整個(gè)網(wǎng)絡(luò)中的占比。

比特幣的工作量證明機(jī)制依靠的僅僅是CPU計(jì)算難度問(wèn)題,以太坊的Ethash工作量證明機(jī)制加入內(nèi)存難度,使得它具有抵抗單憑哈希運(yùn)算優(yōu)化的ASIC挖礦機(jī)的屬性。內(nèi)存難度是通過(guò)

在算法設(shè)計(jì)中要求選擇由隨機(jī)數(shù)和區(qū)塊報(bào)文頭決定的一部分固定資源,這些資源一般是幾個(gè)GB的數(shù)據(jù),叫“有向無(wú)環(huán)圖”(DAG)。每30000個(gè)區(qū)塊后需要有一個(gè)全新的DAG。這相當(dāng)

于一個(gè)125小時(shí)的窗口,或5.2天,稱為一個(gè)epoch。這個(gè)圖需要一段時(shí)間才能生成。因?yàn)镈AG只和區(qū)塊鏈深度相關(guān),因此可以提前生成。如果沒(méi)有現(xiàn)成的,以太坊的客戶端需要等生成

了DAG后才能產(chǎn)生新的區(qū)塊。這樣的話在每個(gè)epoch轉(zhuǎn)換的時(shí)候,如果客戶端不預(yù)先生成DAG,網(wǎng)絡(luò)就會(huì)出現(xiàn)大規(guī)模的延遲。當(dāng)一個(gè)礦工節(jié)點(diǎn)第一次啟動(dòng)時(shí),需要等DAG生成之后才能開

始挖礦。

以太坊的Go語(yǔ)言實(shí)現(xiàn)程序geth和C語(yǔ)言實(shí)現(xiàn)的挖礦程序ethminer都實(shí)現(xiàn)自動(dòng)DAG生成,并在epoch轉(zhuǎn)換的過(guò)程中維護(hù)兩個(gè)DAG。以太坊的Ethash算法可以在較慢的CPU環(huán)境中進(jìn)行哈希運(yùn)

算,但在挖礦節(jié)點(diǎn)上可以通過(guò)增加內(nèi)存和帶寬來(lái)提升挖礦速度。對(duì)內(nèi)存的高要求使得大型礦的礦主沒(méi)有太大的比較性超線性收益;對(duì)帶寬的高要求使得用堆超快的計(jì)算單元來(lái)共享存

儲(chǔ)的方法并不能帶來(lái)更好的收益。這樣對(duì)礦池挖礦來(lái)說(shuō)沒(méi)有太多好處,因此以太坊從設(shè)計(jì)上希望避免出現(xiàn)像比特幣那樣的礦池算力集中化的問(wèn)題。

類似比特幣,以太坊的挖礦靜態(tài)收益將隨著時(shí)間推移而逐漸減少,目前靜態(tài)收益是每挖到一個(gè)區(qū)塊獲得5以太幣。未來(lái)礦工的收益將主要依靠發(fā)送交易的用戶支付的“燃料”來(lái)獲取

收益。以太坊的礦工獎(jiǎng)勵(lì)制度比比特幣復(fù)雜。很多參考資料沒(méi)有給出具體的獎(jiǎng)勵(lì)數(shù)額,有些甚至是錯(cuò)誤的,例如對(duì)挖到“叔區(qū)塊”的礦工獎(jiǎng)勵(lì)的描述,有些資料認(rèn)為是(7/8)

×5=4.375以太幣,其實(shí)這是不準(zhǔn)確的。筆者參考了計(jì)算獎(jiǎng)金的源代碼,具體的獎(jiǎng)金機(jī)制描述如下。

每當(dāng)一個(gè)礦工挖到一個(gè)區(qū)塊,他將獲得5.0以太幣(Ether)的靜態(tài)收益,同時(shí)獲得在區(qū)塊上的“燃料”(gas),價(jià)值取決于當(dāng)前的“燃料”價(jià)格。另外礦工也獲得一個(gè)將“叔區(qū)塊

”(uncle)包含進(jìn)區(qū)塊鏈的額外獎(jiǎng)勵(lì),相當(dāng)于每包含一個(gè)uncle區(qū)塊將獲得(1/32)×5以太幣的收益。而產(chǎn)生“叔區(qū)塊”的礦工將按下面的公式獲得獎(jiǎng)勵(lì):

挖到“叔區(qū)塊”礦工獎(jiǎng)勵(lì)=(叔區(qū)塊ID+8-當(dāng)前區(qū)塊ID)×5/8

例如,假設(shè)當(dāng)前區(qū)塊ID是1600,叔區(qū)塊ID是1598,那么挖到叔區(qū)塊1598的礦工將獲得(6/8)×5,等于3.75以太幣。如果叔區(qū)塊的ID是1599,那么挖到叔區(qū)塊1599的礦工將獲得

(7/8)×5,也就是4.375以太幣的獎(jiǎng)勵(lì)。

注意:所謂“叔區(qū)塊”,是指符合難度條件,但區(qū)塊里的交易不被確認(rèn)的區(qū)塊,或叫“廢塊”(Stale)。比如礦工A挖到一個(gè)符合難度規(guī)定的合規(guī)區(qū)塊a,而幾乎同時(shí)礦工B也挖到符

合標(biāo)準(zhǔn)的區(qū)塊b,但由于網(wǎng)絡(luò)延遲,區(qū)塊b沒(méi)有被確認(rèn),成了廢塊,而a成了網(wǎng)絡(luò)共識(shí)的區(qū)塊,被包括在區(qū)塊鏈中。由于以太坊產(chǎn)生區(qū)塊的速度比比特幣產(chǎn)生區(qū)塊的速度要快很多,因

此在網(wǎng)絡(luò)繁忙的時(shí)候,相對(duì)于比特幣系統(tǒng)更容易出現(xiàn)“廢塊”。在比特幣系統(tǒng)中,生產(chǎn)廢塊的礦工只能自認(rèn)倒霉,是沒(méi)有獎(jiǎng)勵(lì)的。而在以太坊中,產(chǎn)生“叔區(qū)塊”的礦工和將“叔區(qū)

塊”包括在區(qū)塊鏈上的礦工都能得到獎(jiǎng)勵(lì)。這樣產(chǎn)生廢塊的算力也被包括進(jìn)來(lái),有效地增強(qiáng)了安全性,使得攻擊者不容易追上一個(gè)帶“叔區(qū)塊”的主鏈。同時(shí)通過(guò)給“叔區(qū)塊”獎(jiǎng)勵(lì)

,也避免出現(xiàn)像比特幣那樣計(jì)算力高度集中的礦池,因?yàn)榈V池相對(duì)來(lái)說(shuō)不像單個(gè)挖礦節(jié)點(diǎn)那樣容易產(chǎn)生廢塊。嚴(yán)格說(shuō)來(lái),“叔區(qū)塊”是在當(dāng)前鏈接區(qū)塊往前推最多6個(gè)的“祖先”廢

塊,每個(gè)區(qū)塊最多能鏈接兩個(gè)“叔區(qū)塊”。

以太坊采用一個(gè)與比特幣不同的算法叫GHOST(幽靈)來(lái)構(gòu)建區(qū)塊鏈。GHOST的全稱是Greedy Heaviest Observed Subtree,中文直譯是“貪婪最重觀察子樹”。嚴(yán)格來(lái)說(shuō),以太坊的

區(qū)塊鏈不是一個(gè)鏈條,而像一棵樹,它包含前面提到的“叔區(qū)塊”。

在比特幣系統(tǒng)中,礦工按一定的優(yōu)先級(jí)把未確認(rèn)的交易打包到新發(fā)現(xiàn)的區(qū)塊上。交易的優(yōu)先級(jí)按交易額和鏈齡(指UTXO存在的時(shí)間)來(lái)決定。交易額越大、鏈齡越高,優(yōu)先級(jí)就越高

。交易費(fèi)用是用戶的輸入和輸出之差。如果輸入和輸出之差為零,隨著交易發(fā)生的時(shí)間越來(lái)越久,其在交易池的優(yōu)先級(jí)會(huì)逐漸升高。因此一般來(lái)說(shuō),即使付給礦工零交易費(fèi)用的交易

都有機(jī)會(huì)被礦工包含在區(qū)塊鏈上。當(dāng)然個(gè)別礦工可以有自己的規(guī)則,可以拒絕零交易費(fèi)的交易。而在以太坊平臺(tái),不提供“燃料”的交易不會(huì)被執(zhí)行,也不會(huì)被包含在區(qū)塊鏈上。以

太坊的交易費(fèi)用按以下公式計(jì)算:

Total cost=gasUsed×gasPrice

其中g(shù)asUsed是執(zhí)行該交易所消耗的燃料,燃料的價(jià)格由用戶和礦工決定,一般來(lái)說(shuō)在用戶建一個(gè)交易的時(shí)候,可以提一個(gè)燃料價(jià)格。在以太坊發(fā)布的第一版本Frontier(前線)中

,以太坊客戶端的默認(rèn)燃料價(jià)格是0.05e12wei,大約是一億分之五個(gè)以太幣。礦工一般不會(huì)接受低于普遍價(jià)的燃料價(jià)格。

4.計(jì)算和圖靈完備

以太坊作為通用的區(qū)塊鏈平臺(tái),需要提供比比特幣更強(qiáng)大的計(jì)算能力。前面說(shuō)過(guò),從安全角度出發(fā),比特幣的設(shè)計(jì)專門選擇一個(gè)不具圖靈完備性的腳本引擎,目前能通行的比特幣腳

本指令也不多,但在虛擬貨幣的應(yīng)用場(chǎng)景已經(jīng)是綽綽有余了。而在以太坊上,一個(gè)和比特幣非常大的不同點(diǎn)就是選擇了圖靈完備的計(jì)算環(huán)境——以太坊虛擬機(jī)(EVM)。這就意味著

在EVM上可以做所有的能想得到計(jì)算,包括無(wú)限循環(huán)。EVM指令包括一個(gè)JUMP的跳轉(zhuǎn)指令,可讓程序跳回前面的程序代碼,也可以像條件判斷語(yǔ)句那樣做條件跳轉(zhuǎn),當(dāng)滿足一定條件時(shí)

將程序跳轉(zhuǎn)到另一個(gè)地方執(zhí)行。另外,一個(gè)合約可以調(diào)用其他合約,這提供了潛在的遞歸調(diào)用的功能。這就很自然地會(huì)導(dǎo)致一個(gè)問(wèn)題:一個(gè)搞破壞的用戶能否通過(guò)強(qiáng)制礦工或全節(jié)點(diǎn)

進(jìn)入死循環(huán)而將他們基本關(guān)掉呢?這個(gè)其實(shí)也是一個(gè)“停機(jī)問(wèn)題”,也就是說(shuō),通常沒(méi)有任何辦法去判定一個(gè)程序會(huì)否停機(jī)。以太坊怎么解決這個(gè)問(wèn)題呢?它首先要求每個(gè)交易要給

出最大的計(jì)算步驟,交易的發(fā)起人要提供Gas作為交易費(fèi)以供礦工把交易加進(jìn)區(qū)塊。如果實(shí)際運(yùn)行超過(guò)了該最大計(jì)算步驟,計(jì)算將被終止,而交易費(fèi)會(huì)歸挖到區(qū)塊的礦工所有。因此

以太坊采用經(jīng)濟(jì)的方法來(lái)保證以太坊平臺(tái)的安全。

以太坊網(wǎng)絡(luò)的每個(gè)節(jié)點(diǎn)都運(yùn)行EVM并執(zhí)行合約代碼,因此以太坊就像一個(gè)并行運(yùn)行的“世界電腦”,在所有的節(jié)點(diǎn)上同時(shí)進(jìn)行賬戶的狀態(tài)轉(zhuǎn)換,并形成網(wǎng)絡(luò)層面對(duì)所有賬戶狀態(tài)的共

識(shí)。雖然這種P2P的運(yùn)行方式并不是最高效的,但卻是最有安全保障的,可以說(shuō),這部“世界電腦”永不停機(jī)。

5.EVM高級(jí)語(yǔ)言

比特幣不提供高級(jí)語(yǔ)言的支持,以太坊則提供高級(jí)語(yǔ)言讓用戶編寫智能合約。以太坊的高級(jí)語(yǔ)言最后會(huì)編譯成在EVM中執(zhí)行的EVM字節(jié)碼(bytecode),部署在以太坊區(qū)塊鏈上。以太

坊提供3種編程語(yǔ)言:Solidity、Serpent和LLL。

·Solidity類似JavaScript語(yǔ)言,是目前以太坊上最流行的智能合約編程語(yǔ)言。

·Serpent類似Python編程語(yǔ)言,它結(jié)合了低級(jí)語(yǔ)言的效率和易用的編程方式。Serpent用LLL語(yǔ)言來(lái)編譯。

·LLL是Lisp Like Language的簡(jiǎn)稱,顧名思義是一個(gè)像Lisp的語(yǔ)言。它有些像匯編語(yǔ)言,設(shè)計(jì)得非常簡(jiǎn)約,基本上就是在EVM上的一個(gè)微小的封裝。

另外一個(gè)類似C的語(yǔ)言Mutan已經(jīng)基本棄用,不再被維護(hù)。

6.以太坊P2P網(wǎng)絡(luò)

(1)RLPx協(xié)議

以太坊網(wǎng)絡(luò)節(jié)點(diǎn)間的通信采用DΞVp2p線上協(xié)議。節(jié)點(diǎn)間采用RPLx [3] 編碼及認(rèn)證的通信傳輸協(xié)議來(lái)傳輸消息包,即提供發(fā)送和接收消息的協(xié)議功能。節(jié)點(diǎn)可以自由地在任何TCP端

口發(fā)布和接受連接,默認(rèn)的端口是30303。目前正式版的RLPx實(shí)現(xiàn)了以下功能:

·單一協(xié)議的UDP節(jié)點(diǎn)發(fā)現(xiàn)

·ECDSA簽名的UDP

·加密握手/認(rèn)證

·節(jié)點(diǎn)持久性

·加密/認(rèn)證TCP

·TCP幀處理

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 區(qū)塊鏈
    +關(guān)注

    關(guān)注

    112

    文章

    15565

    瀏覽量

    108158
  • 以太坊
    +關(guān)注

    關(guān)注

    14

    文章

    1838

    瀏覽量

    32656

原文標(biāo)題:區(qū)塊鏈2.0架構(gòu):以太坊區(qū)塊鏈的介紹

文章出處:【微信號(hào):C_Expert,微信公眾號(hào):C語(yǔ)言專家集中營(yíng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    簡(jiǎn)單學(xué)學(xué)之課堂二:區(qū)塊的透明性指的是什么?

    區(qū)塊區(qū)塊最著名的個(gè)實(shí)現(xiàn),也是目前唯經(jīng)過(guò)較大規(guī)模實(shí)踐檢驗(yàn)的
    發(fā)表于 01-05 14:19

    區(qū)塊將如何優(yōu)化產(chǎn)業(yè)

    的新區(qū)塊渠道的興起,運(yùn)用和基礎(chǔ)渠道開端解耦合,在以太開發(fā)的更為完善的區(qū)塊
    發(fā)表于 12-13 15:19

    請(qǐng)問(wèn)使用PSoC 4架構(gòu)的選項(xiàng)是什么?

    我們要捕獲串行數(shù)據(jù)-電流檢測(cè)到M系列,并發(fā)送到無(wú)線網(wǎng)絡(luò)。使用PSoC 4架構(gòu)的選項(xiàng)是什么?
    發(fā)表于 10-08 13:37

    RISV-5架構(gòu)有哪些優(yōu)點(diǎn)

    RISV-5架構(gòu)相比ARM、X86架構(gòu)有哪些優(yōu)點(diǎn)
    發(fā)表于 06-18 19:19

    RISV-5架構(gòu)相比其他架構(gòu)有哪些優(yōu)點(diǎn)

    RISV-5架構(gòu)相比于ARM、X86架構(gòu)有哪些優(yōu)點(diǎn)
    發(fā)表于 06-18 19:24

    Powerpc架構(gòu)與X86架構(gòu)的區(qū)別

    與X86架構(gòu)的區(qū)別1、ARMARM處理器是英國(guó)Acorn有限公司設(shè)計(jì)的低功耗成本的第款RISC微處理器。全稱為Advanced RISC Mac...
    發(fā)表于 07-26 06:16

    arm架構(gòu)和x86架構(gòu)有什么區(qū)別

    什么叫arm架構(gòu)?x86架構(gòu)是由哪些部分組成的?arm架構(gòu)和x86架構(gòu)有什么區(qū)別?
    發(fā)表于 10-25 08:25

    介紹一下ARM架構(gòu)

    我們已經(jīng)介紹了X86架構(gòu),今天介紹個(gè)在近十年大火的架構(gòu),ARM。ARM架構(gòu),過(guò)去稱作進(jìn)階精簡(jiǎn)
    發(fā)表于 11-25 08:51

    如何實(shí)現(xiàn)MIPS32架構(gòu)CPU設(shè)計(jì)?

    如何實(shí)現(xiàn)MIPS32架構(gòu)CPU設(shè)計(jì)?
    發(fā)表于 02-16 06:22

    ARM GIC(八)GICv3架構(gòu)的變化

    GICv4。不過(guò)從GICv3開始,架構(gòu)就和之前的架構(gòu),變化就比較大了。、變化:cpu interface下圖是GICv2架構(gòu),cpu i
    發(fā)表于 04-07 10:59

    X86架構(gòu)和ARM架構(gòu)

      ARM架構(gòu)個(gè)32位元精簡(jiǎn)指令集中央處理器架構(gòu),x86架構(gòu)指的是特定微處理器執(zhí)行的些計(jì)算機(jī)語(yǔ)言指令集。X86
    發(fā)表于 11-30 12:48
    X86<b class='flag-5'>架構(gòu)</b>和ARM<b class='flag-5'>架構(gòu)</b>

    文看懂a(chǎn)rm架構(gòu)和x86架構(gòu)有什么區(qū)別

    本文主要介紹的是arm架構(gòu)和x86架構(gòu)的區(qū)別,首先介紹了ARM架構(gòu)圖,其次介紹了x86
    的頭像 發(fā)表于 05-16 14:19 ?31.4w次閱讀
    <b class='flag-5'>一</b>文看懂a(chǎn)rm<b class='flag-5'>架構(gòu)</b>和x86<b class='flag-5'>架構(gòu)</b>有什么區(qū)別

    基于以太區(qū)塊的MIX項(xiàng)目介紹

    目前許多大型項(xiàng)目都部署在以太區(qū)塊上。但這就將使得技術(shù)上出現(xiàn)個(gè)問(wèn)題:如果每個(gè)軟件項(xiàng)目都有致命的bug,
    發(fā)表于 10-08 11:43 ?1912次閱讀

    區(qū)塊2.0以太的運(yùn)作原理解析

    介紹以太區(qū)塊架構(gòu)前必須要介紹
    發(fā)表于 10-29 10:41 ?3172次閱讀

    X86架構(gòu)與Arm架構(gòu)的區(qū)別

    X86架構(gòu)和ARM架構(gòu)是主流的兩種CPU架構(gòu),X86架構(gòu)的CPU是PC服務(wù)器行業(yè)的老大,ARM架構(gòu)的CPU則是移動(dòng)端的老大。X86
    的頭像 發(fā)表于 06-16 12:50 ?2.8w次閱讀
    X86<b class='flag-5'>架構(gòu)</b>與Arm<b class='flag-5'>架構(gòu)</b>的區(qū)別
    主站蜘蛛池模板: 阳曲县| 五河县| 永城市| 武城县| 阿坝| 北票市| 新乡县| 石阡县| 元江| 武川县| 崇义县| 古丈县| 尼勒克县| 上杭县| 怀集县| 沙坪坝区| 宽城| 柏乡县| 通州区| 宝清县| 海宁市| 惠安县| 樟树市| 定南县| 和顺县| 体育| 赤城县| 刚察县| 武功县| 曲松县| 长岭县| 扬州市| 东乌珠穆沁旗| 始兴县| 集贤县| 永平县| 明溪县| 衢州市| 新竹县| 达日县| 封开县|