国产自在线拍精品|久久久久国产熟女精品|亚洲AV成人影视综合网|国产免费亚洲亚洲成人aa|久久久久青草大香综合精品|久久精品视频一区二区三区|久久久精品区二区三区免费9|久久国产精品高清一区二区三区

安裝殺毒軟件就能泄密?美國情報人員因轉(zhuǎn)移機(jī)密被判刑

2018-09-27

據(jù)法新社和路透社報道,一名美國情報工作人員因?qū)⒔^密材料從辦公地點轉(zhuǎn)移到家中而被判入獄。美國檢方稱,俄羅斯情報機(jī)構(gòu)很有可能已經(jīng)竊取了相關(guān)絕密材料,理由是此人家用電腦上使用了俄羅斯殺毒軟件卡巴斯基。

微信圖片_20180927104618.jpg

美國國家安全局NSA的徽章

據(jù)報道這名工作人員是現(xiàn)年66歲的越南裔Nghia Hoang Pho,他曾在國家安全局精英黑客部門內(nèi)任職10年以上。美國檢方稱,Pho在2010年至2015年間,他把他們稱之為“大量寶藏”的最高機(jī)密數(shù)據(jù)帶回家,存放在自己家中的私人電腦上,他在去年12月與檢方達(dá)成了認(rèn)罪協(xié)議,在9月25日被法庭以故意保留機(jī)密國防信息為由判處他66個月監(jiān)禁。

微信圖片_20180927104623.jpg 

俄羅斯殺毒軟件卡巴斯基

Pho將這些機(jī)密信息保存在他的家用電腦上,該電腦受到流行的卡巴斯基反病毒程序的保護(hù)。美國情報部門認(rèn)為,俄羅斯情報部門能夠通過卡巴斯基軟件訪問Pho的電腦竊取他們想要的秘密資料。美國檢察官Robert Hur稱:“由于他的行為,Pho泄露了我們國家一些讓對手最密切關(guān)注的情報類型,并迫使美國國安局放棄了一些重要的舉措,以極大的經(jīng)濟(jì)壓力和運營成本保護(hù)自己及其維持其運營。”

微信圖片_20180927104628.jpg

此次泄密讓美國國安局隨時慘重

該事件被認(rèn)為是美國政府去年禁止在政府電腦上使用卡巴斯基軟件的一個關(guān)鍵原因。美國媒體稱,為了運行卡巴斯基反病毒程序,必須要給軟件授予計算機(jī)所有者的全部權(quán)限。然后,它會將反病毒掃描結(jié)果傳達(dá)給位于莫斯科的卡巴斯基總部。然后俄羅斯情報機(jī)構(gòu)會從上報的代碼中篩選出自己感興趣的文件和程序。2017年12月12日美國政府警告稱,該這家俄羅斯反病毒軟件公司懷疑與俄羅斯情報部門有關(guān),并要求美國境內(nèi)的政府部門禁止購買和使用卡巴斯基的反病毒軟件。不過,卡巴斯基公司完全否認(rèn)了其與俄羅斯政府或其間諜機(jī)關(guān)有任何聯(lián)系。

西安軟件開發(fā)、西安APP開發(fā)、西安軟件外包、西安軟件開發(fā)、西安網(wǎng)站建設(shè)、電商軟件開發(fā)、社交軟件開發(fā)、直播軟件開發(fā)、西安網(wǎng)站制作、西安區(qū)塊鏈開發(fā)

說了太多要做好,你知道怎么玩壞一條區(qū)塊鏈嗎

2018-09-27

當(dāng)我們談?wù)搮^(qū)塊鏈的時候,我們一再強(qiáng)調(diào)著區(qū)塊鏈上的數(shù)據(jù)是多么難以篡改,我們講述著一個去中心化的美好烏托邦,在這里我們可以更好的保護(hù)我們的隱私和個人財產(chǎn),讓它們不受任何強(qiáng)權(quán)、財團(tuán)、大公司的控制,我們更自由了。

但是現(xiàn)實總會無情的打臉,烏托邦不過存在于我們的想象中。在區(qū)塊鏈的token經(jīng)濟(jì)下,智能合約漏洞和黑客攻擊,包括系統(tǒng)規(guī)則的考慮不周,導(dǎo)致的資金的損失比例,可能比法幣體系下腐敗、剝削、犯罪導(dǎo)致的損失更大。

這是是個非常尷尬的事情。如果你經(jīng)歷過2014年MT.GOX的上億盜竊案,或者被黑客炸騙盜幣后,卻因為“不可篡改性”只能眼睜睜看著黑客逍遙自在的,花著你的血汗錢的時候,你一定會徹底對區(qū)塊鏈描述的烏托邦失望。這就是所謂的“安全”,這就是所謂的“自由”。區(qū)塊鏈只保護(hù)了技術(shù)的“強(qiáng)者”。

微信圖片_20180927103646.jpg

這些安全的挑戰(zhàn)來自于很多地方,不僅僅是區(qū)塊鏈本身的不完善,還包括一些釣魚網(wǎng)站、對交易所的DDOS攻擊,甚至是欺詐、威脅恐嚇的老把戲。區(qū)塊鏈?zhǔn)莻€新生的技術(shù),雖然他自帶了加密和分布式的一系列安全光環(huán),但是我們目前的確可以找到一百種方法來玩壞一條區(qū)塊鏈。

在這里,我們就來看看目前慣用的攻擊有哪些?

從而更好的保護(hù)我們的財產(chǎn)。

目前對于區(qū)塊鏈的攻擊可以分成三個維度:

第一個維度是雙花攻擊。雙花,就是同一筆錢花了兩次。

任何一個有關(guān)價值的系統(tǒng),首要的問題便是避免價值的雙花,這樣價值才能得到保障,顯然傳統(tǒng)互聯(lián)網(wǎng)是無法避免雙花的。通常來說,如果利用區(qū)塊鏈技術(shù),雙花問題可以解決。因為區(qū)塊鏈只承認(rèn)第一筆交易為有效的交易。但是我們卻能找到不少的辦法攻擊區(qū)塊鏈從而實現(xiàn)雙花,包括我們熟悉的51%攻擊,以及重放攻擊等等,這足以撼動一條區(qū)塊鏈的信任基礎(chǔ),破壞性非常強(qiáng)大。

第二各維度是對區(qū)塊鏈系統(tǒng)的可用性的攻擊,類似于傳統(tǒng)的DDOS攻擊,讓區(qū)塊鏈停止處理網(wǎng)絡(luò)中的有價值的交易和數(shù)據(jù),從而讓整個系統(tǒng)停擺。這包括抬高處理交易成本堵塞區(qū)塊鏈的粉塵攻擊,拒絕打包交易的空塊攻擊,破壞對等網(wǎng)絡(luò)的信譽(yù)系統(tǒng)的女巫攻擊,以及在一些特定共識算法下的強(qiáng)行分叉攻擊“無利害關(guān)系”。

第三個維度是對區(qū)塊鏈上規(guī)則的攻擊,對智能合約的攻擊。這可能是目前最要命的攻擊方式,也是目前安全問題的重災(zāi)區(qū),特別是針對目前的ERC20協(xié)議下的各種token來說,已經(jīng)有好幾個token因為合約漏洞“被增發(fā)”,直接導(dǎo)致了token價值歸零。代碼總是會有錯誤和沒有考慮周到的地方,有縫隙的地方黑客就可以利用,比如”the DAO”事件里的無限調(diào)用攻擊。

微信圖片_20180927103651.jpg

其實在這三個維度之外還有一些攻擊,比如直接針對區(qū)塊鏈下的經(jīng)濟(jì)體系的攻擊,比如“賄賂攻擊”等等,以及一些對中心交易所的各種傳統(tǒng)互聯(lián)網(wǎng)的攻擊方式,乃至釣魚和詐騙網(wǎng)站等等。由于這些并不是區(qū)塊鏈本身的不完善,導(dǎo)致了攻擊的可能,我們在此不多做討論。

雙花攻擊

雙花攻擊就是同一筆錢被花費了兩次。比如在最近的一次交易里,攻擊者轉(zhuǎn)賬到你的賬戶100個BTC,換取了你500w人民幣。錢到手后,攻擊者又發(fā)送了一個轉(zhuǎn)給自己100BTC的交易,不管他用了什么方法,最后最長的鏈上包含了這個攻擊者轉(zhuǎn)給自己的交易,而他和你之間的交易卻因存在于較短的分叉中而被認(rèn)為是“沒有發(fā)生過”的。

