劉飛飛,劉宴兵
(重慶郵電大學(xué)計算機科學(xué)與技術(shù)學(xué)院,重慶 400065)
移動互聯(lián)網(wǎng)是當(dāng)前信息領(lǐng)域的研究熱點,同時也是國家所關(guān)注的焦點。各種在線服務(wù)極大地提高了移動終端用戶體驗,越來越多的人們通過手機等移動終端接入網(wǎng)絡(luò),完成各種操作。但對于銀行帳號,個人信息,公司數(shù)據(jù)等私密信息的接入必須進行安全審查。傳統(tǒng)的授權(quán),認證方式主要通過輸入密碼實現(xiàn),其安全性受到密碼復(fù)雜性的影響。但是由于手機輸入方式的限制,當(dāng)安全性與方便性發(fā)生沖突時,人們更傾向于選擇方便性(即簡單的密碼)[1]。因此,移動終端和在線服務(wù)提供商對于既安全又方便的認證、授權(quán)機制的需求更加迫切。
本文通過分析社交網(wǎng)絡(luò)結(jié)構(gòu),提出一種基于社交網(wǎng)絡(luò)的智能手機輕型安全認證協(xié)議(lightweight social authentication protocol,LSAP)解決手機面臨的安全認證問題,并使用BAN邏輯形式化證明其達到期望目標(biāo)。
一般用戶在使用手機接入如郵件、手機銀行或在線購物時,系統(tǒng)要求用戶必須提供足夠的證據(jù)證明自己的身份,傳統(tǒng)的方式是使用用戶名和密碼確認用戶身份。但是移動終端擁有自身的特點,目前對于手機安全認證方式的研究主要從用戶行為、社交網(wǎng)絡(luò)和生物特征3個方面提取認證用戶身份的信息。Mauro Conti等[2]提出了基于用戶接電話動作的移動終端認證方式,將用戶點擊接聽鍵至開始通話的間隔時間作為識別用戶依據(jù)。XI Kai等[3]提出了基于指紋特征的移動設(shè)備認證協(xié)議,將指紋作為識別依據(jù)生成加密密鑰用于認證和加密消息。Richard C等[4]提出了一種云環(huán)境中基于用戶行為的移動終端認證框架,其中,考慮了終端的資源受限特性,將大部分計算任務(wù)轉(zhuǎn)移到云服務(wù)器中,但沒有解決認證數(shù)據(jù)在傳輸中的安全問題。以上均是通過運用移動終端自身特性來解決安全認證問題,使得智能手機的安全認證方式相對于PC更加簡單,同時提高認證的安全性。Soleymani B等[5]提出了一種基于社交網(wǎng)絡(luò)分析的智能手機認證協(xié)議(social authentication protocol for mobile phones,SAP),通過將用戶的通信網(wǎng)絡(luò)看作社交網(wǎng)絡(luò),從社交網(wǎng)絡(luò)角度提出一種手機的認證協(xié)議。但是其提出的認證協(xié)議并未考慮移動終端的資源受限特性。由于SAP是基于PKI的非對稱密鑰加密認證協(xié)議,在一次認證過程中手機端需要進行多次非對稱密鑰的加密與解密。對于較為繁忙的用戶(認證次數(shù)多)或者對安全性要求較高(票據(jù)更新快,票據(jù)需求量大)的用戶,需要頻繁的執(zhí)行非對稱密鑰的加密/解密過程。但是非對稱加密/解密方式是屬于計算密集型任務(wù),對于計算資源需求量大,執(zhí)行過程時間長。對于計算資源有限的智能手機,非對稱密鑰的缺點表現(xiàn)得尤其明顯。首先,嚴(yán)重影響手機電池的續(xù)航時間;其次,影響系統(tǒng)對用戶操作的反映時間。由此看來,計算資源需求低、安全性高、執(zhí)行過程時間短的對稱加密方式顯然比非對稱加密/解密方式更適合于資源受限的終端設(shè)備。
因此,本文提出的 LSAP使用 Kerberos協(xié)議[6]完成用戶間共享對稱密鑰的安全傳輸,從而實現(xiàn)在認證消息中使用對稱加密方式代替SAP中的非對稱加密方式。最終達到降低功耗、電池續(xù)航時間的最小化及對系統(tǒng)反映時間影響的目的。但在規(guī)模較大網(wǎng)絡(luò)中,使用對稱加密存在分發(fā)和管理密鑰的數(shù)量爆炸式增長問題,本文將通過數(shù)據(jù)分析說明對稱密鑰加密方式在LSAP中的適用性。
基于社交網(wǎng)絡(luò)的認證協(xié)議基本思想是將用戶的聯(lián)系人當(dāng)作用戶的關(guān)聯(lián)節(jié)點,一次交互事件當(dāng)作一條邊。從而將用戶使用手機的行為轉(zhuǎn)化為一種用戶關(guān)聯(lián)的社交網(wǎng)絡(luò),并從社交網(wǎng)絡(luò)角度認證用戶的合法性。
本文提出的LSAP的認證協(xié)議框架如圖1所示。LSAP由智能手機用戶群(分為認證主體和好友群);認證服務(wù)器;Kerberos協(xié)議服務(wù)器組成。LSAP通過Kerberos協(xié)議分發(fā)對稱密鑰[6],認證過程使用對稱加密方式替換SAP的非對稱加密方式,從而減輕移動終端的計算負擔(dān),提高安全認證協(xié)議的可用性。
圖1 LSAP結(jié)構(gòu)圖Fig.1 Structure of LSAP
LSAP流程如圖2所示。系統(tǒng)中所有用戶(A,B)都分別與S共享對稱密鑰,這些密鑰已經(jīng)從物理途徑或其他安全途徑進行分發(fā)。當(dāng)用戶與好友之間要傳輸認證票據(jù)時,若他們之間沒有共享對稱密鑰,系統(tǒng)則通過密鑰分發(fā)協(xié)議為其分發(fā)密鑰,以此保證每一用戶與其所有好友之間都存在一對共享對稱密鑰。若他們之間共享了密鑰,則使用共享的對稱密鑰保證票據(jù)的安全性。本文LSAP中使用的符號意義如表1所示。輕型安全認證協(xié)議詳細描述如下。
1)當(dāng)A與好友B交互行為符合認證模型[5]要求時,B 生成證明票據(jù) {A,Lv,Tvalid}Kbs,并添加時間戳,最后,用與A的共享密鑰加密整個信息后發(fā)送給A。
2)當(dāng)A需要進行身份認證的時候,A取出收集到的所有證明票據(jù),添加時間戳和自己的身份標(biāo)識A,最后用與S的共享密鑰加密后發(fā)送給中心認證服務(wù)器S。
3)S 接受到認證請求后,計算:{{{A,Lv,Tvalid}Kbs,L,Tas,A}Kas}Das后,當(dāng)驗證 Tas有效時,計算:{{A,Lv,Tvalid}Kbs}Dbs。然后比較獲得的2個A值,當(dāng)2個A值相同時,進一步驗證Tvalid的有效性,否則認證失敗。當(dāng)Tvalid有效時,A的一張身份證明票據(jù)有效,否則此張票據(jù)失效。類似計算其他的認證票據(jù),當(dāng)有效的認證票據(jù)數(shù)量達到一定門限時,則認定A的身份認證成功,否則為認證失敗。認證服務(wù)器根據(jù)認證結(jié)果確定下一步操作。
通過以上步驟,可以使服務(wù)器S相信用戶A的好友B是否認可用戶A身份的合法性。通過累計這樣的信任獲得對用戶A身份的信任度,最終達到認證用戶A的身份的目的。
圖2 LSAP消息流程圖Fig.2 Flowchart of LSAP
表1 LSAP協(xié)議中符號意義Tab.1 Symbolic meanings of the LSAP
BAN邏輯[7]在安全協(xié)議形式化分析研究中占有十分重要位置。BAN邏輯是一種基于信念的模態(tài)邏輯,在BAN邏輯推理過程中,參加協(xié)議的主體信念隨消息變化而不斷的演進。本文采用BAN邏輯對LSAP議進行形式化證明,證明其可以達到協(xié)議的安全目標(biāo)。其BAN邏輯的符號意義如表2所示。
表2 BAN邏輯的符號意義Tab.2 Symbolic meanings of the BAN logic
我們使用BAN邏輯對輕型認證協(xié)議進行形式化證明。A和B是參與用戶,A是認證主體,且B是A的好友,S表示認證服務(wù)器,K表示共享的密鑰。我們主要證明服務(wù)器S要相信好友B及認證主體A是合法的用戶。對于LSAP需要實現(xiàn)的目標(biāo)如下。
目標(biāo):
我們首先將LSAP中的消息進行簡化,其中,1-4步是使用Kerberos協(xié)議為用戶分發(fā)密鑰,5-6步是LSAP的認證消息。
按照BAN邏輯的規(guī)則對協(xié)議進行理想化:
因為明文在邏輯推理中不能傳遞任何信任,所以,我們忽略了明文傳輸?shù)南?。并且按照實際情況加入合理的信任消息。這是BAN邏輯中協(xié)議理想化步驟所做的主要工作。
BAN邏輯中為了證明所提出的目標(biāo),必須要有一定的假設(shè)前提。所以,我們給出的基本假設(shè)如下。
基本假設(shè):
目標(biāo)證明:
Kerberos協(xié)議證明部分省略,詳細過程請參考文獻[7]。通過 Kerberos協(xié)議我們可以獲得目標(biāo)T1,T2,T3,T4的證明。以下證明剩余目標(biāo):
通過消息I4,由已獲得證明的T1,T2和X11為條件,基于新鮮性規(guī)則和消息意義規(guī)則得
聯(lián)合R1,R2,基于新鮮值驗證規(guī)則和裁定規(guī)則得:
通過消息I5,由 X1,X3,X15為條件,基于新鮮性規(guī)則和消息意義規(guī)則得
聯(lián)合R5,R7,基于新鮮值驗證規(guī)則和裁定規(guī)則得
由 R6,X2,X4,X14 為條件,基于新鮮性規(guī)則和消息意義規(guī)則得
至此,證明結(jié)束。R4=T5,R8=T6,R10=T7,R13=T8目標(biāo)已證明完畢。
證明了LSAP的有效性,并分析了其安全性。本章首先通過數(shù)據(jù)分析說明LSAP使用Kerberos協(xié)議分發(fā)對稱密鑰的合理性,其次,通過實驗驗證LSAP協(xié)議對終端資源的消耗情況。
VAST 2008通話數(shù)據(jù)集是由2008VAST競賽提供的人工合成數(shù)據(jù)集,其中,包括了2006年6月的10天的通話數(shù)據(jù),描述了Catalano社會網(wǎng)絡(luò)的通話結(jié)構(gòu)。其中包括9 834條記錄、400個節(jié)點和961條邊[9]。
用戶好友的數(shù)量直接關(guān)系到LSAP系統(tǒng)的密鑰分發(fā)規(guī)模,所以,對VAST數(shù)據(jù)集分析,我們主要關(guān)注于用戶的好友數(shù)量。我們通過分析獲得用戶的聯(lián)系人數(shù)(包括呼入,呼出)如圖3所示,其平均聯(lián)系人數(shù)為4.58人。平均聯(lián)系人數(shù)量不大于5的人數(shù)占了總量的82%。當(dāng)系統(tǒng)設(shè)定好友數(shù)上限為20時,可滿足98.25%的用戶需求。當(dāng)上限為10時,可滿足93.75%的用戶需求。
圖3 用戶聯(lián)系人數(shù)量(主動和被動)Fig.3 Number of contacts(active and passive)
由此,我們可以確定大部分用戶的聯(lián)系人數(shù)量是在較小范圍內(nèi)。只有少量用戶的聯(lián)系人數(shù)量較多,然而,在LSAP中并非要求將用戶的所有聯(lián)系人都設(shè)置為好友。當(dāng)聯(lián)系人數(shù)量較多時,可以選取其中最常用的部分聯(lián)系人作為好友,以此來減少系統(tǒng)復(fù)雜性的同時增加終端的安全性。用戶選取好友的數(shù)量以滿足系統(tǒng)分發(fā)票據(jù)的需求為標(biāo)準(zhǔn)。所以,當(dāng)用戶和好友間通信使用對稱加密方式時,每個終端所需保存的對稱密鑰數(shù)量也在較小范圍內(nèi),終端性能并不會因為需要保存和管理大量密鑰而嚴(yán)重降低。
對于規(guī)模為N;平均好友數(shù)為AFN的通訊網(wǎng)絡(luò);基于PKI的SAP的中心服務(wù)器共需要處理密鑰數(shù)量為N;終端需要保存的密鑰數(shù)量為AFN?;贙erberos的LSAP的中心服務(wù)器共需要處理密鑰數(shù)量為AFN×N/2,終端需要保存的密鑰數(shù)量為AFN。即當(dāng)認證系統(tǒng)采用LSAP時,其服務(wù)器要處理的密鑰數(shù)量是采用SAP時的AFN/2倍。
圖4 用戶平均聯(lián)系人數(shù)量Fig.4 The average number of contacts
一般情況下,在現(xiàn)實生活中個人的常用聯(lián)系人數(shù)量是在一定范圍中的。由圖4可以看出,隨著通訊網(wǎng)絡(luò)的規(guī)模迅速增加,網(wǎng)絡(luò)中的AFN卻增加得非常緩慢,且AFN的增長是在較小的范圍內(nèi)。另一方面,當(dāng)系統(tǒng)設(shè)置用戶最大好友數(shù)時,就確定了AFN的最大值??芍到y(tǒng)采用LSAP所需處理的密鑰數(shù)量是采用SAP的常數(shù)倍,其實際倍數(shù)取決于系統(tǒng)中用戶的實際平均好友數(shù)AFN。所以,基于Kerberos的LSAP中密鑰分發(fā)數(shù)量并不會隨著系統(tǒng)規(guī)模的擴大而迅速增長,更會不像在計算機網(wǎng)絡(luò)中密鑰數(shù)量會隨著網(wǎng)絡(luò)規(guī)模的二次方增長。因此,我們提出的基于Kerberos的LSAP并不會引起大規(guī)模密鑰分發(fā)及管理問題。
本節(jié)主要考慮協(xié)議運行對終端資源的消耗。在對比實驗中我們忽略了終端的通訊開銷,且只關(guān)注終端的資源消耗情況,與SAP對比如表3所示。
表3 SAP和LSAP對比Tab.3 Comparisons between SAP and LSAP
其中,符號意義:Tps表示非對稱加密或解密所消耗的時間;Tk表示對稱加密或解密所消耗的時間。
由于非對稱加密或解密對資源的需求要大于對稱加密或解密的方式。在一般情況下,對稱加密/解密速度比非對稱加密/解密的速度至少快100倍[9]。由表3可以看出,在每一次消息處理過程中LSAP對資源的請求都比SAP少。
因為在2種協(xié)議中,終端產(chǎn)生票據(jù)時需求的計算資源最多。每張認證票據(jù)需進行2次加密操作,所以,實驗采用在后臺持續(xù)的對同一明文進行2次加密模擬協(xié)議中的認證票據(jù)的產(chǎn)生過程,觀察其對移動終端的影響。實驗通過android編程實現(xiàn)加密,參數(shù)如表4所示,使用Android 2.3.7系統(tǒng),CPU主頻為600 MHz,512 MByte內(nèi)存的中興V880手機作為實驗平臺。獲得的結(jié)果如表5所示。
表4 產(chǎn)生認證票據(jù)參數(shù)Tab.4 Parameters of generating authentication notes
表5 實驗結(jié)果Tab.5 Experimental result
LSAP不但利用了手機用戶間的通信操作所隱含的相互認證信息,而且加入了用戶通信網(wǎng)絡(luò)中用戶間通信操作的網(wǎng)絡(luò)特征,減輕了終端的計算負擔(dān)。在加密安全性方面,實驗中采用的密鑰長為128位的AES加密安全性高于密鑰長為512位的RSA加密方式。若SAP采用1 024位的RSA,對終端資源的需求將更大。LSAP和SAP的安全性都還依賴認證票據(jù)更新的頻率,認證票據(jù)更新越快,認證安全性越高。這就要求終端要頻繁的生成和更新認證票據(jù)。從表5中得到,終端產(chǎn)生LSAP票據(jù)的速度是SAP票據(jù)的55倍,同時每張票據(jù)對電池的消耗量SAP是LSAP的54倍。我們可以看出,對同樣票據(jù)需求量使用LSAP的終端續(xù)航時間更長。所以,LSAP相對于SAP安全性和用戶體驗都獲得一定的提高,更加適合于資源受限的智能手機。
本文針對智能手機安全認證協(xié)議未考慮終端缺陷問題,提出了輕型認證協(xié)議LSAP,利用手機通話網(wǎng)絡(luò)中存在的用戶聯(lián)系人數(shù)量小,聯(lián)系對象穩(wěn)定的特點,使用對稱加密方式代替非對稱加密方式保證消息的安全性。通過實驗驗證了LSAP對移動終端資源需求少,運行速度快。但本文提出的方法沒有考慮到好友的權(quán)重問題及其他社交特性,這將是下一步工作。
[1]STEVEN F,NATHAN C,SEVASTI K.Beyond the pin:Enhancing user authentication for mobile devices[J].Computer Fraud and Security,2008,2008(8):12-17.
[2]MAURO C,IRINA Z Z,BRUNO C.Mind how you answer me!transparently authenticating the user of a smartphone when answering or placing a call[C]//Proceeding of the 6th ACM Symposium on Information,Computer and lommunications Security,ASIACCS 2011,Hong Kong,China:ACM Press,2011:249-259.
[3]XI Kai,AHMAD T,HAN F.A fingerprint based biocryptographic security protocol designed for client/server authentication in mobile computing environment[J].Security Comm Networks,2010,4(5):487-499.
[4]RICHARD C,MARKUS J.Authentication in the Clouds:A Framework and its Application to Mobile Users[C]//Proceedings of the 2010 ACM workshop on cloud computing security workshop.New york,Ny,USA:ACM,2010:1-6.
[5]SOLEYMANI B,MAHESWARAN M.Social Authentication Protocol for Mobile Phones.IEEE Computational Science and Engineering[C]//IEEE Computer Society International Conference on Vancouver,Canada:IEEE conference publications,2009:436-441.
[6]NEUMAN B C,TO'S T.Kerberos:an authentication service for computer networks[J].Communications Magazine,IEEE,1994,32(9):33-38.
[7]BURROWS M,ABADI M,NEEDHAM H.A logic of authentication[J].ACM Transactions on Computer Systems,1990,8(1):18-36.
[8]YE Qi,ZHU Tian,HU Deyong,et al.Cell phone mini challenge award:Social network accuracy exploring temporal communication in mobile call graphs[C]//IEEE Symposium on Visual Analytics Science and Technology.Columbus,Ohio,USA:IEEE conference publications,2008:207-208.
[9]LEE Jungsan,LIN Peiyu,CHANG Chinchen.Lightweight Secure Roaming Mechanism Between GPRS/UMTS and Wireless LANs[J].Wireless Personal Communications,2010,53(4):569-580.