999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于智能合約的公鑰證書發(fā)放方案

2018-01-17 09:57:22張成成
電子技術(shù)與軟件工程 2017年23期

摘 要 基于以太坊智能合約平臺,提出了一種新的公鑰證書發(fā)放方案。本方案使用智能合約實(shí)現(xiàn),用戶和證書發(fā)放機(jī)構(gòu)將自己的數(shù)據(jù)以智能合約的形式存放到區(qū)塊鏈上,其他人可以公開驗(yàn)證。本方案利用智能合約全網(wǎng)公開的安全特性有效降低了在不安全信道上簽署和發(fā)放公鑰證書的安全風(fēng)險(xiǎn)。依托于以太坊區(qū)塊鏈,本方案具有防篡改,防拒絕服務(wù)式攻擊等特點(diǎn)。

【關(guān)鍵詞】區(qū)塊鏈 智能合約 公鑰證書 以太坊

1 前言

公鑰證書是當(dāng)前一種應(yīng)用廣泛的公鑰分配解決方案,最早由Kohnfelder提出。由于公鑰證書方案不需要維護(hù)含有姓名和公鑰的目錄,從而成為一種較為安全的公鑰分配方式。公鑰證書中最重要的包含公鑰和公鑰擁有者的標(biāo)志,為了保證證書的真實(shí)有效性,則證書內(nèi)容必須由可信第三方進(jìn)行簽名。在這個(gè)過程中,用戶必須以一種安全的方式將他的公鑰信息傳遞給可信第三方機(jī)構(gòu)。但是,因?yàn)闆]有絕對安全的通信信道,則用戶將公鑰信息傳遞給可信機(jī)構(gòu)的過程中極易被攻擊者攔截,則用戶最后得到的公鑰證書極有可能被攻擊者篡改。怎樣保證用戶公鑰信息傳遞過程的安全是當(dāng)前亟待解決的一個(gè)問題。與此同時(shí),可信機(jī)構(gòu)的數(shù)據(jù)處理量又是有限的,攻擊者在獲取可信機(jī)構(gòu)真實(shí)網(wǎng)絡(luò)位置的情況下,可以發(fā)動(dòng)拒絕服務(wù)式攻擊。因此,隱藏可信機(jī)構(gòu)的真實(shí)的網(wǎng)絡(luò)位置是保障公鑰證書系統(tǒng)正常工作的關(guān)鍵。

區(qū)塊鏈技術(shù)隨著比特幣的出現(xiàn)而逐漸被人們所知。區(qū)塊鏈網(wǎng)絡(luò)沒有中心節(jié)點(diǎn),所有節(jié)點(diǎn)地位均等,采用工作量證明,權(quán)益證明等共識機(jī)制將區(qū)塊鏈網(wǎng)絡(luò)內(nèi)的交易數(shù)據(jù)打包寫入到區(qū)塊中。在這個(gè)去中心化網(wǎng)絡(luò)中,所有的節(jié)點(diǎn)保存著全網(wǎng)的數(shù)據(jù)備份。區(qū)塊鏈采用的共識機(jī)制保障了在不可信信道上的信息傳遞的真實(shí)有效性。區(qū)塊鏈網(wǎng)絡(luò)中的巨大算力使得攻擊者想要篡改區(qū)塊鏈中的交易數(shù)據(jù)需要付出巨大的代價(jià)。區(qū)塊鏈的這些特性既能防止數(shù)據(jù)在傳輸過程中遭到篡改,又能防止防止節(jié)點(diǎn)遭受拒絕服務(wù)式攻擊。

以太坊是2013年由Vitalik Buterin提出的一種開源的公共區(qū)塊鏈平臺,它基于區(qū)塊鏈技術(shù)建立,最大特點(diǎn)就是支持智能合約。以太坊智能合約(以下簡稱智能合約)與比特幣腳本類似,但是智能合約具有圖靈完備性,可以完成更加復(fù)雜的任務(wù)。用戶可以將編寫的智能合約編譯成以太坊特有的以太坊虛擬機(jī)代碼,即EVM代碼。EVM代碼可以訪問發(fā)送者和接收到的消息中的數(shù)據(jù),代碼還可以返回?cái)?shù)據(jù)的字節(jié)隊(duì)列作為輸出。用戶在與智能合約交互的過程中需要消耗一定量的燃料,燃料需要使用以太幣兌換。這種機(jī)制就保證了攻擊者想要通過短時(shí)間內(nèi)與智能合約的大量交互進(jìn)行拒絕服務(wù)式攻擊需要耗費(fèi)巨大的以太幣資源。同時(shí),智能合約靈活的數(shù)據(jù)訪問特性能夠保障公鑰信息的公開透明訪問以及數(shù)據(jù)完整性。