51%算力攻擊

雙花攻擊有多種實現(xiàn)的方法,成本其實不高,大家比較熟悉的就是51%算力攻擊,這種攻擊是通過控制網(wǎng)絡(luò)51%的算力實現(xiàn)雙花。如果攻擊者控制了網(wǎng)絡(luò)中51%以上的算力,那么在他控制算力的這段時間,他有非常大的可能追上當(dāng)前區(qū)塊產(chǎn)生的速度,從而將區(qū)塊逆轉(zhuǎn),進(jìn)行反向交易,實現(xiàn)雙花。

具體的實現(xiàn)邏輯如下圖:

微信圖片_20180927103655.jpg

在比特幣的白皮書中,就講述過這個攻擊的可能,理論上是無法通過技術(shù)來防范51%攻擊發(fā)生的,中本聰選擇了使用經(jīng)濟(jì)學(xué)原理從根源上避免了51%攻擊的可能,達(dá)到全網(wǎng)的51%算力的成本是非常之高的,付出如此高的成本進(jìn)行雙花攻擊后,因為信任的崩潰,token會變得一文不值,攻擊者不會做花費100元詐騙5元的蠢事,當(dāng)時有這么多的算力進(jìn)行誠實的挖礦,獲得的收益相對更多。

我們一再強(qiáng)調(diào)51%的攻擊的成本之高,以至于從經(jīng)濟(jì)上來講它很難發(fā)生,比特幣的51%攻擊是不可能發(fā)生的,但現(xiàn)實中51%攻擊的成本沒有我們相信的那么高,特別是對小規(guī)模的山寨幣來說。這里大概講述了幾種低成本下如何進(jìn)行51%算力攻擊的方法.

1.賄賂攻擊:不用為了進(jìn)行雙花攻擊去花大成本掌握51%的算力,只要拿出足夠豐厚的獎勵收買挖礦節(jié)點做特地的事情就好了。下面是賄賂攻擊的基本流程。

微信圖片_20180927103658.jpg

這里有個很有意思的事情,礦工們明明知道接受賄賂,攻擊區(qū)塊鏈導(dǎo)致分叉是不好的行為,可能會影響到自己未來的挖礦收益,為什么還要貪圖這些小利呢?

因為攻擊者的賄賂聲明是經(jīng)過地址加密私發(fā)給每一個礦工的,并且告訴礦工,我只告訴了你一個人,你能挖出這個區(qū)塊獎勵就是你一個人的,你不會告訴別人來分走自己的獎勵吧。這時候就出現(xiàn)了一個囚徒困境的博弈難題,礦工為了自己的利益不會告訴其他節(jié)點自己接受了賄賂,并且相信只有自己對區(qū)塊鏈攻擊,起不到什么關(guān)鍵作用,不會造成嚴(yán)重問題。但是雞賊的攻擊者會把這條消息發(fā)送給起碼51%以上的礦工,所以最后雙花總是會完成的。

如何防范:引入有保證金和懲罰措施的改進(jìn)版挖礦機(jī)制。每個區(qū)塊鏈的礦工都有保證金押在鏈上,如果賄賂者進(jìn)來告訴你去做出對原來區(qū)塊鏈不利的決策,你會損失你所有的保證金,這樣做是得不償失的,這也提高了攻擊者的賄賂成本。未來以太坊的Gasper共識算法就會采取抵押保障金的方式進(jìn)一步增加作惡成本。

2.幣齡累積攻擊:這種攻擊主要針對“POW+POS”混合共識機(jī)制的區(qū)塊鏈,在這種共識之下,挖到區(qū)塊的可能性不僅與當(dāng)前的算力有關(guān),同時也與你賬戶上持有的幣的數(shù)量和每個幣的持幣時間相關(guān)。你擁有的幣越多,持幣時間越長,對于你來說挖礦的算力難度就越低,越有可能挖到區(qū)塊。這就導(dǎo)致,部分節(jié)點買入一定數(shù)量幣后,持有足夠長時間后,就有能力利用幣齡的增加,近乎的達(dá)到51%的算力,從而控制整個網(wǎng)絡(luò)。

如何防范:對持幣數(shù)量和持幣時間的最大值進(jìn)行約束和預(yù)警,打到51%臨界情況時,系統(tǒng)可以自動進(jìn)行一次獎勵清算,清空持幣時間,而不是等待這個節(jié)點的權(quán)力隨著時間無限的增長。

3.通用挖礦攻擊:這種攻擊主要是針對還未形成挖礦規(guī)模的幣種的攻擊,特別是一些主流幣種的山寨分叉幣,當(dāng)你投資的時候一定要注意。目前部分不同的幣因為架構(gòu)和共識算法的問題,礦機(jī)是可以進(jìn)行通用挖礦的,比如早期挖BTC的礦機(jī)也可以挖BCH,而且BTC的全網(wǎng)算力比BCH的大了好幾十倍,這時候如果挖掘BTC的大礦場突然轉(zhuǎn)而去挖掘某種山寨分叉幣,馬上就可以擁有山寨幣全網(wǎng)的51%以上的算力,這時候?qū)ι秸瘞胚M(jìn)行雙花攻擊,變現(xiàn)后繼續(xù)回去挖掘BTC就好了,山寨幣歸零也和攻擊者沒有關(guān)系了。這對攻擊者來說是沒有任何成本的,這也就是所謂的,不存在封閉的經(jīng)濟(jì)系統(tǒng)。

攻擊案例:2016年8月份,基于以太坊的數(shù)字貨幣Krypton遭受來自一個名為“51% Crew”的組織通過租用Nicehash的算力,進(jìn)行51%攻擊,導(dǎo)致該區(qū)塊鏈損失約21,465 KR的代幣。

如何防范:修改代碼,更新共識算法,使得其他區(qū)塊鏈上的礦機(jī)無法在本區(qū)塊鏈上進(jìn)行通用挖礦行文。同時對投資者來說,盡量選擇技術(shù)實力強(qiáng),背后算力背書強(qiáng)的幣進(jìn)行投資,山寨幣被攻擊的成本太低,安全性堪憂,甚至對部分山寨幣,通過租用亞馬遜云服務(wù)就可以發(fā)動數(shù)次51%攻擊。

芬尼攻擊

這個雙花攻擊實現(xiàn)起來比較簡單,攻擊對象針對的是接受0確認(rèn)的商家。芬尼攻擊主要通過控制區(qū)塊的廣播時間來實現(xiàn)雙花,需要等待攻擊者挖到一個包含了自己轉(zhuǎn)給自己的區(qū)塊后,扣住區(qū)塊不廣播從而進(jìn)行攻擊,所以也叫扣塊攻擊。

微信圖片_20180927103704.jpg

>0確認(rèn)是指一筆交易被廣播到全網(wǎng),即將被打包進(jìn)入?yún)^(qū)塊前的狀態(tài)。因為區(qū)塊鏈目前的出塊時間過慢,交易確認(rèn)需要等待的時間較長,部分商家為了節(jié)省時間提高效率接受0確認(rèn)的交易,也就是你把交易信息填寫好之后廣播到全網(wǎng)就可以了,不需要等待打包入?yún)^(qū)塊。

如何防范:非常簡單,不接受0確認(rèn)就好,起碼接受一個確認(rèn)后再交割現(xiàn)金。

種族攻擊

這種方式主要通過控制礦工費來實現(xiàn)雙花,同樣是針對接受0確認(rèn)的商家。挖礦的礦工都是逐利的,他們會首選篩選手續(xù)費高的交易進(jìn)行打包處理,種族攻擊正是利用這一點進(jìn)行攻擊。

微信圖片_20180927103708.jpg

如何防范:商家不接受0確認(rèn),至少需要等待一個確認(rèn)。

分割攻擊

邊界網(wǎng)關(guān)協(xié)議(BGP)是因特網(wǎng)的關(guān)鍵組成部分,通過劫持BGP來操縱互聯(lián)網(wǎng)的路由路徑。因為區(qū)塊鏈?zhǔn)腔诨ヂ?lián)網(wǎng)的信息傳遞的,劫持BGP可以實現(xiàn)對區(qū)塊鏈節(jié)點流量的誤導(dǎo)和攔截。節(jié)點的流量一但被接管,又能對整個區(qū)塊鏈網(wǎng)絡(luò)造成巨大的影響,破壞共識機(jī)制,破壞交易等各種信息。

