国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

區(qū)塊鏈的應(yīng)用:安全威脅與解決策略*

2020-03-25 07:34:48劉宗妹
通信技術(shù) 2020年1期
關(guān)鍵詞:私鑰哈希攻擊者

劉宗妹

(廣東司法警官職業(yè)學(xué)院 信息管理系,廣東 廣州 510520)

0 引 言

區(qū)塊鏈技術(shù)利用時(shí)間順序?qū)?shù)據(jù)區(qū)塊以鏈的形式組合而成實(shí)現(xiàn)了可追溯性,利用點(diǎn)對(duì)點(diǎn)通信技術(shù)實(shí)現(xiàn)了對(duì)等連接,利用分布式共識(shí)技術(shù)實(shí)現(xiàn)了系統(tǒng)數(shù)據(jù)的一致性,利用加密技術(shù)防止數(shù)據(jù)被篡改或者被偽造,利用智能合約技術(shù)實(shí)現(xiàn)了交易的自主處理。通過加密算法、點(diǎn)對(duì)點(diǎn)通信技術(shù)、分布式共識(shí)機(jī)制和智能合約技術(shù)的結(jié)合,構(gòu)建數(shù)據(jù)存儲(chǔ)和處理的分布式賬本技術(shù)。由于跨行業(yè)融合發(fā)展,它也從最初的“為比特幣而生”發(fā)展為橫跨銀行、保險(xiǎn)、醫(yī)療等各行各業(yè)的“開拓者”,實(shí)現(xiàn)計(jì)算機(jī)技術(shù)于大數(shù)據(jù)、云計(jì)算、互聯(lián)網(wǎng)時(shí)代的“區(qū)塊鏈+”創(chuàng)新模式。

區(qū)塊鏈技術(shù)最早被提出是在2008年中本聰發(fā)表的論文《比特幣白皮書:一種點(diǎn)對(duì)點(diǎn)的電子現(xiàn)金系統(tǒng)》中。伴隨人們對(duì)比特幣的重視,作為比特幣底層技術(shù)的區(qū)塊鏈也引起了極大關(guān)注。依據(jù)Gartner公布的成熟度曲線圖,2016年區(qū)塊鏈技術(shù)達(dá)到頂峰。區(qū)塊鏈技術(shù)要進(jìn)一步發(fā)展,則必須應(yīng)用于實(shí)際中,否則只是虛的概念。近幾年,區(qū)塊鏈在多方信任共識(shí)、數(shù)據(jù)存證、溯源防偽等方面呈現(xiàn)較好的發(fā)展態(tài)勢(shì)。例如,信息安全方面,當(dāng)前環(huán)境對(duì)其提出了高效性、可追蹤性和分布式等要求,而區(qū)塊鏈的去中心化、不可篡改性和可追溯性正好能夠更優(yōu)地解決身份認(rèn)證、數(shù)據(jù)保護(hù)和訪問控制等方面的問題。身份認(rèn)證是對(duì)網(wǎng)絡(luò)中用戶的身份鑒定技術(shù),目前基于數(shù)字證書的集中式PKI認(rèn)證面臨CA不可信的問題,而基于區(qū)塊鏈的分布式公鑰管理基礎(chǔ)設(shè)施(Public Key Infrastracture,PKI)系統(tǒng)Certcoin,通過公共賬本記錄用戶證書,并將其公開,任何用戶都可查詢,解決了證書公開程序和CA問題[1]。

1 區(qū)塊鏈安全威脅

區(qū)塊鏈的去中心化,很好地實(shí)現(xiàn)了可擴(kuò)展性、健壯性、隱私性和負(fù)載均衡性,避免了中心化結(jié)構(gòu)出現(xiàn)的單點(diǎn)崩潰的風(fēng)險(xiǎn),因此剛開始出現(xiàn)時(shí)從不同方面解決了一些安全問題。但是,隨著規(guī)模逐步增大,安全問題越來越多。正如著名網(wǎng)絡(luò)安全專家Benjamin Kunz Mejri在我國互聯(lián)網(wǎng)大會(huì)上所說“沒有攻不破的系統(tǒng)”,區(qū)塊鏈的安全性也是相對(duì)的。

1.1 51%的攻擊和雙花攻擊