根據(jù)以上所述,我們提出了一種基于基于智能合約的公鑰證書發(fā)放方案。本方案充分利用了區(qū)塊鏈技術(shù)的去中心化和全網(wǎng)公開訪問賬本等特點(diǎn)保障了公鑰證書在不可信信道上的安全簽署,防范了攻擊者對用戶和可信機(jī)構(gòu)的拒絕服務(wù)式攻擊。

2 總體設(shè)計(jì)結(jié)構(gòu)

本方案的總體設(shè)計(jì)框架如圖1所示,各個(gè)部分功能如下。

2.1 用戶User

該用戶可以是任何需要申請公鑰證書的實(shí)體結(jié)構(gòu)。

2.2 區(qū)塊鏈

表示以太坊區(qū)塊鏈,區(qū)塊鏈上面的信息全網(wǎng)公開可見,任何人都可以查看合約的執(zhí)行情況。

2.3 證書發(fā)布機(jī)構(gòu)Ca

表示對用戶的證書進(jìn)行認(rèn)證簽名的機(jī)構(gòu),這個(gè)結(jié)構(gòu)的公鑰可以被所有人驗(yàn)證合法。之后,經(jīng)過該結(jié)構(gòu)簽署的公鑰證書可以被全網(wǎng)驗(yàn)證。

2.4 用戶合約Contract-user

表示用戶User發(fā)布的合約,該合約存儲(chǔ)用戶User的公鑰證書信息。實(shí)際上,用戶的公鑰證書信息就是用戶合約的核心內(nèi)容。

2.5 證書發(fā)布機(jī)構(gòu)合約Contract-ca

表示簽證機(jī)構(gòu)Ca處理其他用戶認(rèn)證請求的合約。用戶通過改變該合約的一些數(shù)據(jù)內(nèi)容向簽證機(jī)構(gòu)傳遞信息。

我們使用區(qū)塊鏈代替?zhèn)鹘y(tǒng)不可信信道,同時(shí)將公鑰證書以智能合約的形式發(fā)布出來。這里的合約Contract-user和合約Contract-ca都屬于區(qū)塊鏈的一部分,為了清楚地說明整個(gè)系統(tǒng)的工作過程,將這兩個(gè)合約獨(dú)立于以太坊區(qū)塊鏈表示。而在實(shí)際中,這兩個(gè)合約均存在于以太坊區(qū)塊鏈中。而用戶User和簽證機(jī)構(gòu)Ca都是匿名連接以太坊區(qū)塊鏈的各個(gè)實(shí)體結(jié)構(gòu),即他們均不需要公布自己的真實(shí)的網(wǎng)絡(luò)位置。

3 具體方案設(shè)計(jì)

簽證機(jī)構(gòu)Ca需要將自己的合約Contract-ca發(fā)布到以太坊區(qū)塊鏈上,然后全網(wǎng)用戶可以獲取簽證機(jī)構(gòu)的合約Contract-ca的合約地址。之后用戶User將自己的公鑰證書以智能合約的形式發(fā)布到以太坊區(qū)塊鏈上。此時(shí)的合約Contract-user不能被用作公鑰證書,因?yàn)榇藭r(shí)的公鑰證書還沒有被簽證機(jī)構(gòu)Ca簽署生效。用戶User可以將合約Contract-user的地址通過區(qū)塊鏈傳遞給合約Contract-ca,請求簽證機(jī)構(gòu)Ca對合約User進(jìn)行認(rèn)證。簽證機(jī)構(gòu)Ca從合約Contract-ca中獲取需要請求的合約Contract-user的地址,然后在區(qū)塊鏈上查詢到合約Contract-user的相關(guān)信息,簽證機(jī)構(gòu)Ca在后臺數(shù)據(jù)庫中查到合約Contract-user合法后就可以通過區(qū)塊鏈向合約Contract-user發(fā)送一個(gè)交易,對合約Contract-user的相關(guān)數(shù)據(jù)狀態(tài)進(jìn)行更改。最終合約Contract-user得到簽證機(jī)構(gòu)Ca的簽署,整個(gè)過程并不在傳統(tǒng)信道上傳遞公鑰信息和簽署信息。

3.1 證書發(fā)布機(jī)構(gòu)合約

證書發(fā)布機(jī)構(gòu)合約的編寫與發(fā)布過程:

(1)初始化:Ca與以太坊節(jié)點(diǎn)連接;生成以太坊賬戶地址Addr-ca,公私鑰對Pk-ca和Sk-ca。