>從2016年11月5日至2017年,通過對節(jié)點網(wǎng)絡(luò)的分析統(tǒng)計發(fā)現(xiàn),目前大多數(shù)比特幣的節(jié)點都托管在少數(shù)特定的幾個互聯(lián)網(wǎng)服務(wù)提供商上,而60%的比特幣連接都是在這幾個服務(wù)商。所以這幾個服務(wù)商的角度可以看到60%的比特幣流量,完全可以接管這部分流量,對區(qū)塊鏈造成巨大的破壞。其他的幣種這個情況更加嚴(yán)重。

攻擊者可以利用BGP劫持,將區(qū)塊鏈網(wǎng)絡(luò)包括網(wǎng)絡(luò)中的節(jié)點劃分成兩個或多個無法通信的獨立網(wǎng)絡(luò),此時的區(qū)塊鏈會分叉為兩條或多條并行鏈。這時候可以在并行的分差上消費代幣的轉(zhuǎn)賬行為,在攻擊停止后,區(qū)塊鏈會以最長的鏈為主鏈重新統(tǒng)一起來,其他的分叉將被廢棄,這些鏈上的交易將全部無效。從而就實現(xiàn)了雙花,甚至是多次花費。

微信圖片_20180927103712.jpg

 

微信圖片_20180927103716.jpg

如何防范:針對的區(qū)塊鏈建立其專用的網(wǎng)絡(luò),不再讓互聯(lián)網(wǎng)服務(wù)提供商代理網(wǎng)絡(luò),這個專用的區(qū)塊鏈網(wǎng)絡(luò)同樣需要去中心化,減少被單點劫持后造成巨大破壞的可能。同時設(shè)立算力監(jiān)控網(wǎng)站,實時匯報全網(wǎng)算力變化情況,算法發(fā)生激烈變化就可以檢查和其他節(jié)點之間的通信。

重放攻擊

指攻擊者再次全網(wǎng)廣播一個在區(qū)塊鏈網(wǎng)絡(luò)上竊聽截取到的交易消息,進(jìn)行欺詐實現(xiàn)多次收賬,形象一點就是一張支票多次兌現(xiàn),從轉(zhuǎn)賬方處多次“偷錢”,算是一種廣義上的“雙花”,重放攻擊能導(dǎo)致多次付款,卻不需要來自付款者的同意。

使用UTXO結(jié)構(gòu)的區(qū)塊鏈?zhǔn)翘烊坏挚怪胤殴舻?,因為轉(zhuǎn)賬是基于每一筆UTXO(未花費交易輸出)進(jìn)行的原子級別操作,不存在一筆UTXO被重復(fù)扣除的情況,這是不合法的。但是在比如以太坊的賬戶結(jié)構(gòu)中,交易是通過余額判斷合法性的,只要余額足夠就可以進(jìn)行重復(fù)扣款轉(zhuǎn)賬,一筆交易的信息進(jìn)行多次廣播的重放攻擊是可行的。

上述講述的基于傳統(tǒng)網(wǎng)絡(luò)系統(tǒng)中的一條區(qū)塊鏈上的重放攻擊,還有一種區(qū)塊鏈語境下才有的特殊重放攻擊,是同時在幾條鏈上進(jìn)行的。我們進(jìn)行分類說明。

1.一條區(qū)塊鏈上的重放攻擊:

在以太坊等賬戶體系下的區(qū)塊鏈中,重放攻擊一筆交易會導(dǎo)致轉(zhuǎn)出賬戶中的余額反復(fù)減少,收款賬戶中的余額反復(fù)增多。攻擊者首先進(jìn)行一筆收款的交易,比如從交易所提現(xiàn),然后在網(wǎng)絡(luò)中抓取此條交易的數(shù)據(jù),對時間戳等進(jìn)行修改后(此時交易的hash值已經(jīng)發(fā)生巨大變化,網(wǎng)絡(luò)會認(rèn)為是一個新交易),再次在全網(wǎng)中進(jìn)行廣播。礦工接受到這個交易,因為交易中私鑰簽名和公鑰加密齊全,判定為受害者發(fā)送來的交易,檢查余額也足夠,視為合法交易,進(jìn)行打包。這樣攻擊者就又從受害者處收到了一筆轉(zhuǎn)賬,這樣多次進(jìn)行,直到扣完受害者商戶余額為止。

微信圖片_20180927103720.jpg

如何防范:在以太坊的賬戶機(jī)構(gòu)中存在一個參數(shù)nonce,他的值等于從這個賬戶中發(fā)出的交易的數(shù)量,交易其它驗證通過和執(zhí)行完成后,發(fā)送者賬戶中的nonce會自動增加1。當(dāng)一筆交易被礦工驗證是否合法的時候,礦工會比對交易包含的nonce的值,并與該交易的發(fā)送者賬戶中的nonce值進(jìn)行比較,相等才算作合法交易,對它進(jìn)行打包出塊。重放攻擊是無法修改發(fā)送者賬戶的數(shù)值的,只有發(fā)送者有這個權(quán)利,因此當(dāng)接受到重復(fù)交易時,礦工會直接判它無效,從而阻止了重放攻擊。

交易延展性攻擊:UTXO結(jié)構(gòu)下的區(qū)塊鏈,比如比特幣是天然抵抗重放攻擊的,但是有種針對交易所的交易延展性攻擊是可行的,和重放攻擊的攻擊方式非常相似。解釋一下“交易延展性”,在現(xiàn)實生活中,紙幣在使用中,可能由缺角或污跡,但這張紙幣的購買力沒變,只是外觀看上有些不同,我們還可以用它進(jìn)行交易,這就是紙幣的“交易延展性”。在比特幣中,因為礦工驗證交易簽名使用的openssl兼容多種編碼格式,所以在交易發(fā)出后、確認(rèn)前,對交易的簽名進(jìn)行編碼格式的調(diào)整,雖然簽名沒有變化,但是交易的Hash得到的交易ID卻發(fā)生了巨大的變化,會被礦工誤認(rèn)為是一個新交易。黑客利用比特幣的這個“交易延展性”,在交易所提現(xiàn),在到賬前,通過篡改簽名編碼格式獲得交易ID不同的交易,進(jìn)而欺騙交易所稱未收到轉(zhuǎn)賬,實現(xiàn)多次提現(xiàn)。

攻擊案例:2014年2月25日,日本時間上午11點,MT.GOX交易所(俗語門頭溝)因收到重放攻擊損失85萬枚比特幣,當(dāng)時幣價值近4.54億美元,這直接導(dǎo)致了MT.GOX的倒閉。MT.GOX是當(dāng)時比特幣最大的交易所,一度交易量達(dá)到所有比特幣交易的80%,,這次攻擊導(dǎo)致了更嚴(yán)重的后果,直接導(dǎo)致了比特幣價格暴跌到原來1/3的位置,低迷持續(xù)了一整年,很多人沒有熬過這個寒冬。

2.在分叉鏈上進(jìn)行的重放攻擊:

存在分叉幣的情況下才會出現(xiàn)的重放攻擊。在進(jìn)行分叉產(chǎn)生新幣種之后,代碼修改的較少,導(dǎo)致在其中一條鏈上的交易在另一條鏈上很可能是完全合法的。所以你在其中一條鏈上發(fā)起的交易,攻擊者可以復(fù)制到另一條鏈上去重新廣播,也會得到確認(rèn)。這就是區(qū)塊鏈特色的“重放攻擊”。

普通用戶在主鏈分叉為兩條鏈的時候,同時擁有了兩條鏈的資產(chǎn),分叉鏈上的重放攻擊可能導(dǎo)致一條鏈上的資產(chǎn)被盜取。在交易所中的分叉幣之間,不斷存取一種幣,可能會導(dǎo)致另一種分叉幣無故流失,這也可以通過重放攻擊實現(xiàn)。這里就介紹一下怎么對交易所進(jìn)行重放攻擊。

微信圖片_20180927103725.jpg