51%攻擊未必是雙花攻擊,而雙花攻擊一定要在51%攻擊的前提下進(jìn)行的。51%算力攻擊的根源是共識(shí)機(jī)制,因?yàn)楸忍貛攀褂盟懔ψ鳛楦?jìng)爭條件,51%算力攻擊就是攻擊者掌握超過51%的資源,使新的交易不能被確認(rèn),從而終止交易。也可快速完成交易的確認(rèn),使攻擊者的交易信息更多地接入?yún)^(qū)塊鏈,造成區(qū)塊鏈的安全隱患。雙花攻擊的起因是驗(yàn)證機(jī)制,若在控制51%算力的基礎(chǔ)上創(chuàng)建新分支來進(jìn)行交易回滾,即需兩次相同資產(chǎn)來得到第一筆交易的資產(chǎn),從而影響了區(qū)塊鏈的完整性,造成雙花攻擊。例如,2018年5月,一名礦工通過獲得至少51%的算力,對(duì)比特幣黃金網(wǎng)絡(luò)進(jìn)行雙重攻擊,從而盜取了超過388 200個(gè)比特幣黃金,損失1 860萬美元[2]。

1.2 智能合約漏洞和智能合約虛擬機(jī)漏洞

智能合約實(shí)際上是構(gòu)建信任關(guān)系網(wǎng)絡(luò)中的代碼,使程序可能出現(xiàn)錯(cuò)誤或者漏洞。現(xiàn)存智能合約安全問題包括存儲(chǔ)損壞、整數(shù)溢出等,通過控制合約中的令牌對(duì)合同用戶造成破壞。網(wǎng)絡(luò)中每個(gè)節(jié)點(diǎn)都在本地機(jī)上運(yùn)行程序,攻擊者可造成虛擬機(jī)執(zhí)行無限次循環(huán)程序甚至完全控制機(jī)器,從而造成智能合約虛擬機(jī)漏洞。例如,2016年6月17日,攻擊者利用智能合約中的SplitDAO函數(shù)的漏洞對(duì)區(qū)塊鏈的眾籌項(xiàng)目TheDAO進(jìn)行攻擊,導(dǎo)致6 000萬美金的數(shù)字貨幣被獲取。

1.3 DDoS攻擊

分布式拒絕服務(wù)(Dsitributed Denial of Service,DDoS)是從拒絕服務(wù)(Denial of Service,DoS)發(fā)展來的。所謂DoS是指攻擊者通過阻止合法用戶訪問網(wǎng)絡(luò)資源來達(dá)到自己的目的。而DDoS將攻擊的網(wǎng)絡(luò)包從很多的DoS攻擊源一起涌到主機(jī),致使合法請(qǐng)求無法被響應(yīng)。在區(qū)塊鏈中,DDoS通過向節(jié)點(diǎn)發(fā)送大批量請(qǐng)求,使造成拒絕服務(wù)攻擊的威力成倍放大;通過漏洞占用節(jié)點(diǎn)的內(nèi)存,造成系統(tǒng)崩潰。DDoS攻擊造成的經(jīng)濟(jì)方面的損失只是一部分危害,最重要的是造成信任度降低。

1.4 分叉

分叉問題指的是當(dāng)區(qū)塊鏈的系統(tǒng)升級(jí)時(shí),共識(shí)機(jī)制也產(chǎn)生了新協(xié)議,已經(jīng)升級(jí)了的節(jié)點(diǎn)稱為新節(jié)點(diǎn),而沒有升級(jí)的節(jié)點(diǎn)為舊節(jié)點(diǎn)。當(dāng)新節(jié)點(diǎn)掌握超過51%算力的時(shí)候,出現(xiàn)了鏈上擴(kuò)容的硬分叉和采用隔離見證SegWit軟分叉[2]。

硬分叉。發(fā)布新的共識(shí)機(jī)制之后,未升級(jí)的節(jié)點(diǎn)沒有辦法驗(yàn)證已經(jīng)升級(jí)的節(jié)點(diǎn)所產(chǎn)生的區(qū)塊,在此區(qū)塊鏈中會(huì)有分叉的兩條鏈。一旦出現(xiàn)硬分叉,則區(qū)塊鏈的信任度會(huì)大大降低。例如,2013年3月,比特幣曾發(fā)生硬分叉,最終解決方案是0.8版本的節(jié)點(diǎn)退回0.7版本。

軟分叉:系統(tǒng)升級(jí)時(shí),未升級(jí)的節(jié)點(diǎn)會(huì)產(chǎn)生不合法的區(qū)塊,造成臨時(shí)出現(xiàn)分叉,但其有很好的兼容性,允許逐步升級(jí),實(shí)現(xiàn)平穩(wěn)過渡,所以對(duì)系統(tǒng)的穩(wěn)定性影響較小。

1.5 日蝕攻擊

日蝕攻擊(Eclipse Attack)是指攻擊者通過修改節(jié)點(diǎn)的路由表,將足夠多的壞節(jié)點(diǎn)添加到該節(jié)點(diǎn)周圍,以獨(dú)自占有與受害節(jié)點(diǎn)的所有連接,控制大量的IP地址,從而造成此節(jié)點(diǎn)“孤立”于區(qū)塊鏈網(wǎng)絡(luò)之外,然后利用受害者來攻擊共識(shí)系統(tǒng),進(jìn)而造成對(duì)抗性分叉、偽造挖礦等,實(shí)現(xiàn)網(wǎng)絡(luò)層面的攻擊[3]。

