文 松,王 敏,胡春陽(yáng),徐德剛
(湖北文理學(xué)院 數(shù)學(xué)與計(jì)算機(jī)學(xué)院, 湖北 襄陽(yáng) 441053)
一種用于移動(dòng)設(shè)備的Web服務(wù)遠(yuǎn)程證明方法
文 松,王 敏,胡春陽(yáng),徐德剛
(湖北文理學(xué)院 數(shù)學(xué)與計(jì)算機(jī)學(xué)院, 湖北 襄陽(yáng) 441053)
為便于移動(dòng)設(shè)備對(duì)Web服務(wù)進(jìn)行可信證明,基于可信第三方作為證明代理,通過(guò)公鑰密碼算法對(duì)通信消息進(jìn)行簽名,設(shè)計(jì)了輕量級(jí)的可信證明方案.通過(guò)可信第三方進(jìn)行代理證明,能夠保護(hù)證明方的隱私信息,實(shí)現(xiàn)方便的Web服務(wù)器平臺(tái)定位,同時(shí)能夠降低終端的驗(yàn)證負(fù)擔(dān).最后,建立了仿真實(shí)驗(yàn)環(huán)境.實(shí)驗(yàn)結(jié)果表明,該方法能夠使終端較輕松地對(duì)Web服務(wù)進(jìn)行可信性證明,滿足了移動(dòng)計(jì)算環(huán)境下較弱處理能力終端的需求.
移動(dòng)計(jì)算;web服務(wù);遠(yuǎn)程證明;可信第三方
以云計(jì)算和移動(dòng)互聯(lián)網(wǎng)等為代表的商業(yè)模式創(chuàng)新正在加劇信息通信技術(shù) (Information Communication Technology,ICT)產(chǎn)業(yè)變革并改變著人們的生活.基于移動(dòng)互聯(lián)網(wǎng)的“云服務(wù)”已經(jīng)成為ICT產(chǎn)業(yè)廠商推廣的重點(diǎn),同時(shí)也備受用戶的青睞.隨著移動(dòng)通信、互聯(lián)網(wǎng)、數(shù)據(jù)庫(kù)、分布式計(jì)算等技術(shù)的發(fā)展,移動(dòng)計(jì)算技術(shù)的應(yīng)用越來(lái)越廣泛.
然而,通過(guò)移動(dòng)設(shè)備進(jìn)行網(wǎng)絡(luò)訪問(wèn)依然存在著許多不利與不便,主要表現(xiàn)在:(1)設(shè)備處理能力較低;(2)受通信及處理能力限制,安全性較弱;(3)與PC相比,操作不便;(4)能源供應(yīng)受限.
移動(dòng)設(shè)備的特點(diǎn)是輕巧便攜,適于移動(dòng)計(jì)算環(huán)境,但自身性能不高.這就決定了它主要的應(yīng)用方向是基于網(wǎng)絡(luò)的便捷應(yīng)用,其功能實(shí)現(xiàn)相當(dāng)一部分是依賴(lài)于網(wǎng)絡(luò)服務(wù)的.脫離了網(wǎng)絡(luò)的移動(dòng)設(shè)備基本上只具有娛樂(lè)功能.在互聯(lián)網(wǎng)上,當(dāng)前主要的服務(wù)形式是Web服務(wù).在獲取Web服務(wù)過(guò)程中,用戶很希望能夠安全、高效的利用網(wǎng)絡(luò)服務(wù).一方面終端希望能得到可信的Web服務(wù),另一方面Web服務(wù)希望保護(hù)自己的隱私信息不被移動(dòng)設(shè)備泄露.因此需要一種對(duì)Web服務(wù)可信性的認(rèn)證方法.由于常規(guī)的認(rèn)證方法并不適用于移動(dòng)設(shè)備和Web服務(wù)計(jì)算環(huán)境,因此本文提出一種基于可信第三方(Trust Third Part, TTP)的Web服務(wù)可信性認(rèn)證方法,能夠滿足移動(dòng)設(shè)備在一般移動(dòng)環(huán)境下對(duì)Web服務(wù)的可信認(rèn)證.
對(duì)于Web服務(wù)的可信性問(wèn)題,研究者們主要從兩個(gè)方面進(jìn)行了研究:可信性評(píng)估及可信性證明.
可信性評(píng)估是從實(shí)體信任關(guān)系角度對(duì)目標(biāo)進(jìn)行度量,通過(guò)構(gòu)造信任模型,以概率理論為基礎(chǔ)對(duì)實(shí)體的可信性進(jìn)行計(jì)算得出.靜態(tài)信任模型有Beth模型[1]、Schillo模型[2]等.這些模型對(duì)實(shí)體信任關(guān)系判斷上均是基于概率理論的,無(wú)法適應(yīng)信任關(guān)系的動(dòng)態(tài)演變.計(jì)算機(jī)網(wǎng)絡(luò)和分布式應(yīng)用正在快速發(fā)展,互聯(lián)網(wǎng)上各種應(yīng)用系統(tǒng)不斷推出,很多研究者研究了分布式系統(tǒng)中的動(dòng)態(tài)信任關(guān)系,對(duì)信任關(guān)系使用數(shù)學(xué)方法建立了一些適應(yīng)動(dòng)態(tài)環(huán)境的信任評(píng)估模型.文獻(xiàn)[3]提出了一種基于行為信任預(yù)測(cè)的博弈控制機(jī)制,該機(jī)制利用貝葉斯網(wǎng)絡(luò)對(duì)行為的可信性進(jìn)行預(yù)測(cè).
可信性證明是以實(shí)體自身屬性為目標(biāo)進(jìn)行某種方式的測(cè)量,通過(guò)對(duì)測(cè)量結(jié)果的判定在不可信的環(huán)境中建立信任關(guān)系[4].可信計(jì)算組織(TCG)提出了一系列規(guī)范,以此為基礎(chǔ),通過(guò)實(shí)體進(jìn)行可信性測(cè)量,能夠向外界證明實(shí)體滿足某種可信性要求.TCG將證明分為兩種形式,一種方法是針對(duì)平臺(tái)自身身份的證明,另一種是對(duì)平臺(tái)特征的證明.在平臺(tái)特征中,產(chǎn)生了從配置、屬性、行為多方面進(jìn)行證明的研究成果.基于平臺(tái)配置的證明是指平臺(tái)向外報(bào)告自身平臺(tái)配置寄存器中完整性度量值,并由外界進(jìn)行驗(yàn)證的方法.IBM完整性測(cè)量架構(gòu)(IMA)[5]、卡內(nèi)基梅隆大學(xué)的基于軟件的證明方案[6]都屬于基于配置的證明.這種方式簡(jiǎn)單易行,但容易暴露平臺(tái)隱私.在基于屬性的證明中,有時(shí)需要對(duì)所獲得的知識(shí)進(jìn)行簡(jiǎn)化,以利于獲取有效的決策規(guī)則.文獻(xiàn)[7]構(gòu)建了兩種基于優(yōu)勢(shì)度的屬性重要性度量方法, 該方法也可用于對(duì)系統(tǒng)可信屬性進(jìn)行約簡(jiǎn).文獻(xiàn)[8-9]提出了動(dòng)態(tài)的遠(yuǎn)程證明方案,分別從終端行為的可信屬性、信任鏈、平臺(tái)軟件配置建立可信性判定策略,通過(guò)用戶的行為預(yù)測(cè)方程與真實(shí)行為特征值進(jìn)行對(duì)比.這種方法能夠識(shí)別并防止由于用戶的行為導(dǎo)致的安全事件對(duì)其他系統(tǒng)產(chǎn)生影響,并且判斷結(jié)果更加準(zhǔn)確.
以上方法有兩個(gè)假設(shè):一是驗(yàn)證方和證明方具備相同或相近的計(jì)算能力,驗(yàn)證方有能力還原證明方所經(jīng)歷的計(jì)算過(guò)程;二是驗(yàn)證方可以準(zhǔn)確定位到證明方的物理平臺(tái).然而,在云計(jì)算環(huán)境中,移動(dòng)設(shè)備的計(jì)算能力與普通設(shè)備還存在著不小的差距,而且在云環(huán)境中有可能無(wú)法知道使用的Web服務(wù)位置.因此,常規(guī)的遠(yuǎn)程證明方法很難直接應(yīng)用到移動(dòng)云計(jì)算環(huán)境中.
圖1a 直接證明模型
可信計(jì)算的遠(yuǎn)程證明模型可分為4種:
直接證明模型(圖1a).挑戰(zhàn)者向證明平臺(tái)發(fā)出請(qǐng)求,然后證明平臺(tái)將存儲(chǔ)在平臺(tái)配置寄存器(Platform Configuration Register, PCR)中的配置信息度量值加密后返回給挑戰(zhàn)者,最后挑戰(zhàn)者自己驗(yàn)證信息.該模型不需要借助其他可信第三方.
圖1b “拉”式證明模型
“拉”式證明模型(圖1b).需要可信第三方.挑戰(zhàn)者向證明平臺(tái)發(fā)出請(qǐng)求,獲取證明平臺(tái)的配置信息;挑戰(zhàn)者自身不對(duì)平臺(tái)配置信息做驗(yàn)證,而是轉(zhuǎn)發(fā)給可信第三方,由可信第三方驗(yàn)證后將結(jié)果交給挑戰(zhàn)者.該模型也會(huì)使證明平臺(tái)面臨配置信息泄露的風(fēng)險(xiǎn).
圖1c “推”式證明模型
“推”式證明模型(圖1c).挑戰(zhàn)者向證明平臺(tái)發(fā)出請(qǐng)求后,證明平臺(tái)將配置信息發(fā)給可信第三方;可信第三方驗(yàn)證之后,如果結(jié)果是可信的,那么可信第三方向證明平臺(tái)發(fā)送簽名的證書(shū),證明平臺(tái)將該證書(shū)轉(zhuǎn)發(fā)給挑戰(zhàn)者.該模型不會(huì)向一般用戶泄露證明平臺(tái)的配置信息,但要求用戶知道證明方的真實(shí)地址.
圖1d 代理證明模型
代理證明模型(圖1d).挑戰(zhàn)者向可信第三方發(fā)出一個(gè)請(qǐng)求,然后可信第三方通過(guò)和證明平臺(tái)的交互之后,將證明結(jié)果以證書(shū)的形式發(fā)送給挑戰(zhàn)者.這種方法的優(yōu)點(diǎn):①保護(hù)了驗(yàn)證平臺(tái)的私密性;②驗(yàn)證平臺(tái)無(wú)須有驗(yàn)證證明內(nèi)容的能力.
從移動(dòng)設(shè)備對(duì)Web服務(wù)驗(yàn)證的角度看,對(duì)以上4種模型從三個(gè)方面進(jìn)行比較,包括是否要求終端具有驗(yàn)證能力、是否需要指出服務(wù)器地址、是否會(huì)泄露證明平臺(tái)配置信息,比較結(jié)果如表1所示.
表1 4種模型的比較
從表1的比較結(jié)果可知,使用代理證明模型適合移動(dòng)設(shè)備進(jìn)行云計(jì)算環(huán)境下的驗(yàn)證.
2.1 符號(hào)及假設(shè)
為使用方便,文中用C表示“挑戰(zhàn)方”;用AS表示證明方;sig(P, K)表示用密鑰K對(duì)P簽名;PK表示公鑰;SK表示私鑰;CA表示證書(shū)中心;AIKpub表示AIK身份證明公鑰;AIKpriv表示身份證明私鑰;ML表示可信平臺(tái)測(cè)量列表;Cert表示證明結(jié)果證書(shū);Nonce32表示32位隨機(jī)數(shù); Nonce160表示160位隨機(jī)數(shù).
在證明過(guò)程中可做以下假設(shè):
1)參與證明的各方能夠進(jìn)行安全的密鑰交換、管理與分發(fā),這可以通過(guò)CA認(rèn)證中心及合適的密鑰分發(fā)協(xié)議來(lái)實(shí)現(xiàn);
2)可信第三方能夠找到Web服務(wù)平臺(tái)的實(shí)際地址,這可以通過(guò)在UDDI中獲取Web服務(wù)的WSDL來(lái)實(shí)現(xiàn);
3)驗(yàn)證的命令及數(shù)據(jù)格式已經(jīng)約定好.
2.2 證明過(guò)程
圖2 挑戰(zhàn)——應(yīng)答過(guò)程
證明使用挑戰(zhàn)——應(yīng)答方式,以移動(dòng)設(shè)備為挑戰(zhàn)方,Web服務(wù)器為證明方.但是按照代理證明模型,挑戰(zhàn)方與證明方并不直接進(jìn)行挑戰(zhàn)證明,而是通過(guò)代理方完成挑戰(zhàn)證明過(guò)程.整個(gè)挑戰(zhàn)應(yīng)答過(guò)程如圖2所示.
① C→TTP:挑戰(zhàn)方創(chuàng)建32位隨機(jī)數(shù)nonce32,簽名并發(fā)給可信第三方;
② TTP→AS:代理方將挑戰(zhàn)請(qǐng)求轉(zhuǎn)發(fā)給Web服務(wù)器;
③ AS:Web服務(wù)器取出自己的PCR、ML,用身份證明密鑰AIKpriv簽名;
④ AS→TTP:Web服務(wù)器將PCR和ML發(fā)給代理方;
⑤ TTP:代理方用AIKpub驗(yàn)證簽名,根據(jù)ML重新計(jì)算PCR值并驗(yàn)證,通過(guò)之后生成證書(shū)Cert;
⑥ TTP→C:代理方將證書(shū)和隨機(jī)數(shù)nonce32簽名后發(fā)給挑戰(zhàn)方;
⑦ C:挑戰(zhàn)方驗(yàn)證證書(shū).
Web服務(wù)器使用了帶有TPM1.2規(guī)范的筆記本電腦,CPU主頻為2.5GHz,簽名算法使用RSA.可信第三方使用一臺(tái)普通Linux服務(wù)器,安裝了TPM模擬軟件(TPM emulator)以進(jìn)行PCR驗(yàn)證,驗(yàn)證終端是基于Android4.03操作系統(tǒng)的模擬器.
終端將Web服務(wù)的WSDL文檔發(fā)給可信第三方,從中解析出Web服務(wù)的物理地址.為實(shí)驗(yàn)方便,這里做了簡(jiǎn)化,以WSDL文檔中描述的服務(wù)端口名中的地址作為Web服務(wù)器地址,而在實(shí)際當(dāng)中該端口名所指不一定就是提供服務(wù)的平臺(tái)地址.
簽名算法使用RSA.以TTP為中心,其到Web服務(wù)器的密鑰長(zhǎng)度是1024bit,到終端的密鑰長(zhǎng)度是512bit.返回給終端的證書(shū)以字符串表示, “SUCC”表示驗(yàn)證通過(guò), “FAIL”表示驗(yàn)證失敗.手機(jī)端只有一個(gè)按鈕,將需要驗(yàn)證的Web服務(wù)寫(xiě)入程序,直接發(fā)給TTP,等待返回.圖3及圖4分別顯示了驗(yàn)證成功及失敗的界面.
圖3 驗(yàn)證成功消息 圖4 驗(yàn)證失敗消息
整個(gè)驗(yàn)證過(guò)程耗時(shí)約6秒,其中包含4次主要的網(wǎng)絡(luò)通信,手機(jī)端的2次RSA簽名運(yùn)算,TTP的4次RSA簽名運(yùn)算,多次TPM擴(kuò)展運(yùn)算,Web服務(wù)器的2次RSA簽名運(yùn)算,多次TPM擴(kuò)展運(yùn)算.為了使驗(yàn)證產(chǎn)生錯(cuò)誤結(jié)果,實(shí)驗(yàn)中將測(cè)量列表做了修改,模擬出錯(cuò)的現(xiàn)象.為降低終端對(duì)簽名的計(jì)算復(fù)雜度,將終端與TTP的密鑰設(shè)計(jì)為512bit,該長(zhǎng)度并不適于消息加密,但在實(shí)驗(yàn)中用作簽名可以使終端減輕一定負(fù)擔(dān).
為了實(shí)現(xiàn)移動(dòng)終端對(duì)Web服務(wù)的可信性驗(yàn)證,以可信第三方作為證明代理并設(shè)計(jì)了證明過(guò)程,在終端和Web服務(wù)之間建立遠(yuǎn)程證明橋梁.該方案減輕了移動(dòng)終端的證明負(fù)擔(dān),保護(hù)了Web服務(wù)器的隱私信息,提供了能針對(duì)多用戶的統(tǒng)一證明服務(wù).實(shí)驗(yàn)結(jié)果表明該方案設(shè)計(jì)簡(jiǎn)單,易于實(shí)現(xiàn).下一步的工作將對(duì)整個(gè)證明過(guò)程詳細(xì)分析,研究各部分的性能及資源消耗,找出適合實(shí)際環(huán)境的驗(yàn)證參數(shù).
[1]Beth T,Borcherding M, Klein B.Valuation of Trust in Open Networks[C]//Proc.of European Symposium on Research in Computer Security.Brighton, UK, 1994: 3-18.
[2]Schillo M, Funk P, Rovatsos M.Using Trust for Detecting Deceitful Agents in Artificial Societites[J].Applied Artificial Intelligence, 2000, 14(8): 825-848.
[3]田立勤,林闖.可信網(wǎng)絡(luò)中一種基于行為信任預(yù)測(cè)的博弈控制機(jī)制[J].計(jì)算機(jī)學(xué)報(bào),2007, 30(11): 1930-1938.
[4]Grawrock D.TCG Specification Architecture Overview Revision 1.4[EB/OL].(2007-10-01) [2016-10-09].https://www.trustedcomputinggroup.org/gr0ups/TCG.1.4.Architecture.Overview.pdf.
[5]Sailer R,Zhang X,Jaeger T,et al.Design and Implementation of a TCG-based Integrity Measurement Architecture[C] //Proceedings of 13th USENIX Security Symposium 2004.San Diego,USA,2004:223-238.
[6]張強(qiáng),朱麗娜,趙佳.可信計(jì)算中遠(yuǎn)程證明方法的研究[J].微計(jì)算機(jī)信息,2008,24(12):54-56.
[7]李敬,王利東,李曉慶.基于優(yōu)勢(shì)度的序信息系統(tǒng)屬性重要性度量[J].瓊州學(xué)院學(xué)報(bào),2015, 22(5): 17-21.
[8]譚良, 陳菊.一種可信終端運(yùn)行環(huán)境遠(yuǎn)程證明方案[J].軟件學(xué)報(bào), 2014,25(6): 1273-1290.
[9]張文博,包振山,張建標(biāo),等.基于可信計(jì)算的車(chē)聯(lián)網(wǎng)云用戶遠(yuǎn)程證明[J].華中科技大學(xué)學(xué)報(bào)(自然科學(xué)版), 2016,44(3):12-16.
(編校:曾福庚)
A Remote Attestation Method for Web Services Used on Mobile Devices
WEN Song, WANG Min, HU Chun-yang, XU De-gang
(College of Mathematics and Computer, School of Hubei Art and Science, Xiangyang Hubei 441053, China)
To facilitate the mobile devices to attest the credibility of the Web service, a lightweight attestation method was proposed.The method used a trusted third party as attestation agency, and signed the messages with public key cryptography algorithm.Through the trusted third party, it was proved that the privacy of attester can be protected, that the Web server platform can be located, and that the burden of verification terminal can be reduced.Finally a simulation experiment environment was constructed.The results of the experiments showed that the credibility of the Web service can be determined, and that the cost meets the requirement of the relatively weak capability of the terminal under the mobile circumstances.
mobile computing; web service; remote attestation; trusted third party
格式:文松, 王敏, 胡春陽(yáng),等.一種用于移動(dòng)設(shè)備的Web服務(wù)遠(yuǎn)程證明方法[J].海南熱帶海洋學(xué)院學(xué)報(bào),2017,24(2):55-58.
2016-11-02
湖北省優(yōu)勢(shì)特色學(xué)科群“機(jī)電汽車(chē)”開(kāi)放基金項(xiàng)目(XKQ2016028)
文松(1975-),男,湖北襄陽(yáng)人, 湖北文理學(xué)院數(shù)學(xué)與計(jì)算機(jī)學(xué)院講師,博士,主要研究方向?yàn)榉?wù)計(jì)算、信息安全.
TP393
A
2096-3122(2017) 02-0055-04
10.13307/j.issn.2096-3122.2017.02.11