如何防范:最簡單的辦法就是在剛開始分叉時就對代碼進(jìn)行足夠多的修改,起碼要做到分叉鏈和主要鏈之間的交易信息不通用,這就可以避免損失。但是有部分分叉比較有“脾氣”,比如ETC和ETH,都覺得自己是最純正的一支,決絕修改代碼做出妥協(xié),所以還是建議在分叉之后立馬對不同鏈上的財產(chǎn)進(jìn)行轉(zhuǎn)移,不要再存在分叉前的地址里。

對可用性的攻擊

讓區(qū)塊鏈停止處理網(wǎng)絡(luò)中的有價值的交易和數(shù)據(jù),從而讓整個系統(tǒng)停擺。方法和邏輯都比較簡單,比如給發(fā)送大量垃圾交易堵塞網(wǎng)絡(luò),或者惡意分叉讓節(jié)點無法尋找最長鏈。

粉塵攻擊

大量交易額小到根本不可能、毫無意義的垃圾交易占領(lǐng)區(qū)塊空間,導(dǎo)致正常有價值的交易無法被處理,從而造成區(qū)塊堵塞;于此同時為了搶占交易被打包的機(jī)會,市場會自然的抬高交易手續(xù)費以及GAS費用,回發(fā)生上千倍的增長,導(dǎo)致交易成本過大,基于區(qū)塊鏈之上的落地應(yīng)用,比如游戲等會因為操作成本過高,遭受毀滅性打擊。

實現(xiàn)粉塵攻擊有多重手段,有的是作為交易的發(fā)起者,在全網(wǎng)發(fā)送很多手續(xù)費高但是轉(zhuǎn)賬金額非常小的交易,礦工就會優(yōu)先打包這些交易,從而堵塞區(qū)塊鏈,如此成本較高;或者直接由礦池進(jìn)行攻擊,挑選自己發(fā)出的無意義交易進(jìn)行打包,如此攻擊成本基本為0。

攻擊案例:在過去去兩年中,比特幣一直在被迫處理很多垃圾交易,背后有6到7個礦池向網(wǎng)絡(luò)發(fā)送了大量垃圾交易,導(dǎo)致比特幣網(wǎng)絡(luò)擁堵。在2016年之前比特幣的垃圾交易很少被礦工打包,直到2016年下半年,有7大礦池突然開始接受這些垃圾交易,這7家礦池分別是:1-Hash、Antpool、BitClubNetwork、BTC.com、HaoBTC、KanoCKPool以及ViaBTC。

這很詭異,為什么這么多礦池突然接受了垃圾交易?有心人發(fā)現(xiàn)這和比特幣的一件大事有關(guān):2016年6月27日HaoBTC給比特幣Core開發(fā)組的公開信中,提出了比特幣區(qū)塊大小擴(kuò)容到2M的硬分叉方案。而這些接受垃圾交易的礦池都是此次擴(kuò)容分叉的支持者,這很有可能是他們故意為之,從而向BTC的社區(qū)施加壓力。

一個有趣的例子:教你玩壞朋友的EOS賬戶。,向你的朋友發(fā)送很多比0.00001EOS的轉(zhuǎn)賬,你并且每次都把轉(zhuǎn)賬備注里的128個字符寫滿,這樣這些交易就會發(fā)送到你的朋友的賬戶上,占滿他的賬戶的4KB的內(nèi)存,從而無法進(jìn)行任何操作,他的EOS賬戶必須購買RAM才能繼續(xù)進(jìn)行操作,這樣就玩壞了你朋友的賬戶。

如何防范:很需要礦工們達(dá)成共識,決絕打包交易量過低的垃圾交易,為了區(qū)塊鏈的價值更多的打包有價值的交易,這樣幣才會進(jìn)一步升值,屬于用經(jīng)濟(jì)原理解決問題。還有種方法,類似于ETH的gas費用設(shè)計,交易費 = gas消耗數(shù)量 *gas單價,并人工的設(shè)定一個gaslimit,這是單個區(qū)塊允許的最多gas總量,以此可以用來決定單個區(qū)塊中能打包多少筆交易。但是這樣還是會導(dǎo)致gas單價保障抬高交易成本,當(dāng)前這個問題很難解決。

空塊攻擊

挖礦的礦工拒絕打包網(wǎng)絡(luò)中的交易,在成功挖出的區(qū)塊中,除了挖礦獎勵的coinbase交易外,沒有其他交易,這就產(chǎn)生了一個”空塊”;對BTC網(wǎng)絡(luò)來說,有整整10分鐘系統(tǒng)處于拒絕訪問的情況。個別情況下偶爾出現(xiàn)一次空塊,是沒有問題,但短期內(nèi)頻繁空塊就屬于空塊攻擊了,其效果是使待確認(rèn)交易內(nèi)存池變大,交易平均確認(rèn)時間變長。

在比特幣挖礦的早期,打包空塊可能比打包滿塊的出塊速度更快,礦工更有可能獲取出塊獎勵,因此比特幣挖礦的早期存在者很多的空塊。目前因為挖礦基本采用加入礦池的形式,Hash運算和對交易的打包是在不同的計算機(jī)上并行完成的,往往都是交易以及打包完成,還需要等待Hash運算出隨機(jī)數(shù)。

當(dāng)然可能會存在進(jìn)行惡意攻擊的礦工,這種情況下類似一51%算力攻擊,而且空塊攻擊相比是沒有任何受益的,礦工沒有理由這么做,這是利用了經(jīng)濟(jì)學(xué)原理。

女巫攻擊

又稱Sybil攻擊,攻擊者通過創(chuàng)建大量的假名標(biāo)識來破壞對等網(wǎng)絡(luò)的信任基礎(chǔ),并對一致的共識的達(dá)成造成巨大影響,破壞了系統(tǒng)的冗余策略,比如操縱區(qū)塊鏈選舉,“刷贊”“灌水”等。

還有一種解釋,在區(qū)塊鏈這種對等網(wǎng)絡(luò)中,因為節(jié)點可以隨時加入退出,為了維持網(wǎng)絡(luò)穩(wěn)定,同一份數(shù)據(jù)通常需要備份到多個分布式節(jié)點上,這就是數(shù)據(jù)冗余機(jī)制。如果網(wǎng)絡(luò)中存在一個攻擊者,這個攻擊者可以創(chuàng)建多重身份,攻擊者可以掌握很多個“馬甲”節(jié)點,原來需要備份到多個節(jié)點的數(shù)據(jù),被攻擊者欺騙,全部備份到了由攻擊者創(chuàng)建的節(jié)點上。

因為在對等網(wǎng)絡(luò)中,節(jié)點是一個抽象的概念,并且因為隱私問題,節(jié)點和擁有節(jié)點的人是割裂的,所以一個遠(yuǎn)程的節(jié)點可以識別另一個節(jié)點,卻不必知道這個節(jié)點與物理世界的人的對應(yīng)關(guān)系。

微信圖片_20180927103731.jpg

如何防范:POW共識算法下,女巫攻擊是無效的,因為所有的“投票”都是用計算量說話的,就算你可以創(chuàng)造一萬個馬甲,可是算力并沒有改變,攻擊者在全網(wǎng)的權(quán)力沒有變大。女巫攻擊主要是針對使用BFT拜占庭容錯協(xié)議的區(qū)塊鏈,在這種情況下有兩種解決方法:

基于第三方的身份認(rèn)證: 每加入一個新的節(jié)點都需要與某一個可靠的第三方節(jié)點進(jìn)行身份驗證;

純分布式的身份認(rèn)證: 每加入一個新的節(jié)點都需要獲得當(dāng)前網(wǎng)絡(luò)中所有可靠節(jié)點的認(rèn)證,這種方法采用了隨機(jī)密鑰分發(fā)驗證的公鑰體制的認(rèn)證方式,需要獲得網(wǎng)絡(luò)中大多數(shù)節(jié)點的認(rèn)證才能加入該網(wǎng)絡(luò)。

無利害關(guān)系

出塊者可以無成本地選擇接受多個分叉,以獲取更多的收益,導(dǎo)致市場不知道哪個鏈?zhǔn)钦嬲馁~本。

這是只有POS機(jī)制才會存在的問題,在POS共識機(jī)制下,節(jié)點持有的token的數(shù)量決定了挖出區(qū)塊的可能性,也就是挖礦“算力”。當(dāng)區(qū)塊鏈中出現(xiàn)分叉時,鏈上資產(chǎn)都會1:1的“復(fù)制”到多條分叉上,同時1:1“復(fù)制”的是挖礦的“算力”,所以無論是該分叉是偶然的還是惡意的,對于任何正在驗證交易的節(jié)點來說,不管哪條分叉成為最長鏈,礦工都會得到獎勵,所以最佳策略是在每條鏈上進(jìn)行”挖礦”。