1.6 礦池攻擊

1.6.1 自私的挖礦

一組惡意的礦工挖到新塊后暫時(shí)封鎖消息,并且新建一個(gè)分叉,而其他礦工并不知道新塊的存在而是繼續(xù)在舊塊上挖礦。當(dāng)惡意建造的分叉長過公共鏈后,發(fā)布其私有的分叉。由于它是最長的,所以被接受,而原有的公共鏈被丟棄,從而使其他節(jié)點(diǎn)做了無用功[4]。

1.6.2 塊扣攻擊

礦池中的惡意成員不對(duì)外公布挖到的區(qū)塊,從而浪費(fèi)同伴礦工的算力,降低所有礦池的收入[5]。

1.6.3 塊丟棄攻擊

攻擊者將多個(gè)有較好網(wǎng)絡(luò)連接的節(jié)點(diǎn)放在網(wǎng)絡(luò)中,實(shí)現(xiàn)快速知道新挖的區(qū)塊并迅速傳送區(qū)塊。當(dāng)挖到新塊時(shí)先不公開,知道其他節(jié)點(diǎn)要公布區(qū)塊時(shí),它立刻公布自挖的區(qū)塊并快速傳播到網(wǎng)絡(luò),從而造成合法節(jié)點(diǎn)的區(qū)塊被丟棄[6]。

1.6.4 增加難度攻擊

攻擊者通過挖礦來增加難度,當(dāng)其認(rèn)為難度達(dá)到頂峰后,自動(dòng)離開系統(tǒng),而剩下的礦工面臨非常艱難的采礦過程,從而使生成區(qū)塊的時(shí)間大大增大。

1.6.5 鏈跳躍攻擊

攻擊者通過難度低時(shí)切入、難度高時(shí)切出,從而達(dá)到最大化利潤,造成塊的生成時(shí)間非常不穩(wěn)定。

1.6.6 時(shí)間戳攻擊

攻擊者利用惡意時(shí)間戳而不是系統(tǒng)時(shí)間來欺騙難度調(diào)整算法,使得具有正確時(shí)間戳的塊不能被其他節(jié)點(diǎn)所接受。

1.7 私鑰被泄漏

利用私鑰對(duì)數(shù)據(jù)進(jìn)行簽名并確認(rèn)數(shù)據(jù)的所有權(quán),若通過逆向分析代碼致使節(jié)點(diǎn)的私鑰被盜,那么節(jié)點(diǎn)的身份則有可能被偽造。私鑰被破解是因?yàn)榻灰自O(shè)計(jì)缺陷,一方面橢圓曲線數(shù)字簽名算法ECDSA存在被破解的風(fēng)險(xiǎn),另一方面密鑰生成算法有風(fēng)險(xiǎn)。例如,Android安全漏洞致使比特幣失竊的例子,可能是由隨機(jī)數(shù)產(chǎn)生過程中的漏洞造成的[7]。

1.8 西比爾攻擊

西比爾攻擊(Sybil Attack)是指攻擊者通過控制網(wǎng)絡(luò)中的大多數(shù)節(jié)點(diǎn)來浪費(fèi)其他節(jié)點(diǎn)的算力,從而實(shí)現(xiàn)對(duì)共識(shí)機(jī)制的攻擊。攻擊者引入多個(gè)惡意節(jié)點(diǎn)來控制網(wǎng)絡(luò),從而發(fā)布監(jiān)控和破壞備份機(jī)制等,實(shí)現(xiàn)對(duì)網(wǎng)絡(luò)的攻擊。

1.9 區(qū)塊鏈自身Bug

由于區(qū)塊鏈絕大部分都是開源的,雖然很多人關(guān)注,但也會(huì)存在風(fēng)險(xiǎn)。例如,2017年4月22日,韓國比特幣交易平臺(tái)yapizon被攻擊,市值500萬美金的BTC被盜;2017年7月19日,多重簽名錢包Parity 1.5及以上版本出現(xiàn)漏洞,導(dǎo)致3 000萬美元的以太坊ETH被盜;Mt.Gox交易平臺(tái)由于底層技術(shù)的可鍛造性漏洞,導(dǎo)致攻擊者可重復(fù)提現(xiàn),致使2014年2月28日申請(qǐng)破產(chǎn)保護(hù),最終倒閉[8]。

1.10 內(nèi)容風(fēng)險(xiǎn)

1.10.1 內(nèi)容安全問題

