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

當(dāng)前位置:首頁 > 物聯(lián)網(wǎng) > 區(qū)塊鏈
[導(dǎo)讀] 這是一篇從程序員視角看區(qū)塊鏈的文章,將區(qū)塊鏈落地為程序員能夠理解的概念,比如圖靈狀態(tài)機(jī),而狀態(tài)機(jī)是一種狀態(tài)模式,是事件驅(qū)動建模的核心。本文適合區(qū)塊鏈入門閱讀: 不對稱密碼已經(jīng)存在了很長一

這是一篇從程序員視角看區(qū)塊鏈的文章,將區(qū)塊鏈落地為程序員能夠理解的概念,比如圖靈狀態(tài)機(jī),而狀態(tài)機(jī)是一種狀態(tài)模式,是事件驅(qū)動建模的核心。本文適合區(qū)塊鏈入門閱讀:

不對稱密碼已經(jīng)存在了很長一段時間,密鑰有公鑰和私鑰之分。我們使用公鑰進(jìn)行加密并使用私鑰解密?;蛳喾匆嗳?。你無法從一個密鑰中獲得另外一個密鑰。因此,如果使用不對稱加密技術(shù),我可以向某人發(fā)送一條信息,比如“我轉(zhuǎn)賬100美元”,并且每個人都會知道它是由我發(fā)送的,并且沒有任何改動。

假設(shè)有十個人都同意每個人擁有一百萬單位的新貨幣。他們每個人都可以確保(并且每個人都可以確信)是有某人發(fā)送了三十萬個單位。但是X是否真的擁有這些三十萬個單位貨幣卻還不得而知。為了找到答案,我們可以了解每個人的余額情況。為此,我們只需將所有收入交易加起來并扣除所有費(fèi)用進(jìn)行計(jì)算。由此,我們就需要有關(guān)收入和支出的信息,這就是公共賬本。它可以讓我們識別某個人是否真的可以發(fā)出30萬個單位的貨幣。

比特幣:開始

還有一個問題 - 如果我把我所有的錢同時寄給兩個人怎么辦?這被稱為雙重支出。如果讓這兩個人彼此溝通以找出誰最終獲得付款是不方便的;查看時間戳以確定我首先將資金發(fā)送誰了?這種辦法非fail-safe的。這里有一個解決方案 - 我們需要流線化交易,在這種流線化交易模式下,很明顯能看出第一筆付款已經(jīng)發(fā)給了約翰,根本無法再將這筆付款發(fā)給第二個人,因?yàn)槲覜]有更多的錢了。

流線型交易主要是對交易進(jìn)行排序,但是現(xiàn)在還不清楚怎么來決定交易的順序。在銀行和其他集中系統(tǒng)中,銀行自身代表了受托人,是單點(diǎn)風(fēng)險點(diǎn),也是單點(diǎn)信任點(diǎn)。該銀行可以出面澄清說,某某的錢先寄給了誰。但是在區(qū)塊鏈中,沒有單個受托人。它可能是網(wǎng)絡(luò)的大部分參與者(當(dāng)然,這意味著整個網(wǎng)絡(luò),因?yàn)槟悴荒芟嘈琶恳粋€參與者,因?yàn)槠渲锌隙ㄓ幸恍_子)。這里的假設(shè)前提是網(wǎng)絡(luò)不受任何一個人的控制,并且大多數(shù)參與者嚴(yán)格按照利于自己的經(jīng)濟(jì)利益行事(自利)。

但是流線型交易的一致性問題仍然沒有徹底解決 - 這就要求我們在網(wǎng)絡(luò)參與者中實(shí)現(xiàn)一種稱之為“共識”的機(jī)制。這個問題是由一個共識算法處理的,這是每個區(qū)塊鏈中的一個關(guān)鍵算法。

在我們討論一個特定的共識算法之前,先說說區(qū)塊鏈的塊。塊是一種技術(shù)措施,是批量處理(稱為批處理)的一個實(shí)例,因此許多交易能在一個“批量”內(nèi)計(jì)算以達(dá)成共識,并且網(wǎng)絡(luò)的間接費(fèi)用可以跨多個交易中“分?jǐn)偂?。塊內(nèi)交易的順序是由網(wǎng)絡(luò)參與者(即生成該塊的人員(也稱為“礦工”))定義的。但塊之間的順序由共識算法確定。共識算法存在相當(dāng)長的一段時間。例如包括多主NoSQL系統(tǒng)中的Paxos和Raft等算法。但這些算法并不適合擁有一百萬對參與者的網(wǎng)絡(luò)。