由于他們沒有花費物質(zhì)上的算力,只用token進(jìn)行投票,“挖礦”是0成本的。不管哪條分叉成為最長鏈,礦工都會得到獎勵,沒有必要回歸最長鏈,這變向鼓勵了分叉的出現(xiàn),這種情況下,任何的交易都可能出現(xiàn)上文講的分割攻擊的情況,當(dāng)前區(qū)塊鏈已經(jīng)不再可信。

如何防范:ETH上,提出了Casper的POS/POW混合共識機(jī)制,這是一種基于保證金的經(jīng)濟(jì)激勵共識協(xié)議,可以懲罰所有的惡意行為,惡意分叉的代價是非常大,避免了“無利害關(guān)系”攻擊。

礦工想要挖礦必須抵押一定數(shù)量的ETH所謂保障金。開始驗證區(qū)塊后,礦工需要時刻選擇最長鏈工作,他們將押下保障金作為賭注來擔(dān)保最長鏈。數(shù)個確認(rèn)后,最長鏈被確認(rèn),按賭注比例獎勵礦工。其他在分叉上工作的礦工,如果采用惡意的方式行動、試圖做“無利害關(guān)系”的事,他們將立即遭到懲罰,權(quán)益被沒收,并懲沒保障金。

規(guī)則以及智能合約層面的攻擊

區(qū)塊鏈存在一種“代碼就是法律”的精神,智能合約具有強(qiáng)約束力,但創(chuàng)造一個完全無誤差的代碼是不可能的,代碼書寫的合約具有法律效力,并且在一個不可改變的公開的區(qū)塊鏈中存儲信息,這造就了巨大的風(fēng)險和問題。這是區(qū)塊鏈安全問題的重災(zāi)區(qū),光2018年上半年,因為代碼問題導(dǎo)致的損失就有12億美元左右。

微信圖片_20180927103736.jpg

整數(shù)溢出攻擊

在程序語言中,對整數(shù)類型的變量一般都會有最大值和最小值。智能合約本質(zhì)上也是一份程序代碼,合約中的整數(shù)也會有相應(yīng)的最大值和最小值。一旦變量所存儲的值超過了最大值就會發(fā)生整數(shù)上溢錯誤,導(dǎo)致變量最后存儲的值為0,反之則是整數(shù)下溢錯誤,變量最后存儲的值為變量最大值。當(dāng)然,溢出的情況并不限于以上整數(shù)上溢或者整數(shù)下溢,還可能會在計算、轉(zhuǎn)換等過程中發(fā)生溢出。

在智能合約中的余額,通常由無符號整數(shù)表示,在ETH的編程Solidity中,通常有256比特數(shù)字。當(dāng)無符號整數(shù)下溢或上溢時,它們的值立馬就改變了?,F(xiàn)在我們來看一個常見的下溢的例子。

這里很容易就會發(fā)現(xiàn)一個問題,減去一個比余額還要大1的數(shù)會導(dǎo)致下溢,結(jié)果余額會得到一個很大的數(shù)65535,憑空就創(chuàng)造出了很多的token。

攻擊案例:基于以太坊的多個ERC20智能合約就遭受過整形溢出漏洞的影響,說個智能合約之外的例子:2010年8月15日,有人在比特幣區(qū)塊鏈的第74638塊上發(fā)現(xiàn)了一條讓人震驚的交易,這筆交易里竟然出現(xiàn)了1844億個比特幣,其中各有922億個比特幣被發(fā)送到兩個比特幣地址。這次攻擊的根本原因就是比特幣的驗證機(jī)制中存在大整數(shù)溢出漏洞,由于大整數(shù)溢出為負(fù)數(shù),網(wǎng)絡(luò)各個節(jié)點對黑客的交易均驗證通過,導(dǎo)致了比特幣區(qū)塊鏈中憑空出現(xiàn)了大量比特幣。

微信圖片_20180927103741.jpg

如何防范:書寫代碼時總是檢查代碼中的下溢或上溢,最好的方法是看更新的狀態(tài)是否在字節(jié)范圍內(nèi)。我們可以添加參數(shù)來檢查我們的代碼,作為最后一層保護(hù)。使用安全庫協(xié)助檢查,例如SafeMath或者OpenZeepelin。

可重入攻擊

此種攻擊非常危險,如果一個智能合約的功能模塊在完成運行前,被調(diào)用了很多次的話,這就給了可重入攻擊的可能。

舉個例子:當(dāng)智能合約A需要調(diào)用另一個智能合約B的函數(shù)F1時,智能合約B可以在F1函數(shù)中寫入一個“使智能合約A調(diào)用智能合約B”的代碼,這樣合約A為了獲得調(diào)用結(jié)果,就必須按照合約B的吩咐再次調(diào)用合約B的F1函數(shù),就造成了可重入攻擊。

微信圖片_20180927103746.jpg 

攻擊案例:不得不提及區(qū)塊鏈歷史上最臭名昭著的“The Dao”事件,北京時間2016年6月17日,由于智能合約存在著重大可重入缺陷,區(qū)塊鏈業(yè)界最大的眾籌項目TheDAO遭到攻擊,已導(dǎo)致300多萬ETH資產(chǎn)被分離出The DAO的資產(chǎn)池。The DAO的智能合約中有一個split DAO函數(shù),split DAO函數(shù)被第一次合法調(diào)用后會非法的再次調(diào)用自己,然后不斷重復(fù)這個自己非法調(diào)用自己的過程。這樣的遞歸調(diào)用可以使得攻擊者的DAO資產(chǎn)在被清零之前,數(shù)十次的從TheDAO的資產(chǎn)池里重復(fù)分離出來理應(yīng)被清零的攻擊者的DAO資產(chǎn)。

如何防范:我們看到上面智能合約A中的函數(shù)情況,當(dāng)合約在發(fā)送資金前未能更新其狀態(tài)(用戶余額)時,攻擊者可以連續(xù)調(diào)用撤回功能來耗盡合約的資金,所以會發(fā)生攻擊。為了防范此類攻擊,我們需要讓合約的余額狀態(tài)在資金發(fā)送之前更新,而不是之后,這樣就不會存在多次重復(fù)調(diào)用,不斷轉(zhuǎn)賬的情況。同時對智能合約的Gas進(jìn)行驗證,如果出現(xiàn)無限調(diào)用的情況,會拒絕執(zhí)行。

交易順序依賴攻擊

智能合約的執(zhí)行會隨著當(dāng)前交易處理順序的不同而產(chǎn)生不同的結(jié)果。

比如,攻擊者發(fā)布一個解題合約,在合約中寫給出豐厚的解題獎勵。等有人提交了正確答案后,答案再經(jīng)過其他節(jié)點的確認(rèn),合約才會執(zhí)行獎勵操作。此時攻擊者可以提交一個將獎勵額度調(diào)低的交易,這筆交易肯定是在獎勵操作的后面,理論上不會造成給答題人帶來損失。

但是,在區(qū)塊鏈項目中,交易順序并不是一成不變的,例如在以太坊中,交易順序就會隨著交易發(fā)布者的gas(交易費)的高低來決定先確認(rèn)哪筆交易。此時若攻擊者更改獎勵額度的交易給的交易費比較高,驗證節(jié)點會先執(zhí)行這筆交易,最終會導(dǎo)致答題人最后得到的獎勵額度是調(diào)低的額度。而攻擊者以一個較低的成本就買到了正確答案。

時間戳依賴攻擊

在區(qū)塊鏈中,時間戳是由礦工生成的,合約不需要為了核心操作依賴于數(shù)據(jù)塊的時間戳,例如把它用作生成隨機(jī)數(shù)的種子。礦工處理一個新的區(qū)塊時,如果新的區(qū)塊的時間戳大于上一個區(qū)塊,并且時間戳之差小于900秒,那么這個新區(qū)塊的時間戳就是合法的。這是以太坊協(xié)議所規(guī)定的。時間戳依賴顧名思義就是指智能合約的執(zhí)行依賴當(dāng)前區(qū)塊的時間戳,隨著時間戳的不同,合約的執(zhí)行結(jié)果也有差別。