由于允許用戶將一些自定義信息寫在交易數(shù)據(jù)中,從而造成不法分子乘虛而入。例如,2014年5月,攻擊者將病毒DoS/STONED的簽名嵌入?yún)^(qū)塊鏈中,雖未對(duì)用戶造成實(shí)際危險(xiǎn),但Windows殺毒軟件發(fā)出持續(xù)性報(bào)警信號(hào),直到將區(qū)塊鏈文件隔離才停止[7]。

1.10.2 數(shù)據(jù)泄露

由于信息是通過網(wǎng)絡(luò)分發(fā)的,若應(yīng)用被植入惡意代碼,則可導(dǎo)致隱私泄露,即使無惡意代碼也可以通過郵件地址等來訪問數(shù)據(jù),雖然其與真實(shí)身份無直接關(guān)系,但仍可利用聚類分析和污點(diǎn)分析來識(shí)別個(gè)體,進(jìn)而造成數(shù)據(jù)泄露。例如,金融應(yīng)用中,利用交易記錄可追溯此賬戶的具體交易,進(jìn)而分析金融趨勢(shì),造成公司重要數(shù)據(jù)的泄露。

1.11 違法風(fēng)險(xiǎn)

1.11.1 非法內(nèi)容

攻擊者在系統(tǒng)中建非法應(yīng)用程序或放置一些非法內(nèi)容,如反動(dòng)言論、色情內(nèi)容等。由于區(qū)塊鏈的分散性,很難阻止攻擊者的行為;由于區(qū)塊鏈的不可逆性,很難實(shí)現(xiàn)刪除非法內(nèi)容。

1.11.2 犯罪活動(dòng)

以比特幣為代表的數(shù)字密碼貨幣應(yīng)用,因沒有發(fā)行機(jī)構(gòu),想破解擁有者的身份比較難,若被不法分子利用,會(huì)成為非法交易或洗錢的載體。例如,2011年2月,暗網(wǎng)中“絲綢之路”的交易平臺(tái)利用比特幣在網(wǎng)絡(luò)中匿名交易的特征進(jìn)行毒品交易、走私軍火等非法活動(dòng)。

2 區(qū)塊鏈安全保護(hù)措施

2.1 區(qū)塊鏈工作過程

發(fā)送節(jié)點(diǎn)將構(gòu)造的交易在全網(wǎng)廣播,若經(jīng)接收節(jié)點(diǎn)檢驗(yàn)合法后,交易被打包成區(qū)塊。區(qū)塊頭包括哈希值、時(shí)間戳、Nonce和前一區(qū)塊等。Nonce證明礦工完成了工作量,由于包括前一區(qū)塊哈希值,所以構(gòu)造類似數(shù)據(jù)結(jié)構(gòu)中的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)。接收節(jié)點(diǎn)利用共識(shí)機(jī)制對(duì)區(qū)塊檢驗(yàn),若檢驗(yàn)通過則被按順序添加到區(qū)塊鏈中作為一個(gè)區(qū)塊,從而完成一個(gè)操作[9],如圖1所示。

圖1 區(qū)塊鏈的工作過程

區(qū)塊鏈的安全性首先通過共識(shí)機(jī)制來管理節(jié)點(diǎn),從而保持不變性,然后用加密技術(shù)和數(shù)字簽名技術(shù)驗(yàn)證區(qū)塊鏈上交易的真實(shí)性[4]。

2.2 安全模型

區(qū)塊鏈的安全框架模型,如圖2所示。

圖2 安全框架模型

2.3 數(shù)據(jù)安全性

在做數(shù)據(jù)挖掘和數(shù)據(jù)分析時(shí),有80%的時(shí)間是用在有效數(shù)據(jù)的收集和數(shù)據(jù)清洗上。有了區(qū)塊鏈后,基于區(qū)塊鏈的分析和挖掘成本會(huì)被降低,區(qū)塊鏈的數(shù)據(jù)保護(hù)采用去中心化的數(shù)據(jù)管理系統(tǒng),通過區(qū)塊鏈和外面數(shù)據(jù)庫相配合來實(shí)現(xiàn)。區(qū)塊鏈的去中心化、加密、P2P等特性,實(shí)現(xiàn)保護(hù)數(shù)據(jù)的完整性和未被授權(quán)不可訪問。個(gè)人數(shù)據(jù)在區(qū)塊鏈中轉(zhuǎn)化為密文,當(dāng)需要用到這類信息時(shí),只需將密文傳送過去,接收方將信息同區(qū)塊鏈上的加密數(shù)據(jù)對(duì)比,不涉及真實(shí)信息。

比特幣的基礎(chǔ)是區(qū)塊鏈,而區(qū)塊鏈的基礎(chǔ)是密碼學(xué),通過密碼學(xué)實(shí)現(xiàn)了區(qū)塊鏈的防篡改性。具體原理是利用哈希算法在每個(gè)區(qū)塊生成一個(gè)包含上一個(gè)區(qū)塊的哈希值,通過哈希算法具有的正向計(jì)算快速、逆向計(jì)算較難的特性完成數(shù)學(xué)簽名等的驗(yàn)證,實(shí)現(xiàn)了安全訪問、隱私的保護(hù),如圖3所示。

