999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于開閉原則的網上銀行身份認證服務方案

2018-03-30 03:25:32張利琴朱鵬飛李偉于華章
網絡空間安全 2018年9期

張利琴 朱鵬飛 李偉 于華章

摘 要:身份認證是網上銀行系統所有活動的入口,不斷推陳出新的身份認證解決方案,在集成到網上銀行系統的過程中,存在應用接口、交互界面不統一等問題,導致工程復雜度提高、維護難度和工作量增加。結合成熟的認證平臺,基于開閉原則設計研發一套便于部署實施、適合迭代更新的身份認證轉接系統,支持當前金融行業標準規定的多種身份認證方案,集成基本不需要進行改造,只對現有系統進行擴展,減少對現有系統運行的影響,從而有效降低普及推廣過程中的工程量和復雜度,具有較強的可行性和實用性,體現了一定的安全性、合規性和先進性。

關鍵詞:網上銀行;開閉原則;轉接系統

中圖分類號:TP274+.2 文獻標識碼:B

Abstract: Identity authentication is the entrance of all the activities of Online Banking. New identity authentication solutions are constantly being introduced. In the process of integration into the online banking system, there are problems such as inconsistent application interfaces and interactive interfaces, which lead to the increase of engineering complexity, maintenance difficulty and workload. Combining with the mature authentication platform and based on the open-close principle, a scheme of identity authentication transfer system is designed and developed to support various authentication schemes under the current financial industry standard, which is easy to deploy and implement and suitable for iterative updating. When new forms of authentication appear, the existing system does not need to be modified, only need to be extended to decrease the impact on the operation of the existing system. Therefore, this scheme can effectively reduce the amount and complexity of the project in the popularization process, and has a strong feasibility and practicability, and also reflects certain security, the compliance and the advancement.

Key words: online banking; OCP; transfer system

1 引言

金融行業標準JR/T 0068-2012《網上銀行系統信息安全通用規范》[1]要求,網上銀行資金類交易、重要信息及業務變更類等高風險業務應使用雙因素身份認證。雙因素身份認證由兩種身份認證方式組成:一是客戶知曉、注冊的客戶名稱及密碼;二是客戶持有、特有并用于身份認證的信息,包括但不限于物理介質或電子設備等。JR/T 0068-2012還對USB Key、OTP令牌等多種常見的身份認證設備提出了要求。隨著技術的發展,能夠用于雙因素身份認證的身份認證解決方案不斷涌現,例如基于移動終端的生物特征識別[2]、FIDO[3]等,在保證安全性的同時不斷改善用戶體驗,為網上銀行/手機銀行的推陳出新起到了推動作用。然而,在集成到網上銀行/手機銀行系統的過程中,由于各種身份認證解決方案的應用接口、交互界面等不一致,導致工程復雜度提高,維護難度和工作量增加,極易影響到現有網上銀行系統的服務,甚至導致服務中斷,這對于重視服務穩定性和可用性的金融機構而言,是難以接受的。因此,設計研發便于部署實施、適合迭代更新的身份認證轉接系統,集成基本不需要進行改造,將對現有系統的改造變為對現有系統的擴展,減少對現有系統運行的影響,從而有效降低普及推廣過程中的工程量和復雜度,具有必要性和實用性。

實踐證明,軟件產品在生命周期內發生變化是不可避免的。因此,為了提高軟件產品的靈活性,保證軟件產品的穩定性,在軟件設計開發過程中要適應變化。而開閉原則(Open Closed Principe,OCP)[4]作為面向對象設計的核心思想之一,盡量通過擴展軟件實體的行為來實現變化,而不是通過修改現有代碼來實現變化。基于開閉原則設計研發和部署適用于網上銀行、便于升級更新的身份認證系統,將對現有系統的改造變為對現有系統的擴展,有助于減少工程的復雜度,避免影響現有系統的服務穩定性。

2 設計思路

2.1 設計目標

在網上銀行部署實施雙因素身份認證機制,往往面臨幾個問題。