攻擊案例:如果有一個抽獎合約,要求由當(dāng)前的時間戳和其它可提前獲知的變量計算出一個“幸運數(shù)”,與“幸運數(shù)”相同的編碼的參與者將獲得獎品。那么礦工在挖礦過程中可以提前嘗試不同的時間戳來計算好這個“幸運數(shù)”,從而將獎品送給自己想給的獲獎?wù)摺?/span>

調(diào)用深度攻擊

在合約虛擬機(jī)中,會對智能合約的互相調(diào)用的深度定一個閾值,超過這個深度調(diào)用就會失敗,例如在以太坊EVM中,調(diào)用深度被限制為1024。如果攻擊者發(fā)起一系列的遞歸調(diào)用,讓棧深度到達(dá)了1023,之后它再調(diào)用你的關(guān)鍵函數(shù),就會自動導(dǎo)致這個函數(shù)所有的子調(diào)用失敗。

西安軟件開發(fā)、西安APP開發(fā)、西安軟件外包、西安軟件開發(fā)、西安網(wǎng)站建設(shè)、電商軟件開發(fā)、社交軟件開發(fā)、直播軟件開發(fā)、西安網(wǎng)站制作、西安區(qū)塊鏈開發(fā)

調(diào)用深度攻擊可以讓合約調(diào)用失敗,即使這個調(diào)用在邏輯上不存在任何問題,但是在虛擬機(jī)層面以及不被允許了,因為調(diào)用深度達(dá)到了虛擬機(jī)中的閾值,超過閾值不再往下執(zhí)行。攻擊者可以通過控制調(diào)用深度,來使某些關(guān)鍵操作無法執(zhí)行,例如:轉(zhuǎn)賬、余額清零等。

攻擊案例:比如在區(qū)塊鏈上實現(xiàn)一個拍賣的智能合約,由于拍賣過程中可能存在多次競價,需要很多次的調(diào)用合約中的出家函數(shù),可能會出現(xiàn)有用戶惡意刷出價次數(shù),直到虛擬機(jī)中的調(diào)用深度達(dá)到1023次的臨界值,然后再成交,發(fā)送轉(zhuǎn)賬請求,此時調(diào)用轉(zhuǎn)賬的sent()函數(shù)就會失敗,導(dǎo)致財產(chǎn)損失。

互聯(lián)網(wǎng)如何助中國制造走向“智造”

2018-09-27

隨著我國勞動力等要素成本上升,以及全球貿(mào)易保護(hù)主義抬頭,中國制造正面臨諸多嚴(yán)峻挑戰(zhàn)。專家認(rèn)為,不僅要盡可能保持并擴(kuò)大中國制造業(yè)門類全、配套能力強(qiáng)的規(guī)模優(yōu)勢,同時還要加快推動制造業(yè)和互聯(lián)網(wǎng)深度融合,爭取由大到強(qiáng),實現(xiàn)高質(zhì)量發(fā)展

veer-142050717.jpg

  “中國低成本要素發(fā)展時代已經(jīng)結(jié)束,從2008年到2017年不到10年間,一些國家出臺貿(mào)易保護(hù)措施多達(dá)800余項。中國制造業(yè)受封鎖、打壓還會持續(xù)相當(dāng)長的歷史時期?!比涨?,在由國務(wù)院參事室等單位主辦、新華網(wǎng)承辦的“2018國是論壇”上,河北省政府參事王福強(qiáng)指出,業(yè)界對此應(yīng)有清醒的認(rèn)識。面對挑戰(zhàn),中國制造如何由大變強(qiáng),由高速發(fā)展進(jìn)入高質(zhì)量發(fā)展時代?

  “規(guī)模效應(yīng)和產(chǎn)業(yè)配套能力,是我國制造業(yè)重要的競爭優(yōu)勢。”國務(wù)院發(fā)展研究中心產(chǎn)業(yè)經(jīng)濟(jì)研究部第四研究室主任許召元指出,要盡可能保持并擴(kuò)大中國制造業(yè)的規(guī)模,保持門類全、配套能力強(qiáng)的優(yōu)勢,防止在制造業(yè)質(zhì)量還沒有提高到一定水平時,出現(xiàn)大規(guī)模低端產(chǎn)業(yè)轉(zhuǎn)移,造成產(chǎn)業(yè)“空心化”現(xiàn)象。

  在保“大”的同時,中國制造更迫切需要解決如何變“強(qiáng)”的問題?!澳壳盎ヂ?lián)網(wǎng)在流通領(lǐng)域的應(yīng)用深入人心,減少了相關(guān)的交易費用,但對提升產(chǎn)品質(zhì)量、品質(zhì)的幫助還不夠。”國務(wù)院參事陳全生說,應(yīng)推動制造業(yè)和互聯(lián)網(wǎng)深度融合,讓制造業(yè)“插上互聯(lián)網(wǎng)的翅膀”,以解決產(chǎn)能過剩等問題。

  “2010年,三一集團(tuán)實現(xiàn)100億元利潤用了7萬人;今年同樣完成100億元利潤只用了3.1萬人?!比患瘓F(tuán)董事、總裁唐修國介紹,三一通過發(fā)展工業(yè)互聯(lián)網(wǎng),重塑商業(yè)模式,變成了為全行業(yè)服務(wù)的平臺;數(shù)字化工廠對裝備和客戶數(shù)據(jù)進(jìn)行挖掘,提升了效率。

  中國電子信息產(chǎn)業(yè)發(fā)展研究院副院長劉文強(qiáng)認(rèn)為,目前單個企業(yè)創(chuàng)新做得很好,但要建成世界級先進(jìn)制造業(yè)集群,就必須集聚全球資源,搭建支撐整個制造業(yè)發(fā)展的創(chuàng)新體系。此外,比如航空工業(yè)要解決飛機(jī)葉片所需耐高溫材料的問題,我國在軟件、集成電路等方面還有很多弱項,這些都需要加強(qiáng)工業(yè)基礎(chǔ)。

  互聯(lián)網(wǎng)技術(shù)的蓬勃發(fā)展,也為從需求端拉動制造業(yè)質(zhì)量提升提供了手段。“很多消費者到日本去買其實是中國生產(chǎn)的馬桶蓋,說明并不是國內(nèi)的產(chǎn)品不行,而是消費者對國貨的信心不足。”許召元認(rèn)為,要提升消費者信心,必須充分利用大數(shù)據(jù)等技術(shù)手段,加強(qiáng)市場監(jiān)測和信息完善,保護(hù)消費者權(quán)益,營造讓消費者買得放心、安心、省心的環(huán)境。

  西安軟件開發(fā)、西安APP開發(fā)、西安軟件外包、西安軟件開發(fā)、西安網(wǎng)站建設(shè)、電商軟件開發(fā)、社交軟件開發(fā)、直播軟件開發(fā)、西安網(wǎng)站制作、西安區(qū)塊鏈開發(fā)

  阿里研究院副院長楊健也認(rèn)為,過去制造業(yè)更注重產(chǎn)品質(zhì)量和功能。到了數(shù)字經(jīng)濟(jì)時代,“90后”“00后”消費者越來越注重產(chǎn)品設(shè)計、生產(chǎn)環(huán)節(jié)以及購物、使用過程中的體驗,制造業(yè)一定要抓住需求新變化,為消費者“量身定制”。

  互聯(lián)網(wǎng)對制造業(yè)水平的提升作用,還體現(xiàn)在遠(yuǎn)程教育幫助提高工人素質(zhì)。“要從中國制造走向中國創(chuàng)造、中國智造,亟需一大批熟練的技術(shù)工人。但是,目前產(chǎn)業(yè)大軍主體還是初中及初中以下文化程度的農(nóng)民工?!标惾f,龐大的產(chǎn)業(yè)工人隊伍只能靠自己培養(yǎng)。

  世界銀行全球營商環(huán)境評價報告顯示,從2013年到2017年我國開辦企業(yè)便利度排名大幅提升了65位。國家市場監(jiān)督管理總局登記注冊局副局長陳燁表示,下一步我國將推動“證照分離”改革,進(jìn)一步優(yōu)化市場準(zhǔn)入的各項管理制度,同時力爭2019年上半年實現(xiàn)全國企業(yè)開辦時間壓縮到8.5天以內(nèi),通過優(yōu)化營商環(huán)境,促進(jìn)企業(yè)更好發(fā)展。