圖3 區(qū)塊鏈的數(shù)據(jù)結(jié)構(gòu)

目前,常用的哈希函數(shù)有MD系列、RIPEMD系列和SHA系列。圖3中,A0、A1、A2、A3表示用戶,通過將前一筆交易和后面那個(gè)人的公鑰來簽一份數(shù)字簽名,并附加到交易的末尾。非對(duì)稱加密中的加密密鑰是公開的,稱為公鑰;解密密鑰由用戶自己持有,稱為私鑰。利用非對(duì)稱加密算法發(fā)送信息前,發(fā)送方先得到接收方的加密密鑰,然后使用密鑰將明文轉(zhuǎn)化為密文,接收者使用解密密鑰將密文還原為明文,通過公鑰和私鑰分開,使其在不安全通道也可傳送,如圖4所示。

圖4 非對(duì)稱加密體系結(jié)構(gòu)

由于RSA不夠安全,區(qū)塊鏈中建議用橢圓曲線密碼系統(tǒng)(Elliptic Curve Cryptosystems,ECC)。通過Hash函數(shù),又叫哈希函數(shù),將任意輸入轉(zhuǎn)化成固定長度的輸出。Merkel樹也叫哈希樹,是一種二叉樹,如圖5所示。

圖5 Merkel樹

分析Merkel結(jié)構(gòu)可以發(fā)現(xiàn),底層數(shù)據(jù)的變化會(huì)引起父親節(jié)點(diǎn)的變化,進(jìn)而輻射到樹根,最終存儲(chǔ)于區(qū)塊頭的值是Merkel根的值。數(shù)字簽名是由非對(duì)稱密碼發(fā)展而來的,為不安全通道的發(fā)送信息提供了進(jìn)一步保證,使接收者確認(rèn)信息是由發(fā)送方發(fā)送的[7]。

2.4 網(wǎng)絡(luò)安全性

2.4.1 垃圾交易防御

設(shè)定最低交易費(fèi)用,盡量減少垃圾交易量。例如,交易以前在智能合約中存入一些令牌,若發(fā)現(xiàn)大批量的垃圾交易,可以通過智能合約沒收存款。

2.4.2 Eclipse攻擊防范

為了防止Eclipse攻擊,可考慮構(gòu)建IP地址的信任評(píng)價(jià)模型,利用18世紀(jì)英國學(xué)者貝葉斯提出的貝葉斯定理,判定一個(gè)IP地址是否值得信賴。式(1)是一個(gè)條件概率,利用它可以實(shí)現(xiàn)對(duì)一個(gè)事件的重新認(rèn)識(shí),也稱為后驗(yàn)概率。

設(shè)IP地址為可信的和不可信的概率分別為0.5:

設(shè)B為可信的IP地址的情況下正常工作和非正常工作的概率分別為0.9和0.1:

設(shè)B為不可信的IP地址的情況下,正常工作和非正常工作的概率分別為0.5和0.5:

則正常工作的概率求解如下:

通過一次正常工作其后驗(yàn)概率上升為0.64:

通過分析發(fā)現(xiàn)IP地址可通過正常工作提升了系統(tǒng)對(duì)它的信任度,當(dāng)連續(xù)正常工作4次后可以提升到91%。雖然若真正構(gòu)建具體模型會(huì)更加復(fù)雜,但具體原理就是貝葉斯定理。通過檢查網(wǎng)絡(luò)中行為不端的IP連接,檢查傳入和傳出連接,從而減少日蝕攻擊對(duì)其造成的影響。

2.4.3 路由攻擊防范

區(qū)塊鏈中的私有鏈、聯(lián)盟鏈可以由第三方認(rèn)證鏈中的節(jié)點(diǎn),從而保證節(jié)點(diǎn)所發(fā)送的路由信息的可靠性。

2.4.4 隱私防御機(jī)制

(1)接入受限

只允許授權(quán)的節(jié)點(diǎn)接入網(wǎng)絡(luò),在聯(lián)盟鏈和私有鏈中使用較多,如超級(jí)賬本中的節(jié)點(diǎn)要經(jīng)CA認(rèn)證才可接入。

(2)屏蔽惡意節(jié)點(diǎn)

公有鏈中通過檢測(cè)若發(fā)現(xiàn)有惡意節(jié)點(diǎn),則立刻加入黑名單。文獻(xiàn)[10]提到一種惡意節(jié)點(diǎn)的檢測(cè)方法,可減少惡意節(jié)點(diǎn)帶來的泄露問題。

(3)數(shù)據(jù)混淆

