亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        一種基于虛擬私鑰的OpenSSL與CSP交互方案

        2018-06-19 09:57:06王增光
        關(guān)鍵詞:數(shù)字簽名私鑰調(diào)用

        張 臘, 盧 昱, 王增光

        (陸軍工程大學(xué)石家莊校區(qū)裝備模擬訓(xùn)練中心, 河北 石家莊 050003)

        隨著互聯(lián)網(wǎng)+的提出,網(wǎng)絡(luò)進(jìn)一步深入大眾生活,與之密切相關(guān)的網(wǎng)絡(luò)信息安全問題也受到越來越多的關(guān)注。眾多網(wǎng)絡(luò)應(yīng)用需要一個安全可靠的信息傳輸環(huán)境,以確保數(shù)據(jù)的保密性、完整性和安全驗證等安全特性。目前廣泛應(yīng)用的開放式安全套接層(Open Secure Sockets Layer,OpenSSL)是實現(xiàn)這一目標(biāo)的關(guān)鍵一環(huán)。作為一個強(qiáng)大的安全套接層密碼庫,OpenSSL開源實現(xiàn)了常規(guī)的密碼算法和SSL。當(dāng)會話雙方需要在網(wǎng)絡(luò)中進(jìn)行敏感信息的交互時,OpenSSL還可以通過其內(nèi)置的引擎(Engine)機(jī)制借力加密服務(wù)提供商(Cryptographic Service Provider, CSP),使用CSP提供的硬件加密設(shè)備進(jìn)行加密運(yùn)算,以確保實現(xiàn)安全性更高的加解密。

        由于OpenSSL允許CSP在提供Engine對象時對其代碼進(jìn)行改動,因此在實際應(yīng)用中各CSP實現(xiàn)的具體交互方式多種多樣[1],概略分為3類:1)在OpenSSL和CSP兩端同時保存私鑰;2)實現(xiàn)方案需要傳遞私鑰或私鑰相關(guān)信息,進(jìn)而得到私鑰副本;3)實現(xiàn)方案不傳遞私鑰或私鑰相關(guān)信息,卻需要對OpenSSL的Engine做出較大的代碼改動。前2類實現(xiàn)方案由于私鑰副本的出現(xiàn),違背了私鑰唯一性原則,因而增大了私鑰泄漏的安全風(fēng)險;第3類實現(xiàn)方案代碼工作量大,容易出現(xiàn)漏洞,不便實現(xiàn)和推廣[2]。

        鑒于目前存在的這些安全缺陷,筆者提出一種OpenSSL與CSP構(gòu)造虛擬私鑰和使用虛擬私鑰的交互方案。使用該方案可避免私鑰在網(wǎng)絡(luò)中傳播,并減少大量代碼工作,對進(jìn)一步提高網(wǎng)絡(luò)信息傳輸?shù)陌踩跃哂兄笇?dǎo)作用。

        1 交互方案總體思路

        交互方案構(gòu)想如圖1所示。總體思路為:CSP保存真實私鑰,并提供虛擬私鑰和Engine對象,交由OpenSSL保存;OpenSSL將虛擬私鑰當(dāng)作真實私鑰加載使用,同時加載CSP提供的Engine對象;OpenSSL在需要進(jìn)行私鑰簽名或解密運(yùn)算時,利用該Engine對象登錄CSP,并傳遞相關(guān)數(shù)據(jù);由CSP的硬件加密設(shè)備完成實際私鑰簽名或解密運(yùn)算,再返回相應(yīng)結(jié)果;OpenSSL得到運(yùn)算結(jié)果后繼續(xù)執(zhí)行原工作任務(wù)。

        2 交互方案設(shè)計

        交互方案設(shè)計包括虛擬私鑰的構(gòu)建和虛擬私鑰的使用,所涉及的符號及含義如表1所示。

        表1 交互方案涉及的符號及含義

        2.1 虛擬私鑰的構(gòu)建

        在CSP賬號注冊時完成虛擬私鑰的構(gòu)建,即當(dāng)OpenSSL端將真實私鑰導(dǎo)入CSP提供的硬件加密設(shè)備時,由CSP構(gòu)建虛擬私鑰。虛擬私鑰構(gòu)建過程如圖2所示。

        主要步驟如下:

        1) OpenSSL向CSP發(fā)送注冊請求ReqR;

        2) 完成接收注冊信息的準(zhǔn)備工作之后,CSP返回確認(rèn)響應(yīng)ACKP;

        3) OpenSSL設(shè)置身份標(biāo)志IDO、登錄口令PWO,并連同虛擬私鑰請求ReqV 發(fā)送給CSP;

        4) CSP保存IDO和PWO,發(fā)送ACKP和私鑰請求ReqK;

        5) OpenSSL向CSP發(fā)送ACKP,并提交私鑰skO;

        6) CSP以安全的方式存儲skO,并返回ACKP和虛擬私鑰vskO;

        7) OpenSSL發(fā)送ACKO,并用接收到的vskO替換skO。

        上述步驟主要著眼于OpenSSL和CSP在加密通道中從注冊到完成虛擬私鑰替換真實私鑰的整體交互過程,虛擬私鑰的具體生成在CSP內(nèi)部。步驟6)中,CSP利用真實私鑰在內(nèi)部生成虛擬私鑰的構(gòu)建過程如下:

        1) CSP以安全的方式存儲skO,取得skO的存儲地址等相關(guān)信息MskO;

        2) 按照事先設(shè)置的某種變換組合(可以采用任意密文長度固定的簡單、快捷、可逆的加密方法)將MskO、IDO、PWO變換形成多個字節(jié)的二進(jìn)制碼串;

        3) 將形成的二進(jìn)制碼串級聯(lián)冗余碼R,得到一個與skO長度相同的新碼串;

        4) CSP將此新碼串作為vskO,并將vskO返回到OpenSSL。

        通過以上步驟,可以生成一個虛擬私鑰,但需要保證CSP提供的Engine對象能夠合理解釋該虛擬私鑰,從而能夠提取正確的身份標(biāo)志和登錄口令,以及真實私鑰在CSP中的存儲地址等相關(guān)信息。

        2.2 虛擬私鑰的使用

        當(dāng)使用CSP服務(wù)的OpenSSL端需要與其他進(jìn)程建立安全鏈接時,握手過程用到簽名或私鑰解密的部分由CSP完成實際運(yùn)算。這需要OpenSSL成功登錄CSP,將相關(guān)數(shù)據(jù)傳遞給CSP,并接收相應(yīng)的返回信息[3]。以實現(xiàn)數(shù)字簽名為例,其交互過程如圖3所示。

        主要步驟如下:

        1) SSL加載虛擬私鑰vskO以及CSP提供的Engine對象;

        2) SSL將需要私鑰簽名的相關(guān)數(shù)據(jù)X以及vskO傳遞給Engine對象;

        3) Engine對象合理解釋vskO,取出登錄CSP所需的IDO、PWO和MskO,并在加密通道中用IDO、PWO向CSP提出數(shù)字簽名申請ReqS ;

        4) CSP驗證Engine對象發(fā)來的IDO、PWO,驗證通過后在加密通道返回確認(rèn)響應(yīng)ACKP;

        5) Engine對象將MskO、X由加密通道發(fā)送給CSP;

        6) CSP通過MskO找到存儲的skO,利用自身的硬件加密設(shè)備和真實私鑰完成實際簽名運(yùn)算,并由加密通道返回Engine對象需要的簽名數(shù)據(jù)signskO(X);

        7) Engine對象得到signskO(X)之后在加密通道回送自身的確認(rèn)響應(yīng) ACKO;

        8) Engine對象將signskO(X)返回SSL。

        經(jīng)過以上步驟,OpenSSL接收到簽名數(shù)據(jù)。隨后可通過繼續(xù)與其他進(jìn)程的握手過程,建立起安全會話鏈接。

        為了更加清楚地梳理整個過程,筆者綜合文獻(xiàn)[4-5]的表述方法,將OpenSSL端進(jìn)一步分解為2部分,將其中由CSP提供的Engine對象單獨(dú)顯示出來。實際上,圖3中SSL與Engine對象的交互部分與OpenSSL原機(jī)制的主要區(qū)別僅僅在于用虛擬私鑰替換了原機(jī)制中使用真實私鑰的部分。

        3 基于SVO邏輯的形式化分析

        為分析安全協(xié)議執(zhí)行過程中主體信念和知識的演化過程,1989年由Burrows、Abadi和Needham提出了第一個說明和驗證密碼協(xié)議的信仰模態(tài)邏輯——BAN邏輯[6]。之后,隨著理論的發(fā)展演變出很多邏輯語言,其中:1994年P(guān)aul Syversot和Paul C. van Oorschot提出的SVO邏輯語言作為BAN及類BAN邏輯成熟的標(biāo)志,其表達(dá)力更強(qiáng),綜合性和可靠性更加突出,能成功發(fā)現(xiàn)協(xié)議設(shè)計中的安全缺陷和漏洞,為邏輯系統(tǒng)建立了用于推證合理性的優(yōu)質(zhì)理論模型。

        筆者針對虛擬私鑰使用方案中OpenSSL與CSP之間的交互部分利用SVO邏輯進(jìn)行形式化分析,以證明方案的安全性與合理性。

        本文用到的SVO推理規(guī)則及公理[7]如下:

        A1.Pbelievesφ∧Pbelieves(φ→ψ)→Pbelievesψ。

        A18.Pcontrolsφ∧Psaysφ→φ。

        A19.fresh(Xi)→fresh(X1,…,Xl)。

        A21.fresh(X)∧PsaidX→PsaysX。

        1) 形式化分析基本假設(shè)

        (1)初始假設(shè)

        S1. P believes fresh(ReqS),

        P believes fresh(Msko),

        O believes fresh(signsko(X))。

        S3. O believes(P controls sko),

        P believes(O controls IDO,PWO,Msko)。

        S4. P believes(Msko→sko)。

        (2) 收到的消息假設(shè)

        S5. P received{|IDO,PWO,ReqS|}k。

        S6. O received{|ACKp|}k。

        S7. P received{|Msko,X|}k。

        S8. O received{|signsko(X)|}k。

        S9. P received{|ACKo|}k。

        (3) 對假設(shè)的理解

        S10.P believes P received{|IDO,PWO,*1|}k。

        S11.P believes P received{|*2,X|}k。

        (4) 目標(biāo)假設(shè)

        T1. P believes O says ReqS。

        T2. O believes P says(signsko(X)}。

        2) 對T1的推理

        (1) P believes P received{|IDO,PWO,fresh(ReqS)|}k,

        根據(jù)S10, A19, MP。

        (2) P believes O said(fresh(ReqS)),

        根據(jù)(1), S2, S3, A1, A5, Nec, MP。

        (3) P believes fresh(IDO,PWO,fresh(ReqS)),

        根據(jù)S1, A1, A19, Nec, MP。

        (4) P believes O says(ReqS),

        根據(jù)(2),(3), A1, A21, Nec, MP。

        T1得證。

        3) 對T2的推理

        (1) P believes P received{|fresh(Msko),X|}k,

        根據(jù)S3, S11, A19, MP。

        (2) P believes O said(fresh(Msko),X),

        根據(jù)(1), S2, S3, A1, A5, Nec, MP。

        (3) P believes fresh(fresh(Msko),X),

        根據(jù)S1, S3, A1, A19, Nec, MP。

        (4) P believes O says(fresh(Msko),X),

        根據(jù)(2),(3), A1, A21, Nec, MP。

        (5) O believes P said(signsko(X)),

        根據(jù) S3, S6, A18, Nec, MP。

        (6) O believes fresh(signsko(X)),

        根據(jù)S1, S3, A1, A19, Nec, MP。

        (7) O believes P says(signsko(X)),

        根據(jù)(4),(6), A1, A21, Nec, MP。

        T2得證。

        上述形式化分析成功得到預(yù)期目標(biāo)假設(shè)T1和T2,即由SVO邏輯形式化證明了交互方案的安全性與合理性。說明雙方完成的交互是安全可信的:CSP可以相信OpenSSL正在請求數(shù)字簽名服務(wù);OpenSSL可以相信CSP正在返回數(shù)字簽名結(jié)果。

        4 方案分析

        筆者提出的交互方案旨在解決目前OpenSSL調(diào)用第三方加密服務(wù)時,各種商業(yè)實現(xiàn)存在的私鑰不唯一、代碼改動過多和不便推廣的問題。下面主要從這3方面對所提方案進(jìn)行分析。

        4.1 安全性分析

        現(xiàn)代加密算法的安全性主要取決于私鑰的安全性[8],確保私鑰安全的首要目標(biāo)是確保私鑰是唯一的,不存在額外的副本。下面從私鑰唯一性的角度對本文所提交互方案進(jìn)行安全論證,并做基于SVO邏輯的協(xié)議形式化分析。

        一是虛擬私鑰的信息與真實私鑰并沒有直接關(guān)聯(lián),通過此方法獲取的虛擬私鑰并非真實私鑰的副本,所包含信息亦不足以推斷出真實私鑰本身,不能直接用于數(shù)字簽名等非對稱算法的運(yùn)算(實際上即使更換真實私鑰也可以不改變虛擬私鑰)。因此相比傳遞真實私鑰,傳遞虛擬私鑰的方式十分安全,確保了真實私鑰的唯一性,用于傳遞過程不會增加真實私鑰泄露的風(fēng)險。

        二是盡管OpenSSL可以通過CSP提供的Engine對象解釋虛擬私鑰,進(jìn)而登錄CSP并調(diào)用真實私鑰實現(xiàn)簽名解密等運(yùn)算。但虛擬私鑰也僅僅是在OpenSSL處能夠?qū)崿F(xiàn)真實私鑰的原有功能,并且最終是通過調(diào)用真實私鑰的方式實現(xiàn)了功能。從根源上確保了私鑰功能只能由真實私鑰實現(xiàn),虛擬私鑰不是第2個“私鑰”,保證了真實私鑰的唯一性。

        4.2 性能分析

        通過虛擬私鑰替代真實私鑰正常加載,以及OpenSSL借由Engine對象調(diào)用CSP的過程可以看出:本交互方案能夠保持與原OpenSSL端不同應(yīng)用程序、不同調(diào)用方式相通用的調(diào)用效果,對現(xiàn)有應(yīng)用程序和調(diào)用方式幾乎沒有影響??梢缘韧贠penSSL端和CSP端同時保存真實私鑰的方式,最大限度減少了OpenSSL端的代碼改動量,不影響原OpenSSL性能,達(dá)到了良好效果。

        4.3 通用性分析

        OpenSSL作為一個非常成熟的開源實現(xiàn),已經(jīng)被大量網(wǎng)站和應(yīng)用程序使用多年,因此OpenSSL不宜大規(guī)模變動[9]。由CSP負(fù)責(zé)主要改進(jìn)工作且兼容OpenSSL本身的運(yùn)行方式,符合少數(shù)服從多數(shù)的商業(yè)工程實現(xiàn)規(guī)律。本方案幾乎沒有改變OpenSSL本身的運(yùn)行方式,代碼改動工作基本由CSP一方完成,因而能夠直接套用在現(xiàn)有各種應(yīng)用中,具有較強(qiáng)的通用性。

        5 結(jié)論

        筆者設(shè)計的交互方案能夠避免現(xiàn)有調(diào)用方案的一些缺陷,提高OpenSSL采用第三方加密服務(wù)的安全性;不足在于加密通道的建立和維護(hù)成本較高,且目前沒有較好的替代方案。與文獻(xiàn)[10]設(shè)計方案相比,本方案安全性更高。下一步的研究可以考慮與云計算相結(jié)合,將CSP擴(kuò)展為一個用于分擔(dān)OpenSSL服務(wù)器加解密運(yùn)算壓力的公有云。充分利用云計算的優(yōu)勢,進(jìn)一步提高運(yùn)算能力,增強(qiáng)OpenSSL所能借用的加密性能。

        參考文獻(xiàn):

        [1] KAMP P H.Please put OpenSSL out of its misery[J].Queue,2014,12(3):20-23.

        [2] 杜在東.一種加密設(shè)備的配置方法及系統(tǒng):CN106060022A[P].2016-10-26.

        [3] 龔少麟.OpenSSL密碼安全平臺實現(xiàn)機(jī)制的研究[J].計算機(jī)與數(shù)字工程,2011,39(6):118-121.

        [4] RASHTI M J,SABIN G,Kettimuthu R.Long-haul secure data transfer using hardware-assisted GridFTP[J].Future generation computer systems,2016,56:265-276.

        [5] CHRISTIAN J D,CHOO K K R.A technique to circumvent SSL/TLS validations on iOS Devices [J].Future generation computer systems,2016,74:366-374.

        [6] 李建華,張愛新.網(wǎng)絡(luò)安全協(xié)議的形式化分析與驗證[M].北京:機(jī)械工業(yè)出版社,2010:12-13.

        [7] 王亞弟,束妮娜,韓繼紅,等.密碼協(xié)議形式化分析[M].北京:機(jī)械工業(yè)出版社,2006:82-86.

        [8] 謝東良.基于國密算法的OpenSSL安全性優(yōu)化研究[D].哈爾濱:哈爾濱工程大學(xué),2016:6-10.

        [9] 王瑋,龍毅宏,唐志紅.OpenSSL引擎機(jī)制的研究[J].信息安全與通信保密,2011(10):60-62.

        [10] 齊洪喜,周大水.基于OpenSSL的安全密碼平臺的設(shè)計與實現(xiàn)[J].計算機(jī)工程與設(shè)計,2007,28(2):314-319.

        猜你喜歡
        數(shù)字簽名私鑰調(diào)用
        清掃機(jī)器人避障系統(tǒng)區(qū)塊鏈私鑰分片存儲方法
        比特幣的安全性到底有多高
        基于改進(jìn)ECC 算法的網(wǎng)絡(luò)信息私鑰變換優(yōu)化方法
        淺析計算機(jī)安全防護(hù)中數(shù)字簽名技術(shù)的應(yīng)用
        核電項目物項調(diào)用管理的應(yīng)用研究
        LabWindows/CVI下基于ActiveX技術(shù)的Excel調(diào)用
        基于系統(tǒng)調(diào)用的惡意軟件檢測技術(shù)研究
        基于數(shù)字簽名的QR碼水印認(rèn)證系統(tǒng)
        基于數(shù)字簽名和HSM的數(shù)據(jù)庫篡改檢測機(jī)制
        利用RFC技術(shù)實現(xiàn)SAP系統(tǒng)接口通信
        亚洲乱码中文字幕视频| 久久99精品久久久久久| 亚洲爆乳大丰满无码专区| 亚洲免费无毛av一区二区三区 | 免费a级毛片无码| 人妻无码中文字幕免费视频蜜桃 | 亚洲av粉嫩性色av| 91成人国产九色在线观看| 欧美伦费免费全部午夜最新| 2021久久精品国产99国产精品| 久久精品岛国av一区二区无码 | 亚洲国产线茬精品成av| 女人天堂av人禽交在线观看| 公和我做好爽添厨房中文字幕| 久久乐国产精品亚洲综合| 无码中文字幕av免费放| 亚洲国产精品av麻豆一区| 青青草狠吊色在线视频| 国产精品久久久久9999小说 | 久久这里都是精品一区| 免费看黄在线永久观看| 日韩精品专区在线观看| 成人国产精品一区二区视频 | 亚洲一区自拍高清亚洲精品| 99久久精品国产成人综合| 国语精品视频在线观看不卡| 国产洗浴会所三级av| 国产人妖乱国产精品人妖| 国产激情久久久久影院老熟女免费| 久久国产亚洲AV无码麻豆| av在线手机中文字幕| 日韩精品极品免费视频观看| 亚洲a∨无码男人的天堂| 天天做天天爱天天综合网| 国产精品亚洲一区二区三区正片| 日本一区二区三区光视频| 天天摸夜夜摸夜夜狠狠摸| 免费大片黄在线观看| 日本午夜一区二区视频| 亚洲另类丰满熟妇乱xxxx| 小sao货水好多真紧h无码视频|