第一,不同的身份認證方式,對人機交互界面的需求不同。例如,如果使用數字證書(基于USB Key),需要在網上銀行的用戶登錄頁面以及各項業務的用戶身份認證頁面加載用于檢查USB Key是否連接到電腦并與其進行數據交換的COM控件;如果使用動態口令(動態令牌),則需要在網上銀行的上述頁面增加動態口令的輸入窗口。這意味著如果調整雙因素身份認證機制的組成部分,需要對網上銀行的多個頁面進行相應的調整。這使得網上銀行系統的開發和更新難以遵循開閉原則,不僅增加了工作量和復雜度,還容易出現疏漏。這對于在網上銀行系統部署實施新的身份認證技術是不利的。

第二,不同的身份認證方式涉及的身份認證憑據不同,所需的后續處理方式也不同。例如,如果使用數字證書(基于USB Key),涉及的身份認證憑據是USB Key生成的數字簽名(通常為長度超過128字節的比特串),需要使用數字證書中的公鑰驗證其有效性,并通過電子認證服務驗證數字證書的有效性,最終確定用戶身份的有效性;如果使用動態口令(動態令牌),則涉及的身份認證憑據是動態令牌生成的動態口令(通常為6位十進制數),需要與動態口令認證系統生成的一系列動態口令進行比對,從而確定用戶身份的有效性。這意味著如果調整雙因素身份認證機制的組成部分,需要對網上銀行系統的多個組成部分進行相應的調整,進一步提高了網上銀行系統遵循開閉原則的難度。

本系統的設計目標是為網上銀行系統提供便于集成、維護以及升級換代的第二因子身份認證服務,具體包括四項內容。

(1)構建雙因素身份認證機制:支持可用于網上銀行雙因素身份認證的常用身份認證機制,與網上銀行系統的用戶名/口令機制相疊加,從而形成網上銀行所需的雙因素身份認證機制。

(2)便于集成:向網上銀行系統提供統一的身份認證服務接口,使系統成為與網上銀行業務系統相對獨立的身份認證服務,改善身份認證服務與網上銀行業務系統之間的緊耦合關系。

(3)便于集成和切換:支持多種第二因子身份認證技術(包括基于數字證書的身份認證和基于動態口令的身份認證)的同時,身份認證服務接口與具體的身份認證技術方案相對獨立,無論使用何種身份認證技術,與網上銀行系統的集成接口保持不變。支持相對獨立的身份認證交互界面,各身份認證技術所需的交互頁面與網上銀行系統的用戶名/口令身份認證頁面相互獨立,進一步改善身份認證服務與網上銀行業務系統之間的緊耦合關系。

(4)擴展性強:部署實施新的身份認證技術時,相關工作控制在身份認證服務范圍內,力爭不影響現有的網上銀行系統,基本不需要進行聯調。

作為網上銀行系統的重要組成部分,應當遵循網上銀行相關監管的要求。為此,系統及其提供的身份認證服務應當符合金融行業標準的相關要求,如JR/T 0068、JR/T 0149[5]等。為了確保安全合規,基于數字證書的身份認證系統和基于動態口令的身份認證系統分別使用符合金融行業標準要求的成熟系統,主要的設計研發工作集中在面向網上銀行系統提供統一的身份認證服務接口方面。相應地,系統被實現為身份認證轉接系統。

2.2 技術路線

根據設計目標,確定技術路線。

以OAuth[6]的思路為基礎,使用訪問令牌作為系統向網上銀行系統提供的身份認證憑據。當用戶通過身份認證時,為用戶發布令牌;當用戶請求訪問網上銀行業務系統資源時,通過驗證訪問令牌的有效性確定是否允許訪問。訪問令牌除了發給用戶之外,還在系統內部保存令牌及其發布狀態。用戶使用訪問令牌請求訪問網上銀行業務系統資源、網上銀行業務系統查詢用戶的身份認證狀態時,系統查詢用戶對應的令牌發布。如果令牌已發布,則根據系統保存的令牌驗證其有效性。如果有效,系統應答網上銀行業務系統用戶身份認證狀態為“通過認證”,網上銀行業務系統可給予用戶訪問相應資源的權限。否則,系統將用戶訪問請求轉接到網上銀行業務系統配置的身份認證系統頁面,引導用戶重新進行身份認證。