區(qū)塊鏈在隱蔽的網(wǎng)絡(luò)中運(yùn)行,能較好地隱藏IP地址,使惡意節(jié)點(diǎn)很難發(fā)現(xiàn)網(wǎng)絡(luò)中真實(shí)的IP地址。

2.5 共識(shí)安全性

去中心化是區(qū)塊鏈的本質(zhì)特征,而共識(shí)機(jī)制是去中心化的核心內(nèi)容。它是在同一時(shí)間內(nèi)就交易順序達(dá)成共識(shí)的算法,用于實(shí)現(xiàn)數(shù)據(jù)和賬本的正確記錄。共識(shí)機(jī)制本質(zhì)上實(shí)行少數(shù)服從多數(shù)原則[11]。

2.5.1 工作量證明

工作量證明(Proof of Work,PoW)是用來證明用戶做過一定量的工作,也可以說通過辛勤勞動(dòng)獲得說話權(quán)。首先監(jiān)聽網(wǎng)絡(luò)中的數(shù)據(jù),若合法則對(duì)其保存,對(duì)不同的隨機(jī)數(shù)進(jìn)行哈希計(jì)算的過程中找到合理的隨機(jī)數(shù),從而生成區(qū)塊信息,然后對(duì)外廣播此區(qū)塊。若驗(yàn)證通過,則連接到區(qū)塊中[4]。這種拼算力獲得記賬權(quán)的方式稱為佃農(nóng)模式。

2.5.2 股權(quán)證明

股權(quán)證明(Proof of Stake,PoS)是節(jié)點(diǎn)記賬權(quán)的獲得難度與節(jié)點(diǎn)持有的權(quán)益成反比。通常用持有的token時(shí)間或token數(shù)量來決定,若權(quán)益越高,則挖礦的難度會(huì)越低。這種拼財(cái)力獲得說話權(quán)的方式稱為地主模式。

2.5.3 授權(quán)股份證明

授權(quán)股份證明(Deletated Proof of Stake,DPoS)是指用戶通過抵押權(quán)益成為記賬候選人,然后用投票來決定排名,排名靠前的節(jié)點(diǎn)擁有某個(gè)時(shí)間片內(nèi)的記賬權(quán)。因?yàn)楣沧R(shí)節(jié)點(diǎn)少且通信快,所以為迅速完成打包,廣播及驗(yàn)證增加了可用性。這種靠拉票能力獲得記賬權(quán)的方式稱為黨鞭模式。

2.5.4 實(shí)用拜占庭容錯(cuò)協(xié)議

實(shí)用拜占庭容錯(cuò)協(xié)議(Practical Byzantine Fault Tolerance,PBFT)主節(jié)點(diǎn)對(duì)請(qǐng)求進(jìn)行排序,從節(jié)點(diǎn)支持。這種根據(jù)多數(shù)人的意志而達(dá)成共識(shí)的做法稱為民主模式。

2.5.5 51%的攻擊防御和雙花攻擊防御

為了防御51%的攻擊,需盡量擴(kuò)大利益資源或整個(gè)網(wǎng)絡(luò)的計(jì)算能力。計(jì)算能力越大,攻擊者進(jìn)行51%攻擊的成本將會(huì)更高,防止雙花隨著確認(rèn)數(shù)量的增加而成功的可能性降低。區(qū)塊鏈中的回交事務(wù)越長,網(wǎng)絡(luò)中接收惡意鏈之前需要捕捉到更多的塊,從而從更大程度上降低修改交易歷史的可能性。為防止快速支付系統(tǒng)中發(fā)生雙花攻擊,可以使用監(jiān)聽時(shí)段技術(shù)來監(jiān)視所有接收事務(wù),只在沒有雙重花費(fèi)的情況下發(fā)送產(chǎn)品,但此法只可增加雙重花費(fèi)攻擊的難度,無法從根本上消除。

2.5.6 自私挖礦攻擊防御

(1)新鮮度首選

礦工選擇具有最近時(shí)間戳的塊來擴(kuò)展,使塊保留技術(shù)失去對(duì)新鮮塊的保留優(yōu)勢(shì)。

(2)ZeroBlock

若自私礦工將新挖的塊私自占用超過給定的時(shí)間,當(dāng)此塊在網(wǎng)絡(luò)上發(fā)布時(shí),誠實(shí)礦工將拒絕,從而防止保留塊攻擊。

(3)隨機(jī)選擇

若礦工遇到相同長度的分叉,它將隨機(jī)選擇一個(gè)分叉進(jìn)行擴(kuò)展,降低自私池增加其他礦工擴(kuò)展分叉的可能性的能力。

2.6 應(yīng)用安全性

2.6.1 私鑰存儲(chǔ)