比特幣在它出現(xiàn)的時候代表了相當(dāng)革命性的東西 - 一種工作證明(PoW)共識的算法。許多網(wǎng)絡(luò)參與者(礦工)會同時生成很多新塊。因此有必要決定這些塊中的哪一個塊能夠被真正用作區(qū)塊鏈的下一塊。

為了使自己產(chǎn)生的塊成為區(qū)塊鏈中真正的下一個塊,礦工必須執(zhí)行特別挑選且非常耗時的哈希計(jì)算。當(dāng)一個哈希數(shù)值計(jì)算到一個大數(shù)字,且必須符合某些條件,比如必須前面包含10個零。這就會需要數(shù)十億次哈希計(jì)算,這個計(jì)算量就代表礦工能“證明”其塊的確實(shí)存在的證據(jù)。同時,檢查這項(xiàng)工作是否正確完成是非常容易的 - 您只需要一次哈希操作。必須了解到的是:平均而言,整個網(wǎng)絡(luò)(其中包括成千上萬的礦工?。┰?0分鐘內(nèi)就可以生成一個區(qū)塊(比特幣生成區(qū)塊的平均間隔)! 。這大大降低了曠工之間碰撞的可能性,即就不可能同時有兩個礦工提供兩個或更多的塊作為下一個塊。

但是,發(fā)生碰撞的可能性還是可能存在的。因此,存在這樣規(guī)則 - 網(wǎng)絡(luò)參與者接受形成最長鏈的塊(當(dāng)有兩個塊同時生成時,選擇其中一個更長的鏈的塊)。

事實(shí)上,它不是一個鏈,而是一個有許多分支和有向無環(huán)圖(DAG)的鏈,而鏈通常被稱為“共同歷史”(它是最長的鏈)。既然共識不能立即達(dá)成,你就必須等待一段時間直到出現(xiàn)幾個塊之后。為了防止比特幣的雙重支出,人們通常會等待六個塊(在比特幣里需要花費(fèi)一個小時)。

除了事務(wù)之外,塊還包括前一個塊的哈希。因此,過去歷史就不可能被修改,因?yàn)檫@會使隨后的所有哈希無效。同時,連接到同一個塊,您會獲得挖礦獎勵,這會給您帶來新的收益!否則,就無法將新資金引入這個系統(tǒng)中 - 資金將不得不發(fā)放給某人,這會使這個人變得特殊,這與分權(quán)的想法會形成矛盾。為挖礦發(fā)錢似乎是一種合乎邏輯和可接受的解決方案。

順便說一句,關(guān)于挖礦。你需要明白,礦工的主要工作是猛烈地哈希計(jì)算出新塊; 這里沒有非對稱加密技術(shù),因?yàn)檫@里僅僅需要在交易加入塊之前檢查交易。比特幣使用SHA-256哈希; 在以太坊中,它是采取Keccak-256。如果你是單獨(dú)開采,那么在你生成一個區(qū)塊之前,需要準(zhǔn)備好長時間(每十分鐘產(chǎn)生一個區(qū)塊,你的競爭者數(shù)量達(dá)到數(shù)百成千上萬的!)。如果礦工聚集在一起。在一個池中,參與者之間的獎勵是以各種方式分配的(有不同的方法),這意味著您可以更經(jīng)常地獲得獎金(盡管數(shù)量比較少)。在這種情況下,風(fēng)險和收益都是成正比的。

到目前為止,我們主要處理的是網(wǎng)絡(luò)參與者之間的數(shù)據(jù)交換,而沒有深入細(xì)節(jié)。牢記數(shù)據(jù)通過網(wǎng)絡(luò)對等進(jìn)行交換是非常重要的。

這就是比特幣區(qū)塊鏈技術(shù)。

智能合約和ICO

在比特幣的每個賬戶上執(zhí)行兩個操作(加法和減法),并且可以由任何人檢查,當(dāng)然主要由礦工檢查。但是如果我們將一個內(nèi)部變量添加到帳戶(存儲),它是用來進(jìn)行操作比較的,假設(shè)我積累了1000萬美元時,我想讓我的帳戶停止接受資金 - 這意味著代碼實(shí)現(xiàn)上不僅要將資金能夠增加到我的帳戶中,還要為這種增加再添加一定的條件。通過開發(fā)這個角度看過去,我們看到的是一個圖靈機(jī),一種確定性的類型(每個人仍然可以檢查我的賬戶)。因此,我們有了一個智能合約。在下文中,智能合約指的是以太坊網(wǎng)絡(luò)中的智能合約,因?yàn)樗悄壳白钍軞g迎的合約。

確定性意味著,在有相同的交易參數(shù)和存儲的初始狀態(tài)相同的情況下,我們最終會得到相同的結(jié)果,以及存儲中同樣的更改動作(banq注:操作事件)。只有在這些條件下,網(wǎng)絡(luò)才能就每筆交易達(dá)成一致。