系統采用分布式架構設計,將各個功能實現為分布式的服務,盡量降低服務之間的耦合程度。各服務設計為REST風格的Web Service。REST是目前主流的Web Service軟件架構風格[7],有助于降低開發的復雜性,同時,還能夠提高系統的可伸縮性。

身份認證轉接相關功能具體包括五項內容。

(1)網上銀行業務系統對接:向網上銀行業務系統提供查詢用戶身份認證狀態的接口。在接口被調用時,根據用戶對應的訪問令牌的當前狀態向網上銀行業務系統返回“身份認證通過”的消息,或者“需要重定向到身份認證頁面”的消息。

(2)數字證書身份認證系統對接:將用戶通過網上銀行業務系統發來的重定向后的訪問請求轉到數字證書身份認證系統的相應頁面,身份認證結束后將用戶訪問請求重定向到用戶請求訪問的網上銀行業務系統資源。

(3)動態口令身份認證系統對接:將用戶通過網上銀行業務系統發來的重定向后的訪問請求轉到動態口令身份認證系統的相應頁面,身份鑒別完成后,再將用戶的訪問請求,重定向至用戶所請求訪問的網銀業務系統。

(4)重定向管理:根據配置項確定將用戶通過網上銀行業務系統發來的重定向后的訪問請求的訪問地址,包括將訪問網上銀行業務系統資源的請求重定向到數字證書身份認證系統或動態口令身份認證系統,以及將訪問(數字證書或動態口令)身份認證系統的請求在身份認證通過后重定向到原先訪問的網上銀行業務系統資源。

(5)訪問統計:記錄來自網上銀行業務系統的請求,為將來實施大數據分析積累日志數據。

特別地,為了降低系統之間的耦合程度,身份認證轉接系統與其他系統的對接使用“注冊”機制,為其他系統分配應用標識并進行維護。

3 設計實現

3.1 系統架構

系統架構如圖1所示。

其中,身份認證轉接服務器用于與網上銀行系統與異構的身份認證服務之間對接,向網上銀行系統提供統一的身份認證服務接口;訪問令牌管理服務器用于生成和管理訪問令牌;應用管理服務器用于向管理者提供系統管理界面,管理功能包括用戶管理、應用配置等等;數字證書身份認證系統和動態口令身份認證系統分別提供基于數字證書和基于動態口令的身份認證功能;消息中間件服務器用于各服務器之間的消息交互。

3.2 運行流程

系統主要承擔身份認證的轉接服務,參與的執行主體主要包括客戶端、網上銀行業務系統、身份認證轉接系統和身份認證服務系統。其中,用戶通過客戶端發起訪問請求,并接收來自網上銀行業務系統的響應。系統的工作流程,如圖2和圖3所示。

系統的具體流程分為幾步。

步驟s101:客戶端發送訪問請求給網上銀行業務系統。

步驟s102:網上銀行業務系統判斷訪問請求中是否帶有用戶身份憑證令牌,如果是,將令牌通過身份認證轉接系統發給令牌管理系統。否則,執行步驟s109。

步驟s103:令牌管理系統判斷令牌是否在已分發的令牌列表中。如果是,執行步驟s104。否則,通過身份認證轉接系統發送“令牌無效”消息給網上銀行業務系統,網上銀行業務系統可據此拒絕訪問請求,結束。

步驟s104:令牌管理系統判斷令牌是否已過期,如果是,需要重新進行身份認證,執行步驟s105。否則,通過身份認證轉接系統發送“令牌有效”消息給網上銀行業務系統,執行步驟s108。

步驟s105:身份認證轉接系統根據令牌應用標識和指定認證方信息查詢確定要使用的認證服務(動態口令或數字證書),并向所確定的認證服務發送詢問用戶登錄狀態請求。