私鑰可以保存在密碼加密的安全性能較低密鑰庫文件中。當(dāng)用戶使用它時(shí)需輸入密碼獲得私鑰,也可存儲(chǔ)在安全性較高的硬件安全模塊(HSM)中,防止私鑰被非法訪問。

2.6.2 身份認(rèn)證

身份認(rèn)證是為了確保網(wǎng)絡(luò)中用戶身份的合法性而使用的一種認(rèn)證技術(shù)。每個(gè)用戶都有一個(gè)公鑰和一個(gè)私鑰,通過密碼學(xué)原理,利用私鑰來實(shí)現(xiàn)對(duì)用戶的身份驗(yàn)證,而不會(huì)綁定用戶的身份信息。

2.6.3 隱私泄露防御

區(qū)塊鏈中,利用對(duì)核心數(shù)據(jù)的加密,使只有獲得密鑰的人才可讀懂?dāng)?shù)據(jù),包括交易的數(shù)據(jù)、交易的輸出和輸入,從而避免泄露交易數(shù)據(jù)。利用數(shù)字簽名證明信息由被請(qǐng)求方發(fā)送。

(1)聚合簽名

Boneh等學(xué)者提出基于co-GDH和雙線性映射的聚合簽名,將W個(gè)不同用戶的W個(gè)不同信息上的W個(gè)簽名,匯總成一個(gè)簡短的簽名,防止攻擊者偽造簽名[12]。

(2)群簽名

Chaum等學(xué)者首選提出,其允許群中的成員基于不可否認(rèn)簽名來匿名代表群簽名消息,從而實(shí)現(xiàn)系統(tǒng)的可靠性,以有效抵抗聯(lián)合攻擊[13]。

(3)環(huán)簽名

Rives等學(xué)者提出基于RSA的環(huán)簽名。它是利用所有成員的公鑰和某個(gè)成員的私鑰而構(gòu)成的機(jī)制。任何成員都可選擇任意簽名者且無需對(duì)方批準(zhǔn),從而實(shí)現(xiàn)即便有某個(gè)成員的私鑰也無法找到誰是簽名者[14]。

(4)代理簽名

基于離散對(duì)數(shù)問題而提出代理簽名,是允許代理簽名者代表原來的簽名者的一種直接形式。利用它只需較少的計(jì)算,且無需除了原始簽名者以外的客戶成員的公鑰[15]。

(5)零知識(shí)證明

證明此交易是有效的,但不會(huì)泄露關(guān)于交易內(nèi)容的任何信息,從而實(shí)現(xiàn)發(fā)送方地址和交易內(nèi)容本身的隱私保護(hù)。

(6)非對(duì)稱加密

利用公鑰加密甚至更加復(fù)雜的同態(tài)加密來保護(hù)隱私。

2.6.4 非法內(nèi)容防御

(1)Merkle哈希樹

利用哈希樹表示每個(gè)塊。哈希樹中的節(jié)點(diǎn)代表了一個(gè)交易哈希,通過投票機(jī)制或委員會(huì)刪除非法內(nèi)容,保證區(qū)塊鏈的不可逆性。

(2)人工智能技術(shù)

利用人工智能檢測(cè)非法內(nèi)容,并丟棄有非法內(nèi)容的交易,而不是打包到新塊中,從而減少犯罪活動(dòng)。

2.6.5 犯罪活動(dòng)防御

了解你的客戶KYC(Know Your Customer)政策,驗(yàn)證客戶的身份并評(píng)估業(yè)務(wù)關(guān)系非法意圖的風(fēng)險(xiǎn),也可利用人工智能技術(shù)識(shí)別系統(tǒng)中潛在的犯罪活動(dòng)。

2.6.6 內(nèi)容損壞漏洞防御

軟件工程中常利用源代碼審計(jì)、滲透測(cè)試和模糊測(cè)試,可以降低內(nèi)存損壞漏洞的風(fēng)險(xiǎn)。此法在區(qū)塊鏈中也適用。

2.6.7 訪問控制

利用訪問控制只允許有權(quán)限的用戶訪問系統(tǒng),如基于智能合約的訪問控制,滿足合同要求自動(dòng)執(zhí)行的特點(diǎn),定做特定的虛擬機(jī)來運(yùn)行智能合約。虛擬機(jī)中建議關(guān)閉訪問系統(tǒng)資源和文件系統(tǒng)交互等功能。

2.6.8 區(qū)塊鏈自身Bug防御

文獻(xiàn)[16]研究了8個(gè)具有代表性的區(qū)塊鏈故障,動(dòng)手檢查了1 108個(gè)報(bào)告并總結(jié)出了10個(gè)故障類型。

3 應(yīng)用展望

3.1 司法行政體系方面