(2)編寫智能合約Contract-ca,合約包含表1所列內(nèi)容。endprint

(3)將編寫的合約Contract-ca編譯發(fā)布到以太坊區(qū)塊鏈上,返回Contract-ca的合約地址Addr-contract-ca。

上述過程中使用的變量如表1。

3.2 用戶合約的編寫與發(fā)布

用戶合約的編寫與發(fā)布:

(1)初始化:User與以太坊節(jié)點(diǎn)連接;生成以太坊賬戶地址Addr-user,公私鑰對Pk-user,Sk-user。

(2)編寫智能合約Contract-user,合約包含表2所列內(nèi)容。

(3)將編寫的合約Contract-user編譯發(fā)布到以太坊區(qū)塊鏈上,返回合約地址Addr-contract-user。

上述過程中使用的變量如表2。

3.3 證書發(fā)布機(jī)構(gòu)簽署用戶合約

證書發(fā)布機(jī)構(gòu)簽署用戶合約的步驟:

(1)User修改區(qū)塊鏈中Contract-ca合約中的Addr-contract-user為自己的證書合約的地址;

(2)Ca從合約中獲取Addr-contract-user;

(3) Ca查詢以太坊區(qū)塊鏈上Addr-contract-user所處合約;

(4) Ca計(jì)算合約Contract-user中Cert(Id-user,Pk-user,Addr-user,Pk-ca,Addr-ca,Addr-contract-ca)的Signature-hash值;

(5)Ca使用自己的私鑰Sk-ca對Signature-hash進(jìn)行簽署;

(6)被Ca簽署的用戶合約可以被User使用。

3.4 用戶使用證書合約

用戶使用證書合約的步驟:

(1)User向其它用戶公布自己的合約證書地址;

(2)驗(yàn)證者訪問以太坊區(qū)塊鏈獲取合約證書內(nèi)容;

(3) 驗(yàn)證者通過證書內(nèi)的Addr-contract-ca找到認(rèn)證機(jī)構(gòu)的地址;

(4)驗(yàn)證者通過Addr-contract-ca查找到認(rèn)證機(jī)構(gòu)的合約;

(5)驗(yàn)證者在認(rèn)證機(jī)構(gòu)的合約中查找到認(rèn)證機(jī)構(gòu)的公鑰;

(6)驗(yàn)證者使用公鑰解開Signature-hash,獲取證書信息的Hash值;

(7)驗(yàn)證者將得到的Hash值與自己計(jì)算的Hash值比較,如果兩者相同,則User的證書信息真實(shí)有效。

4 總結(jié)

本文提出的方案充分利用了智能合約的特點(diǎn)解決了公鑰證書發(fā)放過程中的問題。區(qū)塊鏈的去中心化特點(diǎn),使得全部節(jié)點(diǎn)地位相等,依靠P2P技術(shù)傳播的交易信息在每個(gè)節(jié)點(diǎn)都能夠完全驗(yàn)證。在不可信信道上傳播的公鑰證書信息因?yàn)樵诿總€(gè)節(jié)點(diǎn)傳播的時(shí)候都能夠被驗(yàn)證,就極大地降低了被攻擊者篡改的可能性。攻擊者想要篡改證書信息,則必須擁有一半以上的全網(wǎng)算力才能保證供給成功。而實(shí)際上,當(dāng)前以太坊區(qū)塊鏈的全網(wǎng)總算力遠(yuǎn)遠(yuǎn)超過全球超級計(jì)算機(jī)總算力之和。攻擊者想要攻擊成功,則需要付出極大的代價(jià)。區(qū)塊鏈節(jié)點(diǎn)與用戶或者可信機(jī)構(gòu)進(jìn)行的是匿名鏈接。因?yàn)樵趨^(qū)塊鏈上,任何擁有與機(jī)構(gòu)地址相對應(yīng)的私鑰的實(shí)體,即被認(rèn)為是機(jī)構(gòu)本身。因此,用戶和可信機(jī)構(gòu)只需保留相應(yīng)的公私鑰對即可,可以隱藏或者變換網(wǎng)絡(luò)地址,這樣攻擊者就極難發(fā)現(xiàn)真實(shí)的實(shí)體位置。綜上,本方案既可以在不可信信道上保障公鑰信息的完整性,又能防止攻擊者對某個(gè)機(jī)構(gòu)進(jìn)行拒絕服務(wù)式攻擊。