64歲圖靈獎得主破解區(qū)塊鏈“不可能三角”

2018-09-26

區(qū)塊鏈自問世以來就被形容成一項無所不能的科技,被看好能影響各行各業(yè),甚至重塑生產(chǎn)關(guān)系。然而區(qū)塊鏈自身,卻存在著稱為“不可能三角”的技術(shù)瓶頸,至今仍遠(yuǎn)遠(yuǎn)無法施展它的潛能。

所謂的區(qū)塊鏈“不可能三角”,也稱為“三元悖論”,就是指區(qū)塊鏈網(wǎng)絡(luò)無論采用哪種共識機(jī)制來決定新區(qū)塊的生成方式,皆無法同時兼顧擴(kuò)展性(Scability)、安全性(Security)、去中心(Decentralization)這三項要求,至多只能三者取其二。

1.jpg

圖|區(qū)塊鏈“不可能三角”

64 歲的圖靈獎得主、美國麻省理工學(xué)院計算機(jī)科學(xué)與人工智能實驗室(MIT CSAIL)教授希爾維奧·米卡利(Silvio Micali)提出了一個解決方案——Algorand,宣稱已能破解這一不可能三角!

這個大膽宣稱、加上圖靈獎光環(huán),讓 Algorand 今年初正式問世以來,就備受萬眾矚目。所有人都亟欲揭開 Algorand 面紗,了解米卡利究竟如何實現(xiàn)把不可能化為可能。

米卡利于 9 月初訪華,連走上海、北京數(shù)站現(xiàn)身說法,幾乎場場爆滿,在中國開發(fā)者社區(qū)掀起一陣旋風(fēng)。DT 君在此期間獨家專訪米卡利及其團(tuán)隊核心成員,揭開 Algorand 誕生過程,并提出外界對 Algorand 最常有的三大關(guān)鍵疑問,米卡利都一一釋疑,包含首度對外透露 Algorand 的代幣發(fā)行規(guī)劃。

2.jpg

 圖|米卡利出席上海區(qū)塊鏈周

“區(qū)塊鏈的應(yīng)用之廣是沒有限制的,它確實是非常理想的技術(shù),但卻有一個很大的“但是”(but),就是著名的不可能三角”,米卡利對 DT 君說,在目前的狀況下,我們通常只能得其二,無法三者兼得。

現(xiàn)有著名公鏈皆無法同時滿足三項要件

以比特幣為代表的 POW(Proof of Work, 工作量證明)共識機(jī)制,理論上可以在大量算力的基礎(chǔ)上,對安全性和去中心化有較高保障。但缺點就是難以提升擴(kuò)展性,速度慢、成本高。更別提還會造成能源浪費、且實際上也已被證明算力非常集中。

較新型態(tài)的 POS(Proof of Stake, 權(quán)益證明),則是以太坊目前正在融合發(fā)展的方向。其基本理念是持有股份愈多、時間愈長,則權(quán)利愈大。這在一定程度上提升效率、減少了挖礦能源浪費,但卻難以避免中心化的問題。

而其它更新型態(tài)的共識機(jī)制如 DPOS(Delegated Proof of Stake, 股份授權(quán)證明)或 PBFT(Practical Byzantine Fault Tolerance, 拜占庭容錯算法),同樣存在各自局限,不能完全解決問題。

微信圖片_20180926102353.jpg

表|現(xiàn)有著名公鏈皆無法同時兼顧安全性、擴(kuò)展性與去中心

揭秘 Algorand 在 MIT CSAIL 如何誕生

但米卡利認(rèn)為,區(qū)塊鏈要想實現(xiàn)大規(guī)模應(yīng)用,就一定要能同時滿足擴(kuò)展性、安全性和去中心這三個條件。

米卡利坦言,自己最初和許多人一樣,曾經(jīng)相當(dāng)排斥比特幣這回事。然而,當(dāng)他在 2013 年終于真正認(rèn)識了比特幣后,就立刻發(fā)現(xiàn)它的命題令人贊嘆,只是,“解決方案不夠優(yōu)美(elegant)?!?/span>

他試圖找尋其它更好的解決方案,卻沒有任何一個令他滿意。于是,他決定自己從頭開始打造一個。不僅如此,他更號召麾下門徒一同效力。其中,最核心的早期成員之一,就是他的一名中國博士生、當(dāng)時已在紐約州立大學(xué)石溪分校(SBU)任教的陳婧。

“米卡利是在 14、15 年就把我拽回去的”,現(xiàn)為 Algorand 首席科學(xué)家的陳婧對 DT 君透露,Algorand 并非一朝一夕簡單架構(gòu)出來,最剛開始是 MIT CSAIL (麻省理工學(xué)院計算機(jī)及人工智能實驗室)里一群 7、8 人的早期團(tuán)隊,從最根本開始分析問題,直到 2017 年底才把原型設(shè)計出來,400 萬美元的種子融資也大約同時到位。

4.jpg

圖|Algorand 首席科學(xué)家陳婧畢業(yè)于清華大學(xué),是區(qū)塊鏈領(lǐng)域中極其少見的女性開發(fā)者。她不僅是 SBU 計算機(jī)科學(xué)助理教授,同時研究領(lǐng)域也橫跨分布式賬本、博弈理論,以及演算法,是區(qū)塊鏈領(lǐng)域中少見具有如此廣泛研究背景的人才。

Algorand 由“algorithm”(算法)和“random”(隨機(jī))兩個字組合而成。其測試網(wǎng)已在今年 7 月宣布上線,開放申請測試。由其原型可看出,米卡利想要采取創(chuàng)新的思路來解決目前基礎(chǔ)公鏈的普遍難題,而他的構(gòu)想主要可以從三個角度來說明。

獨創(chuàng)“純粹的權(quán)益證明”(Pure Proof of Stake)

第一,Algorand 是一個“純粹的權(quán)益證明”(Pure Proof of Stake)。每一枚代幣都擁有相同權(quán)利,不需要提出作為抵押。新的區(qū)塊是透過投票產(chǎn)生,每個人都可以參與或授權(quán),并通過適當(dāng)?shù)募顧C(jī)制來鼓勵參與。

超快速拜占庭協(xié)議,“即時發(fā)起與確認(rèn)”達(dá)成共識

其次,Algorand 通過“即時發(fā)起與確認(rèn)”(Immediate Propose-and-agree)來形成共識。陳婧形容,這是一種“新的超快速拜占庭協(xié)議(Byzantine Agreement)”。拜占庭協(xié)議是普遍運用于區(qū)塊鏈的通訊協(xié)議模式,主要是處理在分散式對等網(wǎng)絡(luò)中如何達(dá)成共識協(xié)議并保證網(wǎng)絡(luò)不被破壞的問題。

Algorand 的共識機(jī)制分成兩個步驟,分別是“發(fā)起”(Propose)與“協(xié)議”(Agreement)。

在第一個步驟“發(fā)起”,系統(tǒng)會隨機(jī)選擇一個代幣,公布其公鑰,由公開持有者簽名并發(fā)起一個新的區(qū)塊,關(guān)鍵是這一過程可以非??焖?。

而在第二個步驟“協(xié)議”,系統(tǒng)會再由用戶中隨機(jī)選出 1000 名驗證者并公布其公鑰,由這 1000 名用戶達(dá)成共識并進(jìn)行簽名,新的區(qū)塊便得以生成。

而這些過程將以 Algorand 獨創(chuàng)的加密抽簽(cryptographic sortition)技術(shù)來隨機(jī)選擇用戶,無法事先預(yù)知是哪些人會被選中。

5.jpg

能夠持續(xù)“演化”的區(qū)塊鏈

第三,通過這種共識機(jī)制,Algorand 也解決了區(qū)塊鏈中最令人頭痛的分叉問題,使其成為一個可以持續(xù)“演化”的公鏈。

由于區(qū)塊鏈的去中心化設(shè)計,每個節(jié)點都必須保持一致,這使得單純的系統(tǒng)升級在區(qū)塊鏈上很難做到,每當(dāng)改變規(guī)則,動輒就會導(dǎo)致系統(tǒng)分叉。但 Algorand 卻是幾乎不會出現(xiàn)分叉的分布式賬本,因為其分叉的概率低至僅為 10 的-18 次方。