步驟s106:認證服務根據令牌檢索對應用戶的登錄狀態,生成用戶登錄狀態響應,返回詢問用戶登錄狀態響應給系統。

步驟s107:身份認證轉接系統根據返回的詢問用戶登錄狀態響應判斷令牌是否有效,如果是,發送“令牌有效”消息給網上銀行業務系統,執行步驟s108。否則,發送“令牌無效”消息給網上銀行業務系統,執行步驟s109。

步驟s108:網上銀行業務系統根據訪問請求中的信息、令牌以及預設策略,返回相應的資源給客戶端,客戶端獲取資源,結束。

步驟s109:網上銀行業務系統根據應用標識符生成第一認證請求,并發送第一認證請求給系統。

具體地,應用標識符是網上銀行業務系統與身份認證轉接系統對接時生成的。

步驟s110:身份認證轉接系統根據第一認證請求中的應用標識符判斷是否為合法的認證請求,如果是,執行步驟s111。否則,發送“應用標識符無效”消息給網上銀行業務系統,網上銀行業務系統可據此拒絕向客戶端返回資源,返回步驟s101。

步驟s111:身份認證轉接系統根據應用標識符、授權方式、授權范圍、強化身份認證服務地址、認證方式生成符合注冊協議的第一認證請求響應,并將第一認證請求響應發送給網上銀行業務系統。

步驟s112:網上銀行業務系統根據符合協議的第一認證請求響應和第一訪問權限列表生成第二認證請求,發送包含應用標識符和第一訪問權限列表的第二認證請求給系統。

步驟s113:身份認證轉接系統根據應用標識符查詢網上銀行業務系統指定的身份認證方,并重定向瀏覽器到指定身份認證方的身份認證界面。

步驟s114:客戶端顯示身份認證頁面,并接收用戶信息,接收到用戶信息后,將用戶認證信息返回給指定身份認證方。

步驟s115:指定身份認證方接收用戶信息,并對用戶信息進行認證,判斷是否認證通過,如果是,發送“身份認證通過”消息給身份認證轉接系統,執行步驟s116。否則,發送“認證未通過”消息給身份認證轉接系統,身份認證轉接系統“發送身份認證未通過”消息給網上銀行業務系統,網上銀行業務系統可據此拒絕客戶端訪問。

步驟s116:系統保存用戶信息,完成分發授權碼,鑒別授權碼,分發訪問令牌和令牌,生成包含令牌的響應消息,并發送令牌給網上銀行系統,網上銀行系統返回步驟s101。

具體地,步驟s116包括幾個方面。

步驟s116-1:系統接收第二訪問權限列表并生成授權碼和授權碼有效時間,同時將應用標識符、授權碼和第二訪問權限列表對應儲存。

其中,第二訪問權限列表為根據預定策略生成的權限列表,除去第一權限列表中系統未定義的元素,即強化身份認證自定義生成的權限列表和第一權限列表的交集。

步驟s116-2:系統根據預存的重定向URL向網上銀行系統回傳授權碼。

步驟s116-3:網上銀行系統將應用標識符和應用密碼通過預設加密運算進行加密生成應用密文信息。

其中,應用密碼根據網上銀行系統注冊時,系統分配的應用ID和注冊時輸入的初始密碼進行散列運算生成。

步驟s116-4:網上銀行系統根據應用密文信息、第一重定向URL和授權碼生成獲取令牌請求,并將生成的獲取令牌請求發送給系統。

步驟s116-5:系統從接收到的獲取令牌請求中獲取應用密文信息,并對應用密文信息進行解密得到應用標識符和應用密碼。

步驟s116-6:系統根據應用標識符和應用密碼判斷應用是否合法,如果是,執行步驟s117-7。否則,發送認證失敗信息,結束。

步驟s116-7:系統判斷是否可以在系統里查詢到與第一重定向URL和授權碼匹配的信息,如果是,執行步驟s117-8。否則,發送認證失敗信息給網上銀行系統,結束。

步驟s116-8:系統根據授權碼獲取授權碼過期時間,并判斷授權碼是否過期,如果過期,發送授權碼過期信息給網上銀行系統,結束。如果沒過期,執行步驟s117-9。