然而,區(qū)塊鏈在完美解決拜占庭問題的同時(shí)也帶來了整體效率低下的問題。最突出的問題就是以太坊作為一個(gè)公有鏈,當(dāng)前使用的是工作量證明作為共識機(jī)制。工作量證明機(jī)制是要求礦工完成一定的工作量才能取得記賬權(quán)。在以太坊區(qū)塊鏈中,礦工新建立一個(gè)區(qū)塊需要大概15秒鐘的時(shí)間,而一個(gè)新的區(qū)塊容納的交易數(shù)量是有限的。實(shí)際上,在智能合約的狀態(tài)量改變過程中,每個(gè)狀態(tài)量的改變都需要全網(wǎng)節(jié)點(diǎn)的共同確認(rèn)才算合法。因此,我們就可以發(fā)現(xiàn),智能合約在執(zhí)行過程中的效率是很低的。但是,在隨后的以太坊大都會(huì)階段,以太坊執(zhí)行分片,則智能合約的執(zhí)行效率就會(huì)大大地增加。在未來的工作中,如何提高公鑰證書合約的靈活性,使之適應(yīng)越來越復(fù)雜的網(wǎng)絡(luò)狀況是我們的關(guān)注重點(diǎn)。

參考文獻(xiàn)

[1]Kohnfelder L M. Towards a practical public-key cryptosystem[D].Massachusetts Institute of Technology,1978.

[2]唐明,李莉,杜瑞穎.William S.密碼編碼學(xué)與網(wǎng)絡(luò)安全——原理與實(shí)踐(第六版)[M].北京:電子工業(yè)出版社,2015.

[3]Satoshi N.Bitcoin:A peer-to-peer electronic cash system[EB/OL]. [2009-03-25].https://bitcoin.org/bitcoin.pdf.

作者簡介

張成成(1991-),男,安徽省阜陽市人。碩士學(xué)位。西華大學(xué)計(jì)算機(jī)與軟件工程學(xué)院學(xué)生。研究方向?yàn)樾畔踩?/p>

作者單位

西華大學(xué)計(jì)算機(jī)與軟件工程學(xué)院 四川省成都市 610039endprint

主站蜘蛛池模板: 91偷拍一区| 国产真实乱子伦视频播放| 亚洲最大情网站在线观看| 国产成人精品三级| 亚洲精品无码在线播放网站| 91网在线| 凹凸国产分类在线观看| 欧美a在线看| 亚洲人在线| 精品第一国产综合精品Aⅴ| 91视频青青草| 真实国产乱子伦高清| 日本伊人色综合网| 欧美激情,国产精品| 91亚洲国产视频| 午夜性刺激在线观看免费| 免费国产无遮挡又黄又爽| 国产91全国探花系列在线播放| 亚洲狼网站狼狼鲁亚洲下载| 超碰91免费人妻| 国产日韩欧美一区二区三区在线| 亚洲人成高清| www中文字幕在线观看| 97久久免费视频| 国产人妖视频一区在线观看| 国产性爱网站| 欧美色综合网站| 人妻精品久久久无码区色视| 国产欧美专区在线观看| 欧美一级夜夜爽www| 中文字幕亚洲乱码熟女1区2区| 99视频精品在线观看| 为你提供最新久久精品久久综合| 午夜啪啪福利| 三上悠亚一区二区| 国产www网站| 亚洲成人精品在线| 114级毛片免费观看| 自拍中文字幕| 亚洲第一黄片大全| 九九九精品成人免费视频7| 国产亚洲欧美另类一区二区| 亚洲一区二区日韩欧美gif| 久久久久亚洲精品无码网站| 亚洲浓毛av| 亚洲欧美自拍中文| 久久精品只有这里有| 性欧美在线| 99热这里只有免费国产精品| 青青草原国产免费av观看| 91在线无码精品秘九色APP| 又爽又大又光又色的午夜视频| 精品国产电影久久九九| 欧美色香蕉| 蜜芽国产尤物av尤物在线看| 激情视频综合网| 一本综合久久| 六月婷婷综合| 热九九精品| 国产手机在线ΑⅤ片无码观看| 成人a免费α片在线视频网站| 国产主播在线观看| 国产一区二区三区免费| 午夜a视频| 久久青草视频| 亚洲综合在线最大成人| 亚洲高清中文字幕在线看不卡| 熟妇无码人妻| 欧美日本一区二区三区免费| 国产高清在线精品一区二区三区| 呦系列视频一区二区三区| 久久香蕉国产线看观看精品蕉| 国产av剧情无码精品色午夜| 国产嫖妓91东北老熟女久久一| 无码视频国产精品一区二区| 亚洲天堂伊人| 欧美国产精品不卡在线观看| 成人韩免费网站| 日韩欧美亚洲国产成人综合| 91在线一9|永久视频在线| 尤物成AV人片在线观看| 国产成人综合网|