“我不想夸稱這是一個革命,但這確實是一個很大的進(jìn)步”,米卡利在上海一場開發(fā)者見面會上如此自信地說。

米卡利認(rèn)為,基礎(chǔ)公鏈必須要解決分叉問題,能夠持續(xù)演化。因為區(qū)塊鏈?zhǔn)侨藶樵O(shè)計的產(chǎn)物,不可能完美,一定會存在很多缺點。“就像一艘船出海,可能有天氣、有船身、有船員的問題。最好的解決辦法就是要讓它有持續(xù)進(jìn)化的可能”

兼顧擴(kuò)展、安全與去中心,Algorand 克服區(qū)塊鏈不可能三角!

回到區(qū)塊鏈的不可能三角來檢視,Algorand 通過所有代幣權(quán)利相等、每個步驟皆隨機(jī)替換參與者,來確保整個網(wǎng)絡(luò)可以最大程度去中心化。

Algorand 借由加密抽簽組建臨時驗證委員會來減輕工作量、提升效率,也保證了網(wǎng)絡(luò)的可擴(kuò)展性。

且因驗證者皆為隨機(jī)秘密選出,即便“敵對者”可以瞬間加以腐化,但也來不及篡改或撤回他們對外發(fā)出的消息,而下一輪又將是新一批隨機(jī)選出的參與者。所以也讓安全性有極大的保證。

6.jpg

話雖如此,Algorand 并非完美無瑕。DT 君在專訪中直接對米卡利提出外界對 Algorand 最主要的三大疑問。

關(guān)鍵提問 1:Algorand 缺乏激勵機(jī)制設(shè)計,難以吸引參與者?

首先,Algorand 最常被質(zhì)疑的一點就是其模型中缺乏激勵機(jī)制的設(shè)計。正如比特幣是靠著 POW 機(jī)制,每生成一個區(qū)塊就發(fā)放若干枚比特幣作為獎勵,吸引礦工提供算力來驗證鏈上交易。激勵機(jī)制在絕大多數(shù)區(qū)塊鏈基礎(chǔ)公鏈中都堪稱是最核心、最不可或缺的要素之一。

一位重量級區(qū)塊鏈平臺的核心開發(fā)人員就私下對 DT 君分析,Algorand 的設(shè)計確實很“優(yōu)雅”,但缺少獎勵的區(qū)塊鏈,很難吸引到足夠的參與者。

對此米卡利強(qiáng)調(diào),Algorand 并非沒有激勵機(jī)制,而是將會提出一套更安全的激勵機(jī)制。事實上他認(rèn)為,激勵機(jī)制是長期被忽略的一塊,自從有加密貨幣以來,激勵機(jī)制就沒有被好好設(shè)計過。但如果激勵機(jī)制不夠安全,那還不如沒有激勵。

“過于簡單的激勵設(shè)計是有問題的。并不是有激勵機(jī)制,就可以驅(qū)使人們做應(yīng)該做的事情。因為人們只會想要極大化自身利益,未必會按照你的設(shè)想去行動”,米卡利指出,比特幣就是最好的例子?,F(xiàn)在我們所看到的大型礦池、算力集中,絕對不是中本聰當(dāng)初所設(shè)想的情形。

“激勵機(jī)制若設(shè)計不當(dāng),可能會解決一個問題,但卻創(chuàng)造另一個問題”,陳婧也說。

那么 Algorand 將會設(shè)計什么樣的激勵機(jī)制呢?米卡利解釋,Algorand 想要做的是激勵參與者,而且是所有人的參與,我們想要獎勵的,不是礦工挖礦的這一行動,而是驅(qū)使整個社會都為采取這一行動做好準(zhǔn)備,“這是一個非常核心的概念”。換句話說,也就是讓整個激勵機(jī)制不是只能吸引少數(shù)專業(yè)礦工,而是能夠盡可能地吸引更多一般人參與。

他更透露,相較于現(xiàn)在比特幣挖礦門檻已經(jīng)高到不是任何一般人所能輕易參與,Algorand 將保證“工作”將會非常輕松,輕松到所有人在家用自己的電腦,也能完成所有的工作。

有多輕松?米卡利舉例說,有人會為了省電而不自己在家收發(fā)電子郵件嗎?絕對不會!根本沒有這個需要。因為現(xiàn)在電子郵件系統(tǒng)所消耗的算力與電費,基本上低到可以忽略不計。Algorand 想要做到的,就是讓區(qū)塊鏈的“工作”也能變得如此輕量化。

關(guān)鍵提問 2:Algorand 如何募資?如何發(fā)行代幣?

同時,外界亦高度關(guān)注 Algorand 的代幣發(fā)行規(guī)劃。過去甚少談及這一塊的米卡利,在本次專訪中明確告知 DT 君,Algorand 的種子輪募資是通過股權(quán)的方式來融資,因為這是一個完全合規(guī)的募資管道。這意味著,只有合格投資人、創(chuàng)投與天使投資人,才能參與到 Algorand 的募資。

他強(qiáng)調(diào),現(xiàn)階段,團(tuán)隊將負(fù)責(zé)完成 Algorand 基礎(chǔ)開發(fā)工作。未來團(tuán)隊不會銷售代幣,而團(tuán)隊所分配的代幣也會長期持有。

往后,Algorand 的代幣 Algo 將會通過設(shè)立在新加坡的基金會進(jìn)行代幣發(fā)行,方式是透過一系列的拍賣(auction),對象是所在國家可以合法進(jìn)行代幣購買的機(jī)構(gòu)和個人。米卡利指出,拍賣的好處是,Algorand 團(tuán)隊不會決定價格,而是由市場來決定價格。任何機(jī)構(gòu)和個人只要通過KYC(know your customer)審核,都可以參與 Algo 拍賣。

當(dāng)然,除了經(jīng)由拍賣的方式來取得代幣,用戶也可以通過參與 Algorand 的工作、對生態(tài)作出貢獻(xiàn)的方式來獲得獎勵。

關(guān)鍵提問 3:Algorand 是學(xué)院派創(chuàng)業(yè),商業(yè)化實踐能力有待商榷?

此外,外界還常有的一個疑問是,Algorand 是學(xué)院派創(chuàng)業(yè),商業(yè)化執(zhí)行能力恐值得懷疑。

對此陳婧指出,Algorand 團(tuán)隊從很早就已將商業(yè)化實踐納入考量,并經(jīng)由天使投資人延攬到曾是成功創(chuàng)業(yè)家的首席執(zhí)行官,以及擁有多年產(chǎn)業(yè)經(jīng)驗的工程長(Head Of Engineering),強(qiáng)化團(tuán)隊產(chǎn)品化能力。“就連米卡利本人也有過其它創(chuàng)業(yè)經(jīng)驗”,陳婧強(qiáng)調(diào)。

并且,Algorand 的原創(chuàng)性極高,也使得這個項目很可能只有它的設(shè)計者本人才能加以實踐出來。

“Algorand 并非借用他人基礎(chǔ),而是完全從零開始做起”,米卡利對 DT 君解釋,要想把這個想法實踐出來,需要一個真正有能力的團(tuán)隊。“所以我們創(chuàng)立了 Algorand,在一個公司的架構(gòu)下,我們可以更明確、更負(fù)責(zé)地將這個項目開發(fā)出來?!?/span>

西安軟件開發(fā)、西安APP開發(fā)、西安軟件外包、西安軟件開發(fā)、西安網(wǎng)站建設(shè)、電商軟件開發(fā)、社交軟件開發(fā)、直播軟件開發(fā)、西安網(wǎng)站制作、西安區(qū)塊鏈開發(fā)

陳婧補(bǔ)充,Algorand 脫胎自 MIT CSAIL,開發(fā)能力極強(qiáng),同時這是一個她所看過“默契最好、工作流程最順暢的團(tuán)隊?!?/span>

但米卡利也說,與其說 Algorand 是一家公司(company),更好的說法是一個團(tuán)隊(team)。Algorand 真正想做的并不僅僅是一個創(chuàng)業(yè),而是把構(gòu)想給實踐出來。

采訪最后,他清晰地說,“我們會盡可能持續(xù)最久的時間以一個團(tuán)隊的狀態(tài)工作,對這個項目負(fù)責(zé)?!?/span>