具體地,系統獲取系統的當前時間,判斷授權碼過期時間是否晚于系統當前時間,如果是,系統判定授權碼在有效期內,執行步驟s117-9。否則,系統判定授權碼過期,向網上銀行系統返回授權碼過期信息,結束。

步驟s116-9:系統生成令牌、訪問令牌、令牌過期時間,根據授權碼獲取第二訪問權限列表,將令牌、訪問令牌、第二訪問權限列表和令牌過期時間對應儲存。

步驟s116-10:系統根據令牌、訪問令牌、訪問令牌過期時間生成獲取訪問令牌響應,并將令牌響應發送給網上銀行系統。

3.3 實現驗證

使用Python語言,由Django、MongoDB、Celery、RestMQ、Redis等一系列開源項目組成開發框架,實現了上述設計方案的原型系統。系統生成的身份認證憑據采用JSON格式,形如:

{"iss":"https://server.example.com","sub":"24400320","aud":"s6BhdRkqt3","nonce":"n-0S6_WzA2Mj","exp":1311281970,"iat":1311280970,"auth_time":1311280969,"acr":"urn:mace:incommon:iap:silver"}

其中"iss":"https://server.example.com"表明指定認證方服務器標識為https://server.example.com;"sub":"24400320"表明用戶信息為24400320;"aud":"s6BhdRkqt3"表明應用服務器標識為s6BhdRkqt3;"exp":1311281970表明身份認證憑據有效期;"iat":1311280970,表明發放身份認證ID時間"auth_time":1311280969表明鑒別終端用戶時間。

以下是系統生成的訪問令牌實例:

HTTP/1.1 200 OK

Content-Type: application/json

Cache-Control: no-store

Pragma: no-cache

{"access_token":"SlAV32hkKG","token_type":"Bearer","expires_in":3600,"iss":"https://server.example.com","sub":"24400320","aud":"s6BhdRkqt3","nonce":"n-0S6_WzA2Mj","exp":1311281970,"iat":1311280970,"auth_time":1311280969,"acr":"urn:mace:incommon:iap:silver""id_token":"eyJhbGciOiJSUzI1NiIsImtpZCI6IjFlOWdkazcifQ.ewogImlzcyI6ICJodHRwOi8vc2VydmVyLmV4YW1wbGUuY29tIiwKICJzdWIiOiAiMjQ4Mjg5NzYxMDAxIiwKICJhdWQiOiAiczZCaGRSa3F0MyIsCiAibm9uY2UiOiAibi0wUzZfV3pBMk1qIiwKICJleHAiOiAxMzExMjgxOTcwLAogImlhdCI6IDEzMTEyODA5NzAKfQ.ggW8hZ1EuVLuxNuuIJKX_V8a_OMXzR0EHR9R6jgdqrOOF4daGU96Sr_P6qJp6IcmD3HP99Obi1PRs-cwh3LO-p146waJ8IhehcwL7F09JdijmBqkvPeB2T9CJNqeGpe-gccMg4vfKjkM8FcGvnzZUN4_KSP0aAp1tOJ1zZwgjxqGByKHiOtX7TpdQyHE5lcMiKPXfEIQILVq0pc_E2DzL7emopWoaoZTF_m0_N0YzFC6g6EJbOEoRoSK5hoDalrcvRYLSrQAZZKflyuVCyixEoV9GfNQC3_osjzw2PAithfubEEBLuVVk4XUVrWOLrLl0nx7RkKU8NXNHq-rvKMzqg"}

4 結束語

不斷涌現的新型身份認證解決方案,在集成到網上銀行系統的過程中,存在應用接口、交互界面不統一等問題。本文針對當前網上銀行身份認證升級改造需求,結合當前成熟的認證平臺,基于開閉原則設計實現了適用于網上銀行的身份認證轉接服務,采用REST風格的分布式架構,與網上銀行、手機銀行、互聯網支付等支付應用所采用的主流技術架構相匹配;采用成熟的安全策略,比如支付標記化,減少了系統的安全漏洞;采用統一的開發框架,一方面降低了系統開發的復雜度,另一方面也為遷移到云計算環境打下了良好的基礎。

