一種基于移動(dòng)終端的系統(tǒng)登錄方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于信息安全技術(shù)領(lǐng)域,特別是一種基于移動(dòng)終端的系統(tǒng)登錄方法。
【背景技術(shù)】
[0002]我們?cè)谠L問網(wǎng)絡(luò)信息系統(tǒng)或應(yīng)用系統(tǒng)時(shí)可能會(huì)遇到以下問題。
[0003]—是,當(dāng)我們?cè)诰W(wǎng)吧等公共環(huán)境使用公共計(jì)算機(jī)登錄我們要訪問的信息系統(tǒng)或應(yīng)用系統(tǒng)時(shí),如登錄QQ、支付寶,由于公共計(jì)算機(jī)可能被安置了木馬,我們登錄系統(tǒng)的帳戶名、口令存在被竊取的風(fēng)險(xiǎn)(即便是動(dòng)態(tài)口令,也不能避免這種安全風(fēng)險(xiǎn))。
[0004]二是,我們?cè)诓煌男畔⑾到y(tǒng)或應(yīng)用系統(tǒng)的帳戶名、口令多了很容易忘記、混淆。
[0005]三是,在一些安全性要求高的場合,我們需要使用存放有數(shù)字證書及私鑰的USBKey等密碼硬件,但是如果有多個(gè)USB Key密碼硬件需要攜帶,會(huì)給用戶帶來不便。
[0006]針對(duì)這些問題,本發(fā)明申請(qǐng)人在其專利申請(qǐng)“一種基于移動(dòng)通信終端和短信的登錄方法”(申請(qǐng)?zhí)?201510225152.6),“一種基于手機(jī)登錄的系統(tǒng)及登錄方法”(申請(qǐng)?zhí)?201410395338.1),“一種面向信息系統(tǒng)的異步登錄方法” (201510393405.0),以及騰訊、百度的一系列專利中提出了基于移動(dòng)終端的解決方案,這些方案的共同特點(diǎn)是:在用戶使用計(jì)算機(jī)登錄一個(gè)信息系統(tǒng)或應(yīng)用系統(tǒng)時(shí),用戶使用移動(dòng)終端在信息系統(tǒng)或應(yīng)用系統(tǒng)或者一個(gè)登錄輔助系統(tǒng)完成登錄操作,從而實(shí)現(xiàn)用戶使用計(jì)算機(jī)在信息系統(tǒng)或應(yīng)用系統(tǒng)上的登錄。這樣可以做到:用戶無需在計(jì)算機(jī)上輸入帳戶名、口令,從而避免了在公共計(jì)算機(jī)上帳戶名、口令被竊取的風(fēng)險(xiǎn);將用戶在不同信息系統(tǒng)或應(yīng)用系統(tǒng)緩存在用戶手機(jī)等移動(dòng)終端中,在用戶使用移動(dòng)終端進(jìn)行登錄操作時(shí),登錄程序自動(dòng)從移動(dòng)終端獲取相應(yīng)的帳戶名、口令;可以將移動(dòng)終端作為一個(gè)存放不同數(shù)字證書及私鑰的密碼硬件裝置,從而避免了隨身攜帶(不同)密碼硬件的麻煩。
[0007]但是,以上方案也存在一些不足,這些方案需要對(duì)信息系統(tǒng)或應(yīng)用系統(tǒng)的后臺(tái)進(jìn)行相應(yīng)改造,以便與引入的移動(dòng)登錄功能集成,但這在很多情況下這樣做是困難的或不便的,特別是對(duì)于已部署的系統(tǒng)。
【發(fā)明內(nèi)容】
[0008]本發(fā)明的目的是提出一種無需對(duì)信息系統(tǒng)或應(yīng)用系統(tǒng)的服務(wù)端系統(tǒng)(后臺(tái))進(jìn)行修改以及與移動(dòng)登錄功能集成、或者僅需對(duì)服務(wù)端系統(tǒng)進(jìn)行微小修改即可集成移動(dòng)登錄功能的基于移動(dòng)終端的系統(tǒng)登錄方法,以克服現(xiàn)有技術(shù)方案的不足。
[0009]為了實(shí)現(xiàn)上述目的,本發(fā)明提出的技術(shù)方案是:
[0010]一種基于移動(dòng)終端的系統(tǒng)登錄方法,所述方法如下:
[0011]當(dāng)用戶在計(jì)算機(jī)上使用信息系統(tǒng)客戶端訪問一個(gè)尚未登錄的信息系統(tǒng)時(shí),信息系統(tǒng)啟動(dòng)用戶登錄操作(即用戶身份鑒別);信息系統(tǒng)客戶端顯示一個(gè)安全令牌標(biāo)識(shí)數(shù)據(jù);
[0012]用戶通過運(yùn)行在移動(dòng)終端中的移動(dòng)登錄助手使用用戶身份憑證在移動(dòng)登錄系統(tǒng)完成登錄(即身份鑒別);在通過移動(dòng)登錄助手在移動(dòng)登錄系統(tǒng)進(jìn)行登錄操作的過程中,用戶將信息系統(tǒng)客戶端顯示的安全令牌標(biāo)識(shí)數(shù)據(jù)輸入到移動(dòng)登錄助手;
[0013]在用戶通過移動(dòng)登錄助手在移動(dòng)登錄系統(tǒng)完成登錄后,移動(dòng)登錄助手將安全令牌標(biāo)識(shí)數(shù)據(jù)提交到移動(dòng)登錄系統(tǒng),移動(dòng)登錄系統(tǒng)為用戶生成一個(gè)登錄信息系統(tǒng)的安全令牌并將生成的安全令牌暫存在移動(dòng)登錄系統(tǒng),暫存在移動(dòng)登錄系統(tǒng)的安全令牌用移動(dòng)登錄助手提交的安全令牌標(biāo)識(shí)數(shù)據(jù)或安全令牌標(biāo)識(shí)數(shù)據(jù)的導(dǎo)出數(shù)據(jù)標(biāo)識(shí);
[0014]或者,在用戶通過移動(dòng)登錄助手在移動(dòng)登錄系統(tǒng)完成登錄后,移動(dòng)登錄系統(tǒng)為用戶生成一個(gè)登錄信息系統(tǒng)的安全令牌,移動(dòng)登錄系統(tǒng)將生成的安全令牌返回給移動(dòng)登錄助手,由移動(dòng)登錄助手將安全令牌提交到移動(dòng)登錄系統(tǒng)的安全令牌暫存子系統(tǒng)暫存(對(duì)應(yīng)移動(dòng)登錄系統(tǒng)由安全令牌簽發(fā)系統(tǒng)擴(kuò)展而來的情形),暫存在移動(dòng)登錄系統(tǒng)的安全令牌用安全令牌標(biāo)識(shí)數(shù)據(jù)或安全令牌標(biāo)識(shí)數(shù)據(jù)的導(dǎo)出數(shù)據(jù)標(biāo)識(shí);
[0015]或者,在用戶通過移動(dòng)登錄助手在移動(dòng)登錄系統(tǒng)完成登錄后,移動(dòng)登錄助手使用用戶身份憑證為用戶生成一個(gè)登錄信息系統(tǒng)的安全令牌,并將生成的安全令牌提交到移動(dòng)登錄系統(tǒng)暫存,暫存的安全令牌用安全令牌標(biāo)識(shí)數(shù)據(jù)或安全令牌標(biāo)識(shí)數(shù)據(jù)的導(dǎo)出數(shù)據(jù)標(biāo)識(shí);
[0016]用戶所使用的信息系統(tǒng)客戶端利用安全令牌標(biāo)識(shí)數(shù)據(jù)或安全令牌標(biāo)識(shí)數(shù)據(jù)的導(dǎo)出數(shù)據(jù)從移動(dòng)登錄系統(tǒng)或移動(dòng)登錄系統(tǒng)的安全令牌暫存子系統(tǒng)獲得暫存的安全令牌,然后使用安全令牌在信息系統(tǒng)完成登錄操作;
[0017]所述信息系統(tǒng)是一個(gè)通過網(wǎng)絡(luò)提供預(yù)定功能服務(wù)的系統(tǒng)(即提供預(yù)定功能的應(yīng)用系統(tǒng));所述信息系統(tǒng)客戶端是信息系統(tǒng)的用戶端程序(包括專用客戶端或通用客戶端,如瀏覽器);
[0018]所述安全令牌標(biāo)識(shí)數(shù)據(jù)是一個(gè)隨機(jī)字串或者是一個(gè)包含隨機(jī)字串的數(shù)據(jù);所述安全令牌標(biāo)識(shí)數(shù)據(jù)由信息系統(tǒng)或信息系統(tǒng)客戶端生成;
[0019]所述移動(dòng)終端是一種具有數(shù)據(jù)網(wǎng)絡(luò)聯(lián)網(wǎng)能力的便攜式計(jì)算裝置(如移動(dòng)通信裝置、平板電腦、智能穿戴設(shè)備等);
[0020]所述移動(dòng)登錄助手是在用戶的移動(dòng)終端中安裝并運(yùn)行的一個(gè)用于幫助用戶使用信息系統(tǒng)客戶端進(jìn)行信息系統(tǒng)登錄操作的程序;
[0021]所述移動(dòng)登錄系統(tǒng)是一個(gè)在用戶使用計(jì)算機(jī)上的信息系統(tǒng)客戶端登錄信息系統(tǒng)過程中通過用戶的移動(dòng)終端幫助信息系統(tǒng)客戶端在信息系統(tǒng)完成登錄操作的系統(tǒng);所述移動(dòng)登錄系統(tǒng)是一個(gè)獨(dú)立的系統(tǒng)或者是信息系統(tǒng)的一個(gè)組件;所述移動(dòng)登錄系統(tǒng)的安全令牌暫存子系統(tǒng)是移動(dòng)登錄系統(tǒng)用于暫存安全令牌的一個(gè)子系統(tǒng);
[0022]用戶在移動(dòng)登錄系統(tǒng)進(jìn)行登錄時(shí)所用的身份憑證由用戶標(biāo)識(shí)數(shù)據(jù)和私密數(shù)據(jù)組成;所述用戶標(biāo)識(shí)數(shù)據(jù)是用戶在移動(dòng)登錄系統(tǒng)中的帳戶名,或者與用戶在移動(dòng)登錄系統(tǒng)的帳戶名對(duì)應(yīng)的、用于標(biāo)識(shí)用戶身份的數(shù)據(jù)(如數(shù)字證書);所述私密數(shù)據(jù)是用于證明用戶就是身份憑證的擁有者的數(shù)據(jù);用戶在移動(dòng)登錄系統(tǒng)的身份憑證或帳戶與用戶在信息系統(tǒng)的身份憑證或帳戶相同或不同;
[0023]所述安全令牌是由移動(dòng)登錄系統(tǒng)或移動(dòng)登錄助手生成的一次性或臨時(shí)性的身份證明數(shù)據(jù),或者是由移動(dòng)登錄助手生成的包含用戶身份憑證包括私密數(shù)據(jù)(如帳戶名、口令)的身份證明數(shù)據(jù);所述臨時(shí)性是指僅在指定或預(yù)定的時(shí)間期限內(nèi)有效;若所述安全令牌是由所述移動(dòng)登錄系統(tǒng)生成的一次性或臨時(shí)性的身份證明數(shù)據(jù),則所述安全令牌中包含有用戶在信息系統(tǒng)的帳戶名,具有有效期限并能防止偽造和篡改(如通過公鑰數(shù)字簽名或?qū)ΨQ密鑰HMAC簽名);若所述安全令牌是由所述移動(dòng)登錄助手生成的一次性或臨時(shí)性的身份證明數(shù)據(jù),則所述安全令牌中包含有用戶在信息系統(tǒng)的帳戶名以及使用用戶身份憑證的私密數(shù)據(jù)運(yùn)算處理后得到的數(shù)據(jù)(如用私鑰或?qū)ΨQ密鑰對(duì)信息系統(tǒng)返回的挑戰(zhàn)碼進(jìn)行簽名后的數(shù)據(jù),或者基于時(shí)間生成的動(dòng)態(tài)口令等);暫存在移動(dòng)登錄系統(tǒng)中的安全令牌超過預(yù)定的時(shí)間期限未被信息系統(tǒng)客戶端獲取則被刪除。
[0024]若信息系統(tǒng)客戶端以條碼的形式顯示所述安全令牌標(biāo)識(shí)數(shù)據(jù),且所述移動(dòng)終端有攝像頭,則移動(dòng)終端調(diào)用條碼掃描程序通過攝像頭獲取信息系統(tǒng)客戶端顯示的條碼,從條碼中獲得安全令牌標(biāo)識(shí)數(shù)據(jù);
[0025]若信息系統(tǒng)客戶端顯示的條碼中除了所述安全令牌標(biāo)識(shí)數(shù)據(jù)外,還包括信息系統(tǒng)返回的登錄鑒別數(shù)據(jù)(如挑戰(zhàn)碼),則移動(dòng)登錄助手從掃描的條碼中獲得登錄鑒別數(shù)據(jù),并在用戶通過移動(dòng)登錄助手在移動(dòng)登錄系統(tǒng)完成登錄后,由移動(dòng)登錄系統(tǒng)利用登錄鑒別數(shù)據(jù)生成用戶登錄信息系統(tǒng)的安全令牌,或者由移動(dòng)登錄助手利用用戶身份憑證的私密數(shù)據(jù)以及登錄鑒別數(shù)據(jù)生成用戶登錄信息系統(tǒng)的安全令牌。
[0026]信息系統(tǒng)客戶端和移動(dòng)登錄助手之間共享所述安全令牌標(biāo)識(shí)數(shù)據(jù)的另一種方式是:在移動(dòng)登錄助手登錄移動(dòng)登錄系統(tǒng)過程中,移動(dòng)登錄助手生成安全令牌標(biāo)識(shí)數(shù)據(jù)并以字符串的形式顯示,用戶將移動(dòng)登錄助手顯示的安全令牌標(biāo)識(shí)數(shù)據(jù)用手工方式輸入到信息系統(tǒng)客戶端的人機(jī)界面,并提交給信息系統(tǒng)客戶端。
[0027]所述移動(dòng)登錄助手和信息系統(tǒng)客戶端,或者移動(dòng)登錄系統(tǒng)和信息系統(tǒng)客戶端,利用安全令牌標(biāo)識(shí)數(shù)據(jù)的導(dǎo)出數(shù)據(jù)作為密鑰,用于對(duì)安全令牌進(jìn)行安全保護(hù),包括加密和解
I_L| ο
[0028]從以上描述可以看到,基于本發(fā)明的方法:無需信息系統(tǒng)(或應(yīng)用系統(tǒng))后臺(tái)與引入的移動(dòng)登錄功能進(jìn)行集成;對(duì)于一個(gè)已部署的信息系統(tǒng),系統(tǒng)仍然可以采用原有的用戶登錄(身份鑒別)方式;若已部署的信息系統(tǒng)是Web系統(tǒng),只需對(duì)Web系統(tǒng)的登錄頁面進(jìn)行改動(dòng)或替換即可;若已部署的信息系統(tǒng)是非Web系統(tǒng),則只需對(duì)其客戶端進(jìn)行修改或替換即可,無需對(duì)對(duì)信息系統(tǒng)的服務(wù)端系統(tǒng)(后臺(tái))進(jìn)行修改。
[0029]需指出的是,本發(fā)明的方法與騰訊、百度的基于移動(dòng)終端及條碼的系統(tǒng)登錄方法的不同,除了無需信息系統(tǒng)后臺(tái)與引入的移動(dòng)登錄功能進(jìn)行集成及一些具體技術(shù)方式不同外(如條碼不是必須的、安全令牌標(biāo)識(shí)數(shù)據(jù)可以由移動(dòng)終端中的移動(dòng)登錄助手生成),最大的不同之處還有在于,本發(fā)明中的移動(dòng)登錄系統(tǒng)可以是一個(gè)與信息系統(tǒng)(或應(yīng)用系統(tǒng))獨(dú)立的身份服務(wù)系統(tǒng),如Kerberos KDC、SAML IdP或WS_Fedeat1n STS (此時(shí)對(duì)應(yīng)于安全令牌由移動(dòng)登錄系統(tǒng)生成的情形),或者僅是一個(gè)暫存安全令牌的中介系統(tǒng)(此時(shí)對(duì)應(yīng)于安全令牌由移動(dòng)登錄助手生成的情形);當(dāng)移動(dòng)登錄系統(tǒng)純粹是一個(gè)暫存安全令牌的中介系統(tǒng)時(shí),用戶在移動(dòng)登錄系統(tǒng)進(jìn)行登錄(身份鑒別)的目的是防止移動(dòng)登錄系統(tǒng)的資源被濫用,或者防止針對(duì)移動(dòng)登錄系統(tǒng)的DoS攻擊,即在移動(dòng)登錄系統(tǒng)登錄的目的是出于對(duì)移動(dòng)登錄系統(tǒng)資源的安全保護(hù);無論移動(dòng)登錄系統(tǒng)是一個(gè)身份服務(wù)系統(tǒng)還是一個(gè)暫存數(shù)據(jù)的中介系統(tǒng),用戶都無需使用移動(dòng)終端在信息系統(tǒng)(或應(yīng)用系統(tǒng))登錄,而騰訊、百度的方法,用戶都需要使用移動(dòng)終端在信息系統(tǒng)(或應(yīng)用系統(tǒng))登錄。
【附圖說明】
[0030]圖1為本發(fā)明針對(duì)信息系統(tǒng)的系統(tǒng)登錄方法的示意圖。
【具體實(shí)施方式】
[0031]下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步的描述。
[0032]實(shí)施例一、
[0033]信息系統(tǒng)原本采用一個(gè)身份服務(wù)系統(tǒng)(如Kerberos KDC、SAML IdentityProvider 或 WS-Federat1n 的 Security Token Services)簽發(fā)的安全令牌(KerberosTicket、SAML斷言,WS-Federat1n安全令牌)進(jìn)行用戶登錄鑒別。這時(shí)可采用的實(shí)