這里必須明白,由于要求確定性,可驗(yàn)證性和分散性,智能合約與外部世界相當(dāng)孤立。例如,它不能觸發(fā)分散式Web API(有解決方案,即所謂的“oracles”,但這些都很復(fù)雜,需要分別處理)。

另外,合同對外界的控制也非常有限。例如,要了解智能合同執(zhí)行結(jié)果(新余額或存儲的更改動作),網(wǎng)絡(luò)節(jié)點(diǎn)必須執(zhí)行該合同規(guī)定的操作。在多個節(jié)點(diǎn)上進(jìn)行計(jì)算不是沒有成本的。因此,以太坊引入了gas 的概念,以避免加密貨幣硬編碼進(jìn)行計(jì)算帶來的成本,并允許用戶計(jì)算計(jì)算次數(shù)并設(shè)置其價格。這種結(jié)構(gòu)提供了一個額外的間接層,它允許用戶在低成本交易和快速交易之間進(jìn)行選擇。

當(dāng)資金被發(fā)送到合約賬戶(通過簡單地使用地址)時,它觸發(fā)回調(diào)函數(shù),這是默認(rèn)設(shè)置。與前面比特幣的帳戶類型不同,智能合約的合約中有多個輸入點(diǎn) - 這些是可以接受參數(shù)的方法。要修改合約(無論輸入點(diǎn)是什么),您必須將交易發(fā)送到網(wǎng)絡(luò)才能進(jìn)行更改。但是,如果您只想以只讀模式查看某些內(nèi)容,則可以通過使用實(shí)時更新的區(qū)塊鏈在本地執(zhí)行此操作。另外與賬戶不同的是,智能合約沒有私鑰。您不能直接從余額中提取資金 - 這可以通過使用明確定義的方法來完成,當(dāng)然這些方法應(yīng)該有安全限制,例如檢查試圖訪問資金的用戶的地址。

最后,我們在比特幣風(fēng)格的區(qū)塊鏈上獲得了智能合約技術(shù)。

許多加密貨幣或所謂的“代幣tokens”都基于以太坊智能合約。是的,通常這種加密貨幣只是以太坊中的一個合同(一個?。S囝~通常是智能合約存儲中的map數(shù)據(jù)類型的一個數(shù)據(jù)條目,并且從一個參與者轉(zhuǎn)移貨幣到另一個參與者如下:

map[Alice] –= payment;

map[Bob] += payment;

他們不需要自己的曠工和網(wǎng)絡(luò) - 他們可以使用以太坊的基礎(chǔ)設(shè)施。在以太坊,ICO / ITO實(shí)際就是加密貨幣(tokens)的以太網(wǎng)交換(以太坊網(wǎng)絡(luò)的加密貨幣)。

未來發(fā)展

除了智能合約之外,基于區(qū)塊鏈的基本概念之上還有很多其他想法,比如“零知識證明”和“自律網(wǎng)絡(luò)”。

零知識證明是基于密碼協(xié)議的同名家族,實(shí)質(zhì)上,它被設(shè)計(jì)為證明對象的所有權(quán)但不完全暴露它。例如,如果我能夠回答關(guān)于某文件的各種隨機(jī)位置中有關(guān)字節(jié)的十個問題,我就可以證明我擁有一個特定的1 GB文件。顯然,在這種情況下,我只需公開1 GB中的10個字節(jié)即可。

這意味著可以讓任何人檢查我的帳戶余額是否正確,同時卻沒有必要透露我的帳戶上有多少錢!通過構(gòu)建這個想法,我們可以創(chuàng)建一個包含余額和支付隱私信息的加密貨幣(實(shí)際上,它已經(jīng)存在了;參見Zcash),并且完全隱藏了智能合約中計(jì)算參數(shù)。

區(qū)塊鏈有寫入網(wǎng)絡(luò)客戶端程序代碼的網(wǎng)絡(luò)通用設(shè)置,例如包含在該區(qū)塊中的交易數(shù)量。通常,更改它們需要網(wǎng)絡(luò)上所有參與者接受這些更改(以代碼更新的形式出現(xiàn)),這會帶來網(wǎng)絡(luò)分支的威脅(當(dāng)一些參與者決定不接受更改并繼續(xù)與“舊”碼)。Self-regulation試圖解決這些問題(例如,參見Tezos或EOS區(qū)塊鏈)。這種想法的本質(zhì)是,對于每一次變更,您都可以用自己的資金進(jìn)行投票(當(dāng)然不會失去這些資金)。

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

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

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

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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