此外,基于開閉原則的網上銀行身份認證服務方案,不僅能夠與當前金融行業標準規定的多種身份認證機制集成,還能夠靈活支持多因素身份認證模式,有助于減少工程的復雜度,避免影響現有系統的服務穩定性。同時,也具有很強的可行性和實用性,體現了一定的安全性、先進性和合規性。

參考文獻

[1] JR/T 0068-2012,網上銀行系統信息安全通用規范[S].

[2] 戈泉月,車力軍.基于多因素認證的網絡安全支付模式研究[J].信息網絡安全, 2015(12):48-53.

[3] Panos C, Malliaros S, Ntantogian C, et al. A Security Evaluation of FIDOs UAF Protocol in Mobile and Embedded Devices[C]// International Tyrrhenian Workshop on Digital Communication. Springer, Cham, 2017:127-142.

[4] 郭榮.淺談軟件設計模式中的設計原則[J].信息安全與技術,2014(11):93-94.

[5] JR/T 0149-2016,中國金融移動支付 支付標記化技術規范[S].

[6] Hammerlahav E, Editor. The OAuth 2.0 Protocol[J].2010.

[7] 王阿林.基于REST開放標準的北向接口動態API研究與實現[D].北京:北京郵電大學, 2017.

主站蜘蛛池模板: 女人一级毛片| 99久久这里只精品麻豆| 伊人久综合| 老司机久久99久久精品播放| 二级特黄绝大片免费视频大片| 亚洲最大看欧美片网站地址| 国产91视频免费观看| 大陆精大陆国产国语精品1024 | 国产免费a级片| 在线观看国产黄色| 亚洲成人精品在线| 国产女人水多毛片18| 国产精品污视频| 欧美日韩综合网| 久久久久久久97| 久久久久亚洲av成人网人人软件| 中文字幕首页系列人妻| 日本国产一区在线观看| 亚洲人成网7777777国产| 成人免费午夜视频| 国产精品一区二区在线播放| 伊人色综合久久天天| 99人体免费视频| 成人一级黄色毛片| 亚洲精品欧美重口| 国产经典免费播放视频| 无码日韩精品91超碰| 日韩美毛片| 日韩免费成人| 国产爽歪歪免费视频在线观看| 操美女免费网站| 亚洲激情99| 日韩欧美中文字幕在线韩免费| 日韩欧美中文| 又黄又湿又爽的视频| 精品国产成人av免费| 亚洲欧美精品在线| 特级毛片免费视频| 久久精品66| 婷婷激情亚洲| 国产尤物视频在线| 国产精品亚洲精品爽爽| 久久久波多野结衣av一区二区| 国产网站免费观看| 国产对白刺激真实精品91| 亚洲AV成人一区二区三区AV| 九色视频线上播放| 伊人色婷婷| 成人毛片免费在线观看| 久久久久九九精品影院| 国产精品乱偷免费视频| 亚洲成a人在线播放www| 国产18页| 亚洲品质国产精品无码| 高清不卡毛片| 国产资源站| 久久综合结合久久狠狠狠97色| 伊人国产无码高清视频| 亚洲日本韩在线观看| 亚洲中文字幕日产无码2021| 欧美日韩在线成人| 亚洲午夜福利精品无码不卡| 国产精品免费露脸视频| 日本精品中文字幕在线不卡| 国产精品专区第1页| 国产精品自拍合集| 亚洲码一区二区三区| 蜜桃臀无码内射一区二区三区| 国产欧美日韩资源在线观看| 免费A∨中文乱码专区| 午夜在线不卡| 日韩精品视频久久| 国产电话自拍伊人| 欧美国产在线看| 亚洲第一综合天堂另类专| 亚洲电影天堂在线国语对白| 在线欧美a| 亚洲成人黄色在线| 免费A∨中文乱码专区| 国产91线观看| jizz在线观看| 国产成人一区免费观看|