臧笑宇,黃鋒濤,陳守明,翁睿琳
(廣東電網(wǎng)有限責(zé)任公司信息中心,廣東 廣州 510000)
隨著移動(dòng)互聯(lián)網(wǎng)、云計(jì)算的發(fā)展,電力行業(yè)在移動(dòng)互聯(lián)網(wǎng)的應(yīng)用越來越多,而傳統(tǒng)的身份認(rèn)證和電子簽名手段在移動(dòng)互聯(lián)網(wǎng)環(huán)境下的安全問題面臨著巨大挑戰(zhàn)。對(duì)用戶本身的身份認(rèn)證采用用戶名+口令方式不安全,容易被嗅探、破解甚至拖庫;短信動(dòng)態(tài)口令容易被劫持;動(dòng)態(tài)口令令牌存在釣魚風(fēng)險(xiǎn);安全級(jí)別最高的UKEY,采購成本高,分發(fā)管理困難,用戶使用不方便,最重要的是也不適合手機(jī)終端的使用。
針對(duì)這一尷尬局面,電力企業(yè)通過建設(shè)一套云KEY管理系統(tǒng)平臺(tái),主要面對(duì)企業(yè)移動(dòng)互聯(lián)網(wǎng)個(gè)人用戶,提供免介質(zhì)的密鑰管理和使用環(huán)境,提供密鑰生成、數(shù)字簽名等操作,實(shí)現(xiàn)手機(jī)變UKEY的效果。同時(shí),該系統(tǒng)平臺(tái)還需要滿足手機(jī)終端環(huán)境下特殊的應(yīng)用需求,致力于保障用戶保密數(shù)據(jù)和隱私信息的安全,推進(jìn)電力移動(dòng)互聯(lián)網(wǎng)應(yīng)用向安全、合法、合規(guī)方向發(fā)展[1]。
1.1.1 UKEY
UKEY是一種通過USB(通用串行總線接口)直接與計(jì)算機(jī)相連、具有密碼驗(yàn)證功能、可靠高速的小型存儲(chǔ)設(shè)備,需要安裝對(duì)應(yīng)的驅(qū)動(dòng)程序。
1.1.2 APP
APP是英文Application的簡(jiǎn)稱,通常用于IOS、安卓等手機(jī)操作系統(tǒng)的應(yīng)用。APP多指智能手機(jī)的第三方應(yīng)用程序。
1.1.3 加密機(jī)
加密機(jī)是通過國(guó)家商用密碼主管部門鑒定并批準(zhǔn)使用的國(guó)內(nèi)自主開發(fā)的主機(jī)加密設(shè)備。加密機(jī)和主機(jī)、應(yīng)用之間使用TCP/IP協(xié)議通信。加密機(jī)對(duì)主機(jī)的類型和主機(jī)操作系統(tǒng)無任何特殊要求。
1.1.4 云KEY
云KEY利用移動(dòng)智能終端作為身份認(rèn)證載體,以密碼技術(shù)為核心,通過融合數(shù)字證書、生物識(shí)別、設(shè)備指紋、安全加固等多因素、多維度安全技術(shù),為用戶提供移動(dòng)終端、PC等全終端環(huán)境下的可信身份認(rèn)證服務(wù)。
1.1.5 TEE
TEE是Trusted Execution Environment的縮寫,是可信執(zhí)行環(huán)境的簡(jiǎn)稱。
1.1.6 TLS
安全傳輸層協(xié)議(TLS),在兩個(gè)通信應(yīng)用程序之間提供保密性和數(shù)據(jù)完整性。該協(xié)議由TLS記錄協(xié)議(TLS Record)和TLS握手協(xié)議(TLS Handshake)組成。
1.1.7 APKTool
APKTool是GOOGLE提供的APK編譯工具,能夠反編譯和回編譯apk,同時(shí)安裝反編譯系統(tǒng)apk所需要的framework-res框架,具有清理上次反編譯文件夾等功能。
1.1.8 Dex2jar
一種將apk反編譯成Java源碼的工具。
隨著移動(dòng)互聯(lián)網(wǎng)向社會(huì)、經(jīng)濟(jì)、生活各個(gè)層面深度滲透,用戶帳號(hào)安全成為各方關(guān)注的焦點(diǎn)。日益頻發(fā)的用戶身份信息泄露事件,更對(duì)移動(dòng)應(yīng)用安全與用戶隱私敲響了警鐘,也成為深入推進(jìn)移動(dòng)互聯(lián)網(wǎng)應(yīng)用向安全、合法、合規(guī)發(fā)展的核心問題。然而,現(xiàn)有的認(rèn)證手段無法滿足移動(dòng)互聯(lián)網(wǎng)環(huán)境下的應(yīng)用安全需求,均存在較大的局限性。各種認(rèn)證方式具體分析如表1所示。
表1 各種認(rèn)證方式的說明
綜上,電力行業(yè)亟需一款兼具便捷性與安全性,符合用戶使用體驗(yàn),具備合法、合規(guī)效力的安全身份認(rèn)證產(chǎn)品[2]。
當(dāng)前,移動(dòng)互聯(lián)網(wǎng)應(yīng)用發(fā)展迅猛。為保障移動(dòng)互聯(lián)網(wǎng)應(yīng)用的安全,采用云KEY系統(tǒng),為電力行業(yè)移動(dòng)互聯(lián)網(wǎng)應(yīng)用的身份認(rèn)證、數(shù)字簽名、抗抵賴等業(yè)務(wù)提供安全保障。
云KEY系統(tǒng)包括云KEY移動(dòng)身份認(rèn)證系統(tǒng)服務(wù)器、云密碼機(jī)和云KEY APP三部分。其中,云KEY移動(dòng)身份認(rèn)證系統(tǒng)為后臺(tái)總體服務(wù),完成用戶管理、密鑰管理、認(rèn)證服務(wù)和系統(tǒng)配置等;云KEY APP完成用戶的認(rèn)證、密鑰的管理、掃碼認(rèn)證/簽名/簽章等;云密碼機(jī)為后臺(tái)密鑰協(xié)同計(jì)算的硬件實(shí)現(xiàn)載體。云KEY系統(tǒng)總體架構(gòu)如圖1所示。
圖1 云KEY系統(tǒng)架構(gòu)設(shè)計(jì)
2.1.1 云KEY移動(dòng)身份認(rèn)證系統(tǒng)
云KEY移動(dòng)身份認(rèn)證系統(tǒng)是后臺(tái)管理系統(tǒng),面向管理員提供云KEY業(yè)務(wù)的管理功能,面向應(yīng)用系統(tǒng)提供認(rèn)證和簽名功能。
(1)接口層。提供云KEY APP調(diào)用接口和管理端接口,管理端接口為系統(tǒng)管理界面提供服務(wù)。
(2)業(yè)務(wù)層。業(yè)務(wù)層功能主要涉及安全審計(jì)、系統(tǒng)及服務(wù)監(jiān)控、賬戶管理、管理員管理和應(yīng)用管理。安全審計(jì)能夠詳細(xì)記錄系統(tǒng)所有的操作和接口調(diào)用,非授權(quán)人員不可篡改記錄;系統(tǒng)及服務(wù)監(jiān)控能夠監(jiān)控系統(tǒng)服務(wù),授權(quán)管理員能夠查看設(shè)備運(yùn)行狀態(tài);賬戶管理,即對(duì)云KEY賬戶進(jìn)行管理、統(tǒng)計(jì)和查詢;維護(hù)賬戶狀態(tài),存儲(chǔ)賬戶對(duì)應(yīng)的設(shè)備公鑰信息等;管理員管理,對(duì)系統(tǒng)操作的管理員進(jìn)行添加、刪除、修改以及授權(quán),只有授權(quán)管理員才能登陸系統(tǒng)進(jìn)行操作;應(yīng)用管理,即添加應(yīng)用,對(duì)應(yīng)用進(jìn)行授權(quán)。
(3)云密碼機(jī)接口層。實(shí)現(xiàn)與云密碼機(jī)的交互,包括密鑰生成接口、數(shù)據(jù)簽名接口和數(shù)據(jù)加密接口等。
2.1.2 云KEY APP
云KEY系統(tǒng)手機(jī)終端APP是直接面向最終用戶提供云KEY系統(tǒng)的身份認(rèn)證、電子簽名和自助管理服務(wù)的手機(jī)終端應(yīng)用。
2.1.3 云密碼機(jī)
云密碼機(jī)為底層密碼設(shè)備,為云KEY系統(tǒng)提供底層密鑰生成、密鑰保護(hù)、密鑰管理和密碼運(yùn)算服務(wù)[3-4]。
云KEY APP的框架如圖2所示。
圖2 云KEY-APP架構(gòu)設(shè)計(jì)
(1)展現(xiàn)層
可視化云KEY APP界面,提供了包括用戶登錄、口令輸入、指紋驗(yàn)證、修改口令和二維碼掃碼等界面操作。
(2)接口層
接口層分兩種類型接口:SDK接口和APP界面接口。第三方應(yīng)用SDK接口,向第三方應(yīng)用提供相關(guān)服務(wù);APP界面接口為展現(xiàn)層提供數(shù)據(jù)服務(wù)。
(3)核心層
核心層是云KEY APP核心服務(wù)層,提供了包括密鑰運(yùn)算、簽名、加解密、安全鍵盤和獲取設(shè)備信息等核心業(yè)務(wù)。
(4)安全區(qū)
采用標(biāo)準(zhǔn)TEE接口,云KEY APP設(shè)備密鑰、設(shè)備信息等存儲(chǔ)在安全區(qū)域,Andriod系統(tǒng)無法操作和修改。
(5)安全加固
云KEY APP采用了安全加固,具有一定的抗逆向工程、抗調(diào)試與篡改的能力,防止惡意程序或攻擊者繞過用戶身份認(rèn)證機(jī)制。
云KEY系統(tǒng)應(yīng)用架構(gòu)如圖3所示。
圖3 云KEY系統(tǒng)和應(yīng)用集成業(yè)務(wù)流程設(shè)計(jì)
云KEY移動(dòng)身份認(rèn)證系統(tǒng)通過API接口和業(yè)務(wù)應(yīng)用系統(tǒng)對(duì)接。針對(duì)B/S系統(tǒng),業(yè)務(wù)應(yīng)用系統(tǒng)通過云KEY提供的HTTPS接口進(jìn)行交互,瀏覽器端通過可信二維碼和云KEY APP交互。針對(duì)手機(jī)APP應(yīng)用,云KEY可以直接提供API供業(yè)務(wù)應(yīng)用系統(tǒng)的APP調(diào)用。
云KEY系統(tǒng)支持SaaS和私有化部署兩種形式。SaaS部署建設(shè)成本低,只需要在云KEY云服務(wù)后臺(tái)開通應(yīng)用賬戶即可;私有化部署則是把云KEY系統(tǒng)、云密碼機(jī)本地化部署在機(jī)房。
2.4.1 密碼及密鑰保護(hù)
移動(dòng)端密碼機(jī)密鑰保護(hù)設(shè)計(jì),如圖4所示。
圖4 移動(dòng)端密碼機(jī)密鑰保護(hù)設(shè)計(jì)
(1)采用密鑰分割和協(xié)同計(jì)算,密鑰分別由手機(jī)端和云端密碼機(jī)生成,“云+端”協(xié)同計(jì)算,密鑰永遠(yuǎn)不會(huì)以明文形式出現(xiàn)。
(2)支持TEE的手機(jī)端,生成通過指紋保護(hù)的本地TEE密鑰保護(hù)手機(jī)端密鑰因子;不支持TEE的手機(jī)端,使用用戶口令+手機(jī)硬件信息+隨機(jī)數(shù)對(duì)手機(jī)端密鑰因子保護(hù)。
(3)云端密鑰使用具有國(guó)密型號(hào)的云密碼機(jī)生成并保護(hù)。
2.4.2 應(yīng)用安全
(1)應(yīng)用服務(wù)器和云KEY系統(tǒng)之間采用密鑰認(rèn)證,非簡(jiǎn)單口令認(rèn)證,采用TLS協(xié)議安全通信。
(2)每個(gè)二維碼都有一個(gè)唯一標(biāo)識(shí)和有效期;二維碼內(nèi)容加密保護(hù),防止第三方程序讀?。欢S碼數(shù)據(jù)由云KEY服務(wù)器簽名,防止冒充。
(3)所有認(rèn)證請(qǐng)求均由后臺(tái)發(fā)起,防止客戶端攻擊。
(4)密碼或指紋有重試次數(shù)限制,超過限制,賬戶凍結(jié)。
2.4.3 終端安全
(1)采用安全鍵盤技術(shù),具有鍵盤輸入保護(hù)、鍵盤按鍵隨機(jī)的功能;防止截屏、錄屏,數(shù)據(jù)鍵盤內(nèi)存數(shù)據(jù)做變換。
(2)防逆向(Anti-RE),防止通過APKTool、Dex2jar、JEB等靜態(tài)工具來查看應(yīng)用的Java層代碼。
(3)防篡改、防調(diào)試、防止代碼注入,屏蔽數(shù)據(jù)修改等調(diào)試行為,實(shí)時(shí)檢測(cè)模擬器環(huán)境,發(fā)現(xiàn)潛在的破解終止運(yùn)行。
2.4.4 實(shí)名認(rèn)證
(1)支持身份證聯(lián)網(wǎng)核查、人臉識(shí)別等實(shí)名認(rèn)證。
(2)支持主流第三方CA數(shù)字證書,通過第三方CA綁定用戶身份和公鑰。
(3)支持區(qū)塊鏈的方式綁定用戶身份和公鑰(第三方CA和區(qū)塊鏈的身份綁定方式可以二選一)[3-4]。
電力企業(yè)通過建設(shè)云KEY管理系統(tǒng),利用多方密鑰協(xié)同技術(shù)、手機(jī)TEE技術(shù)、云密碼機(jī)技術(shù)和移動(dòng)安全技術(shù)等多緯度保護(hù)用戶密鑰,能夠?qū)崿F(xiàn)個(gè)人對(duì)密鑰的擁有和控制權(quán),實(shí)現(xiàn)手機(jī)變KEY的效果,有力保障了電力行業(yè)移動(dòng)互聯(lián)網(wǎng)環(huán)境下的應(yīng)用身份認(rèn)證安全問題。
此外,系統(tǒng)的建設(shè)成果價(jià)值還有以下幾點(diǎn):
(1)系統(tǒng)采用“云+端”硬件級(jí)加密安全保護(hù)技術(shù),采用的密鑰算法確保了用戶身份安全;
(2)實(shí)現(xiàn)了手機(jī)即令牌,“一刷一掃”輕松實(shí)現(xiàn)手機(jī)、PC統(tǒng)一身份登錄認(rèn)證;
(3)支持實(shí)名認(rèn)證,移動(dòng)互聯(lián)網(wǎng)應(yīng)用環(huán)境下UKEY的最好替代方案;
(4)支持生物識(shí)別、設(shè)備指紋、口令等多因素認(rèn)證模式;
(5)采用數(shù)字證書技術(shù)滿足合法性、等級(jí)保護(hù)等相關(guān)要求;
(6)節(jié)約投入成本,無終端設(shè)備購置成本,分發(fā)維護(hù)便捷高效。
電力系統(tǒng)是我國(guó)重要的能源系統(tǒng)。電力系統(tǒng)的安全問題會(huì)直接影響國(guó)計(jì)民生,甚至關(guān)乎國(guó)家安全。電力企業(yè)通過使用云KEY技術(shù)構(gòu)建移動(dòng)互聯(lián)網(wǎng)環(huán)境安全平臺(tái),大大加強(qiáng)了移動(dòng)互聯(lián)網(wǎng)應(yīng)用的安全技術(shù)防護(hù)水平,實(shí)現(xiàn)了移動(dòng)互聯(lián)網(wǎng)用戶的有效管理,為信息系統(tǒng)整體安全防護(hù)和管理水平的提升提供了有效手段。因此,云KEY平臺(tái)致力于保障用戶保密數(shù)據(jù)和隱私信息的安全,可在此基礎(chǔ)上支持全面完整的云安全解決方案,指導(dǎo)和推進(jìn)各行各業(yè)云應(yīng)用的迅速推廣,從而促進(jìn)我國(guó)云計(jì)算產(chǎn)業(yè)的發(fā)展壯大,增強(qiáng)國(guó)際競(jìng)爭(zhēng)優(yōu)勢(shì)。