黃健,黃健文,李俊磊
(中國電信股份有限公司廣東電信研究院,廣州 510630)
在互聯(lián)網(wǎng)時(shí)代,用戶需要為各種互聯(lián)網(wǎng)應(yīng)用輸入不同的用戶名、密碼進(jìn)行登錄認(rèn)證,針對(duì)互聯(lián)網(wǎng)應(yīng)用多用戶名、多密碼的場(chǎng)景,GSMA國際組織于2014年提出了Mobile Connect項(xiàng)目簡稱MC計(jì)劃,該計(jì)劃主要以運(yùn)營商手機(jī)為認(rèn)證載體,采用用戶賬號(hào)作為統(tǒng)一的應(yīng)用接入賬號(hào),在全球聯(lián)盟內(nèi)實(shí)現(xiàn)認(rèn)證系統(tǒng)互聯(lián)、向全球用戶提供可分不同安全級(jí)別并且體驗(yàn)一致的手機(jī)認(rèn)證業(yè)務(wù)[1]。
自MC計(jì)劃于2014年世界移動(dòng)通信大會(huì)(Mobile World Congress)期間推出以來,34家移動(dòng)網(wǎng)絡(luò)運(yùn)營商已在21個(gè)國家和地區(qū)推出此項(xiàng)服務(wù)。中國電信2016年底開始研究以MC計(jì)劃為基礎(chǔ)的快捷認(rèn)證USIM卡產(chǎn)品,并明確定義:快捷認(rèn)證功能是使用USIM卡的用戶身份認(rèn)證能力,為中國電信自有業(yè)務(wù)、公眾和行業(yè)應(yīng)用提供用戶認(rèn)證的功能[2]。本文后續(xù)內(nèi)容將重點(diǎn)分析中國電信USIM卡快捷認(rèn)證數(shù)據(jù)接口、核心業(yè)務(wù)流程。
快捷認(rèn)證系統(tǒng)包括:應(yīng)用用戶、用戶終端、USIM卡、應(yīng)用UI、應(yīng)用認(rèn)證平臺(tái)、運(yùn)營商快捷認(rèn)證平臺(tái)、運(yùn)營商短信網(wǎng)關(guān)等角色,其中USIM卡和用戶終端共同構(gòu)成快捷認(rèn)證的認(rèn)證主體,USIM卡負(fù)責(zé)快捷認(rèn)證相關(guān)身份認(rèn)證短信處理及認(rèn)證加密數(shù)據(jù)處理,終端通過主動(dòng)式命令菜單提供用戶認(rèn)證時(shí)的操作UI。系統(tǒng)架構(gòu)中,電信運(yùn)營商負(fù)責(zé)終端、USIM卡、運(yùn)營商快捷認(rèn)證平臺(tái)構(gòu)建;互聯(lián)網(wǎng)應(yīng)用商負(fù)責(zé)應(yīng)用UI、應(yīng)用認(rèn)證平臺(tái)構(gòu)建。系統(tǒng)架構(gòu)如圖1所示。
圖1 快捷認(rèn)證系統(tǒng)架構(gòu)圖
用戶使用互聯(lián)網(wǎng)應(yīng)用時(shí),用戶可選擇由互聯(lián)網(wǎng)應(yīng)用認(rèn)證平臺(tái)進(jìn)行認(rèn),也可選擇由運(yùn)營商快捷認(rèn)證方式進(jìn)行認(rèn)證。快捷認(rèn)證系統(tǒng)將電信運(yùn)營商、互聯(lián)網(wǎng)應(yīng)用商、用戶認(rèn)證方式選擇和認(rèn)證主體整合,打通應(yīng)用認(rèn)證平臺(tái)和快捷認(rèn)證平臺(tái)間接口,使用戶在認(rèn)證主體選擇時(shí)可選擇通過用戶手機(jī)終端進(jìn)行認(rèn)證。
中國電信快捷認(rèn)證由于網(wǎng)絡(luò)制式原因,采用CD?MA數(shù)據(jù)短信方式實(shí)現(xiàn)。數(shù)據(jù)短信根據(jù)傳遞數(shù)據(jù)量大小分級(jí)聯(lián)短信和非級(jí)聯(lián)短信兩種,當(dāng)傳遞數(shù)據(jù)量超過一定數(shù)值時(shí)必須采用級(jí)聯(lián)的多條短信實(shí)現(xiàn)數(shù)據(jù)傳遞,根據(jù)傳遞方向分上行(卡到平臺(tái))和下行(平臺(tái)到卡)兩種。下行應(yīng)用數(shù)據(jù)不超過120字節(jié)時(shí),采用非級(jí)聯(lián)短信方式;當(dāng)下行數(shù)據(jù)超過120字節(jié)時(shí)需采用級(jí)聯(lián)短信方式,如表1和表2所示。由于上行數(shù)據(jù)量較少,上行采用非級(jí)聯(lián)數(shù)據(jù)短信。
表1 級(jí)聯(lián)下行數(shù)據(jù)短信接口
表2 級(jí)聯(lián)下行后續(xù)數(shù)據(jù)短信接口
快捷認(rèn)證應(yīng)用流程主要包括開機(jī)主動(dòng)注冊(cè)、個(gè)人密碼修改、基本認(rèn)證及帶驗(yàn)證碼認(rèn)證等核心業(yè)務(wù)流程,同時(shí)為了實(shí)現(xiàn)認(rèn)證平臺(tái)對(duì)USIM卡的管理,快捷認(rèn)證應(yīng)用也支持USIM卡狀態(tài)獲取、重置初始狀態(tài)等卡管理流程。
開機(jī)主動(dòng)注冊(cè)流程通過監(jiān)聽終端發(fā)出的STATUS指令為計(jì)時(shí)器,當(dāng)卡未注冊(cè)時(shí),收到10個(gè)STATUS指令時(shí)觸發(fā)注冊(cè)流程,注冊(cè)完成后則結(jié)束STATUS指令監(jiān)聽。注冊(cè)流程如圖2所示。
圖2 開機(jī)主動(dòng)注冊(cè)流程圖
快捷認(rèn)證應(yīng)用要求禁止在國際漫游狀態(tài)下進(jìn)行注冊(cè)。USIM通過setup event list主動(dòng)式命令監(jiān)聽終端位置信息方式判斷USIM是否處于國際漫游狀態(tài)判斷。終端獲取位置信息后通過envelope指令將位置信息(MCC/MNC)發(fā)送給USIM,若卡片接收的MCC為非460值,則表示卡處于國漫漫游狀態(tài),不進(jìn)行開機(jī)主動(dòng)注冊(cè)流程。
快捷認(rèn)證應(yīng)用設(shè)計(jì)時(shí)考慮到注冊(cè)的成功率及監(jiān)聽STATUS指令帶來的卡硬件資源消耗問題,快捷認(rèn)證應(yīng)用限定開機(jī)注冊(cè)總的注冊(cè)次數(shù)為3次,3次后不再進(jìn)行STATUS事件監(jiān)聽,后續(xù)注冊(cè)通過認(rèn)證平臺(tái)發(fā)出的0x65指令進(jìn)行平臺(tái)觸發(fā)注冊(cè)。
當(dāng)用戶希望更換快捷認(rèn)證個(gè)人密碼時(shí),用戶可通過客戶電話進(jìn)行安全條件審核,安全條件驗(yàn)證通過后客戶觸發(fā)快捷認(rèn)證平臺(tái)下發(fā)0x56數(shù)據(jù)短信進(jìn)行個(gè)人密碼修改。
快捷認(rèn)證個(gè)人密碼設(shè)計(jì)為4-8位數(shù)字,編碼方式為ASCII碼。個(gè)人密碼修改前需在手機(jī)端輸入驗(yàn)證舊密碼,當(dāng)舊的密碼輸入錯(cuò)誤10次后,USIM使用DIS?PLAY主動(dòng)式命令提示用戶“您的個(gè)人密碼已被鎖定,請(qǐng)咨詢電信客服10000號(hào)”,個(gè)人密碼鎖定后可采用密碼重置流程進(jìn)行密碼初始化重置。密碼修改流程通過GETINPUT命令進(jìn)行兩次密碼輸入,當(dāng)兩次密碼輸入不一致時(shí)修改不成功。個(gè)人密碼修改流程如圖3所示。
圖3 快捷認(rèn)證個(gè)人密碼修改流程圖
在圖1快捷認(rèn)證系統(tǒng)架構(gòu)圖中,當(dāng)用戶選擇通過快捷認(rèn)證方式進(jìn)行登錄時(shí),登錄認(rèn)證請(qǐng)求由互聯(lián)網(wǎng)應(yīng)用認(rèn)證平臺(tái)轉(zhuǎn)發(fā)提交給運(yùn)營商快捷認(rèn)證平臺(tái),觸發(fā)快捷認(rèn)證平臺(tái)給USIM下發(fā)指令為0x52(基本認(rèn)證)、0x59(帶驗(yàn)證碼認(rèn)證)數(shù)據(jù)短信。帶驗(yàn)證碼認(rèn)證流程如圖4所示。
圖4 帶驗(yàn)證碼認(rèn)證流程圖
如果USIM未注冊(cè),認(rèn)證流程將觸發(fā)USIM立即發(fā)送注冊(cè)上行請(qǐng)求0x65指令;如果未設(shè)置密碼,則觸發(fā)USIM進(jìn)行密碼初始化設(shè)置流程,完成個(gè)人密碼設(shè)置。收到認(rèn)證平臺(tái)下發(fā)認(rèn)證請(qǐng)求0x59(帶驗(yàn)證碼認(rèn)證)數(shù)據(jù)短信后,進(jìn)行認(rèn)證類型判斷,認(rèn)證類型10不需要輸入密碼時(shí),USIM直接GETINPUT輸入驗(yàn)證碼完成認(rèn)證。
當(dāng)認(rèn)證類型為01,需要用戶輸入個(gè)人密碼時(shí),GETINPUT輸入個(gè)人密碼驗(yàn)證,當(dāng)輸入密碼10次錯(cuò)誤后,DISPLAYTEXT提示用戶個(gè)人密碼鎖定,認(rèn)證結(jié)束。當(dāng)個(gè)人密碼驗(yàn)證成功后,GETINPUT輸入驗(yàn)證碼完成認(rèn)證。
認(rèn)證過程中在用戶GET INPUT指令輸入個(gè)人密碼和GET INPUT輸入驗(yàn)證碼時(shí),當(dāng)用戶點(diǎn)擊GETIN?PUT指令菜單“取消”按鈕時(shí),認(rèn)證不成功,認(rèn)證流程結(jié)束。
快捷認(rèn)證應(yīng)用中USIM發(fā)出Display text,Get in?put,Send SMS等主動(dòng)式命令時(shí),可能存在手機(jī)終端忙或不支持等異?,F(xiàn)象,導(dǎo)致以上主動(dòng)式命令不能在終端上正常執(zhí)行。因此USIM會(huì)根據(jù)終端主動(dòng)式命令執(zhí)行返回值,進(jìn)行如下異常機(jī)制處理:
●當(dāng)返回值為“00”時(shí),用戶確認(rèn)或執(zhí)行成功,根據(jù)各認(rèn)證業(yè)務(wù)流程圖決定USIM操作。
●當(dāng)返回值為“10”時(shí),用戶取消,根據(jù)業(yè)務(wù)流程決定USIM操作。
●當(dāng)返回值為“2X”時(shí),USIM卡立即重發(fā)一次,重發(fā)后再次收到終端返回“2X”時(shí),卡返回9000給終端,USIM不再重發(fā)。
●當(dāng)返回值為其它(含3X),不需重發(fā),USIM響應(yīng)9000狀態(tài)字給終端,結(jié)束該業(yè)務(wù)流程。
●當(dāng)返回值為“11”,均跳轉(zhuǎn)到當(dāng)前指令。所有業(yè)務(wù)流程不支持result“11”回退操作。
中國電信快捷認(rèn)證應(yīng)用以加密CDMA數(shù)據(jù)短信方式實(shí)現(xiàn)了用戶在手機(jī)端的接入身份認(rèn)證,為用戶使用互聯(lián)網(wǎng)應(yīng)用提供了便利性和安全性。在快捷認(rèn)證應(yīng)用推廣過程中同時(shí)也發(fā)現(xiàn)了數(shù)據(jù)短信延時(shí)、不能在國際漫游狀態(tài)下進(jìn)行認(rèn)證、手機(jī)終端GETINPUT、DISPLAY TEXT主動(dòng)式命令兼容性較差等主要問題,解決目前已出現(xiàn)問題,需要短信網(wǎng)關(guān)、終端、業(yè)務(wù)平臺(tái)等環(huán)節(jié)和角色共同努力,隨著技術(shù)的持續(xù)進(jìn)步及快捷認(rèn)證業(yè)務(wù)管理的完善,將進(jìn)一步提升用戶使用體驗(yàn)。
參考文獻(xiàn):
[1]張榮.運(yùn)營商統(tǒng)一移動(dòng)認(rèn)證方案與應(yīng)用.廣東通信技術(shù),2016,36(11).
[2]關(guān)于印發(fā)中國電信4G卡(非NFC)需求白皮書(V2.0)的通知.中國電信市場(chǎng)部【2017】19號(hào)文件.