最新的《民事訴訟法》中增加了“電子證據(jù)”這一證據(jù)類別,而互聯(lián)網(wǎng)中的數(shù)據(jù)易出現(xiàn)“失真”現(xiàn)象,基于區(qū)塊鏈的不可篡改性可解決“電子證據(jù)”失真現(xiàn)象,提升法院判決的合理性[17]。

3.2 網(wǎng)絡(luò)資產(chǎn)管理方面

開發(fā)基于區(qū)塊鏈技術(shù)的網(wǎng)絡(luò)資產(chǎn)管理系統(tǒng),網(wǎng)絡(luò)服務(wù)提供商利用區(qū)塊鏈賬號(hào)的管理系統(tǒng)加強(qiáng)對(duì)各種財(cái)產(chǎn)的管理,充分利用區(qū)塊鏈技術(shù)帶來的安全性,減少針對(duì)網(wǎng)絡(luò)財(cái)產(chǎn)的犯罪問題[18]。

3.3 電子簽名應(yīng)用方面

國務(wù)院于2015年5月制定的《關(guān)于大力發(fā)展電子商務(wù)加快培育經(jīng)濟(jì)新動(dòng)力的意見》第一次明確提出“建立電子合同等電子交易憑證的規(guī)范管理機(jī)制,確保交易各方的合法權(quán)益”。目前主要是以電子簽名的形式保證真實(shí)性,借助區(qū)塊鏈技術(shù)、電子合同將擁有更高的安全性,可以使合同文書和合同內(nèi)容緊密聯(lián)系在一起[18]。

3.4 隱私保護(hù)實(shí)現(xiàn)方面

2013年工業(yè)和信息化部制定的《電信和互聯(lián)網(wǎng)用戶個(gè)人信息保護(hù)規(guī)定》中規(guī)定,個(gè)人信息指用戶姓名、出生日期、身份證號(hào)碼、住址和電話等數(shù)據(jù)?!吨腥A人民共和國刑法修正案(九)》中設(shè)置了“侵犯公民個(gè)人信息罪”,區(qū)塊鏈的可追蹤降低了執(zhí)法偵破成本,可更好地保護(hù)個(gè)人隱私[17]。

4 結(jié) 語

伴隨區(qū)塊鏈的漫漫發(fā)展長路,機(jī)遇與危險(xiǎn)并存,會(huì)出現(xiàn)諸多問題。例如,隨時(shí)間的增加存儲(chǔ)成本逐步增大,因此應(yīng)關(guān)注存儲(chǔ)的優(yōu)化升級(jí);區(qū)塊鏈的數(shù)據(jù)安全性依賴密碼學(xué)來實(shí)現(xiàn),但也帶來加密算法較難升級(jí)的問題?;趨^(qū)塊鏈的數(shù)據(jù)安全性使其被廣泛應(yīng)用于各行各業(yè),但安全威脅問題日益凸顯。建議結(jié)合當(dāng)前區(qū)塊鏈發(fā)展現(xiàn)狀,加大立法監(jiān)督,規(guī)范區(qū)塊鏈的應(yīng)用;引入先進(jìn)技術(shù)積極研發(fā)區(qū)塊鏈平臺(tái)的監(jiān)測(cè)機(jī)制,以實(shí)現(xiàn)科學(xué)有力的監(jiān)管;進(jìn)一步加大投入,積極研發(fā)區(qū)塊鏈的底層技術(shù),實(shí)現(xiàn)技術(shù)的自主創(chuàng)新。

猜你喜歡
私鑰哈希攻擊者
比特幣的安全性到底有多高
基于微分博弈的追逃問題最優(yōu)策略設(shè)計(jì)
基于改進(jìn)ECC 算法的網(wǎng)絡(luò)信息私鑰變換優(yōu)化方法
正面迎接批判
愛你(2018年16期)2018-06-21 03:28:44
一種基于虛擬私鑰的OpenSSL與CSP交互方案
基于OpenCV與均值哈希算法的人臉相似識(shí)別系統(tǒng)
有限次重復(fù)博弈下的網(wǎng)絡(luò)攻擊行為研究
基于維度分解的哈希多維快速流分類算法
基于同態(tài)哈希函數(shù)的云數(shù)據(jù)完整性驗(yàn)證算法
一種基于Bigram二級(jí)哈希的中文索引結(jié)構(gòu)
苏州市| 雷波县| 崇明县| 淄博市| 周宁县| 桐城市| 潞城市| 师宗县| 鸡泽县| 新郑市| 邢台县| 永州市| 从江县| 泰来县| 咸宁市| 卓尼县| 北京市| 浮山县| 开封市| 海盐县| 温州市| 寻乌县| 烟台市| 吉林省| 富川| 施秉县| 凭祥市| 微山县| 南丰县| 历史| 平顶山市| 和龙市| 大港区| 涟源市| 宜春市| 彩票| 沙洋县| 从江县| 禄丰县| 基隆市| 沙田区|