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

基于國密算法安全中間件的安全功能研究與設計

2017-04-25 06:34:02迪牟鵬董愛強
網絡安全技術與應用 2017年4期
關鍵詞:功能

劉 迪牟 鵬董愛強

(1.國網信息通信產業集團研發中心 北京 100192;2.北京中電普華信息技術有限公司研發事業部 北京 100192)

基于國密算法安全中間件的安全功能研究與設計

劉 迪1牟 鵬2董愛強2

(1.國網信息通信產業集團研發中心 北京 100192;2.北京中電普華信息技術有限公司研發事業部 北京 100192)

為了使應用服務中間件軟件能滿足用戶網絡傳輸層安全、應用數據層安全及安全管理的需求,基于國外通用密碼算法存在安全漏洞及安全強度不可控的現狀,在國密算法的基礎上為應用服務中間件產品設計新的安全功能以滿足用戶對網絡傳輸層安全、應用數據層安全以及安全管理的需求。網絡傳輸層安全通過基于國密算法的SSL/TLS協議實現,應用數據層安全通過國密算法的加解密、簽名驗簽及摘要功能實現,安全管理功能通過國密算法證書的認證和角色授權實現。

應用服務中間件;安全功能;國密算法;SSL/TLS

0 引言

國家高度重視密碼算法國產化工作。2011年初,國家密碼管理局正式發布《關于做好公鑰密碼算法升級工作的通知》,要求對已建系統進行密碼算法的國產化改造。 2012年,國家商用密碼管理局公開了一系列自主研發的密碼算法[1],包括SM2、SM3、SM4、SM9算法等。2013年工信部發文要求各行業原應用國外密碼算法RSA1024的企業進行國密SM2算法升級改造。其中,強制要求所有 CA證書認證機構簽發支持國密 SM2算法的數字證書。要求金融行業用國家商用密碼算法(以下簡稱:國密算法)替代國外密碼算法對業務數據進行安全保護。

國家電網公司也高度重視國密算法在國家電網公司信息化系統中的應用與推廣。國家電網公司自主研發的企業級應用服務器中間件軟件[2](以下簡稱:中間件)的安全功能是基于國外通用密碼算法實現的。為實現國家電網公司關于基礎軟硬件的“自主、安全、可控”目標,以及國密算法的應用與推廣要求,將研究基于國密算法的應用服務器安全中間件軟件。

1 背景概述

1.1 研究背景

目前,中間件通常采用HTTP協議進行訪問,而HTTP協議通常使用用戶名口令認證+明文傳輸模式,這樣的安全機制容易遭受以下四類針對Web系統的攻擊:

第一類:針對客戶端的攻擊——用戶口令暴力破解。用戶/口令認證方式不夠安全。在知名的網絡經濟案例中,通過口令破解入侵的占了接近一半的比例。

第二類:針對服務端的攻擊——釣魚網站攻擊。Web系統服務端不向用戶端提供身份信息,用戶端也不認證 Web系統服務端的合法性。因此,假冒的 Web系統(釣魚網站)可以欺騙用戶,獲得用戶提交的敏感信息。

第三類:針對通信鏈路的攻擊——網絡竊聽、篡改、偽造。Web系統用戶與服務端交互數據采用明文形式(HTTP協議),通信數據很容易在網絡上被捕獲、篡改、偽造。

第四類:針對應用數據的攻擊——用戶信息或應用程序被篡改、被偽造。Web系統服務端對用戶信息或應用程序沒有認證,也沒有完整性檢測,導致用戶信息可以被篡改和偽造。

如果中間件使用基于SSL/TLS協議的HTTPS進行訪問,則可以防御以上四類攻擊。但是,由于SSL/TLS協議使用的是國外通用密碼算法,所以仍然具有以下兩類安全風險:

第一類:國外密碼算法存在安全后門,建立在國外密碼算法上的安全機制不能抵御國外攻擊。國際通用的 RSA密碼算法存在安全風險,國際權威密碼機構已確認RSA算法不再安全。2013年12月份,新聞報道:美國國安局(NSA)曾與密碼算法RSA公司達成了一個價格高達1000萬美元的秘密協議,NSA要求RSA公司在被廣泛使用的密碼算法中安置后門。

第二類:中間件的安全強度取決于SSL/TLS協議的安全強度,而SSL/TLS協議的安全強度取決于密碼算法的安全強度。SSL/TLS默認使用國外通用密碼算法,而國外通用密碼算法存在安全風險,并且其安全強度也不受控制,因此基于國外通用密碼算法的中間件存在安全風險,并且安全性不可控。

基于上述安全問題,提出研究基于國密算法的安全中間件。該中間件支持基于國密算法的SSL/TLS協議。

1.2 研究現狀

目前,國內外主流的中間件產品[3]主要有以下三個:美國Oracle公司的 WebLogic Server,美國 IBM 公司的 WebSphere Application Server,以及中國北京東方通公司的TongWeb應用服務器。它們的安全功能如下:

Oracle WebLogic Server的安全功能包括兩個方面傳輸層安全功能和安全管理功能。傳輸層安全功能包括:身份認證(包含基于證書的身份認證)、數據傳輸的保密性和完整性以及不可否認性。傳輸層安全通過SSL/TLS協議實現。安全管理功能包括證書管理、角色管理、授權管理、審計功能。

IBM WebSphere Application Server的安全功能包括:傳輸層安全功能和數據層安全功能,其中傳輸層安全功能類似WebLogic的傳輸層安全功能,主要通過SSL/TLS協議實現;數據層安全功能,實現對數據的認證、保密性、完整性和不可否認性。

東方通TongWeb應用服務器的安全功能包括:傳輸層的安全功能和安全管理功能。其中傳輸層安全功能類似WebLogic的傳輸層安全功能,主要通過SSL/TLS協議實現;安全管理功能主要指基于角色的授權管理功能。

表1 中間件產品安全功能對照表

3 T o n g W e b 身份認證;傳輸數據的保密性、完整性、不可否認性無 角色管理、授權管理

1.3 問題分析

目前,國內外主流中間件產品的安全功能無論是傳輸層安全還是數據層安全,都是使用國外通用密碼算法實現的。由于國外通用密碼算法存在安全后門[4],安全性不可控,并且國外密碼算法的密鑰長度受出口限制,所以安全強度不可控。

表2 中間件產品安全功能問題表

基于以上兩點,提出設計一種基于國密算法[5]安全中間件的安全功能,以國家對信息安全“自主、安全、可控”的要求,同時也滿足國家電網公司對信息安全的要求。

2 系統設計

2.1 組成架構

基于國密算法安全中間件包括支持基于國密算法及國外通用密碼算法的SSL/TLS協議和數據加解密及簽名驗簽接口的Web服務端和WebService服務端以及數據庫。用戶使用支持國密算法的瀏覽器發起HTTPS訪問請求,Web服務端和用戶端進行基于SSL/TLS協議的證書認證(雙向認證可選)、加密傳輸訪問請求與響應數據。Web服務端和WebService服務端也通過HTTPS訪問。其中,服務端可以對應用數據進行基于國密算法的加解密及簽名驗簽。安全中間件中的SSL/TLS協議即支持國外通用密碼算法也支持國密算法。系統組成架構如下圖所示:

圖1 基于國密算法安全中間件的組成架構

2.2 業務架構

基于國密算法安全中間件的安全業務架構包括兩大類:安全管理和安全服務。安全管理包括:基于國密算法的證書管理、角色管理、授權管理、日志審計管理。安全服務包括:業務應用數據的加密解密服務、簽名驗簽服務,以及業務應用數據傳輸過程中的基于國密證書的身份認證服務、傳輸數據的保密性、完整性服務。

圖2 安全功能業務架構

2.3 功能架構

安全功能架構主要包括安全管理功能和安全服務功能。安全管理功能主要包括:國密證書管理功能,角色管理功能,授權管理功能,日志審計管理功能。安全服務功能主要包括:傳輸層安全服務功能的配置調用接口以及應用數據安全服務功能的JAVA調用接口;傳輸層的國密證書認證功能、國密算法的密鑰交換功能、傳輸數據的基于國密算法的加解密功能以及哈希摘要摘要功能、基于國密算法的SSL/TLS協議功能;應用數據的基于國密算法的加解密功能以及簽名驗簽功能;底層國密算法功能及第三方國密算法的調用引擎功能。

圖3 安全功能功能架構

2.4 技術架構

安全技術架構主要包括安全管理技術架構和安全服務技術架構。安全管理技術架構包括:KeyTool工具實現國密證書管理功能,Java SE的JAAS接口實現 認證、授權管理功能,Java EE技術實現角色管理、日志審計管理功能。安全服務技術架構主要通過Tomcat調用OpenSSL中的SSL/TLS模塊實現傳輸層安全,通過JNI技術調用OpenSSL中的加解密接口和簽名驗簽接口實現應用數據安全;OpenSSL中的SSL模塊和加解密、簽名驗簽接口通過Engine技術可以調用第三方實現硬件或軟件國密算法,也可以直接調用自己實現的國密算法。

圖4 安全功能技術架構

3 關鍵技術

3.1 安全中間件與OpenSSL的集成技術

安全中間件使用APR通道與OpenSSL模塊集成,進而使用OpenSSL提供的安全功能。安全中間件中包含一個web模塊專門用于處理web請求,在web模塊中內嵌一個tomcat容器,由Tomcat提供http和https服務。在Tomcat的技術架構中,基于socket的通信有兩種模式:BIO(基于Java實現的)和APR(基于Apache apr庫實現,C語言實現),在安全中間件中同時支持以上兩種模式,可以通過系統配置文件進行配置。如下圖所示:

圖5 中間件與OpenSSL集成技術

上圖為 tomcat支持的兩種通信模式,其中標紅的是兩種對SSL/TLS的實現方式,在基于BIO的Socket通信模式中,通過JSSE(Java Secure Socket Extension )技術實現SSL/TLS功能;在基于APR的通信模式中,通過OpenSSL實現SSL/TLS功能。在BIO通道中,jdk包實現SSL功能(Tomcat、Weblogic等中間件并沒有實現SSL/TLS的功能),封裝在jsse.jar包和jce.jar中。在APR通道,基于OpenSSL開源項目(C語言實現),實現SSL/TLS的功能。通過tomcat-native實現了tomcat 和OpenSSL模塊的集成。

3.2 安全中間件對OpenSSL的調用技術

安全中間件的 Web容器中通過本地方法接口調用 APR和OpenSSL。Web容器中有一個native接口模塊,native接口模塊是一個銜接java語言和C語言的橋梁。native接口模塊調用OpenSSL庫提供通道安全(傳輸層安全)和應用數據安全功能。Web容器中提供了多種處理 Socket的實現:JIoEndpoint、AprEndpoint和NioEndpoint。其中AprEndpoint使用JNI的接口來獲得對Socket的訪問,功能實現比較復雜。使用native 接口模塊為Tomcat提供更好的伸縮性、更高的性能以及更強的集成能力。這些都可以使web容器變得更通用、更易擴展。

3.3 OpenSSL與第三方國密算法的集成技術

OpenSSL使用 Engine技術集成第三方提供的軟件密碼算法庫或者硬件密碼算法設備。使得上層功能模塊可以透明調用密碼算法進行加解密或簽名驗簽。OpenSSL提供了一個通用地加解密、簽名驗簽接口,能夠調用絕大部分密碼算法庫或者硬件密碼算法設備。OpenSSL為每種密碼算法定義一個引擎容器Engine,每一個引擎容器中包含一個引擎列表和一個默認引擎,還有一些控制信息,引擎為密碼算法提供服務,OpenSSL增加3個引擎容器支持國密算法SM2、SM3、SM4。如下圖(以SM2為例):

圖6 OpenSSL與第三方國密算法集成技術

4 實現方法

4.1 安全管理

安全管理中的關鍵功能是客戶端證書認證、角色管理與授權管理。其中,證書認證包括證書有效性驗證和身份驗證。授權管理通過角色進行權限分配。證書有效性驗證有兩種方式,一種是在線實時驗證。使用OCSP協議(Online Certificate Status Protocol, rfc2560)實時驗證證書有效性。OCSP客戶端通過查詢OCSP服務來確定一個證書的狀態。OCSP可以通過HTTP協議來實現。rfc2560定義了OCSP客戶端和服務端的消息格式。另一種是離線驗證。使用證書撤銷列表(CRL)檢查證書的有效性。CRL是證書撤銷狀態的公布形式,以一定的周期進行更新。基于證書的身份認證和授權通過證書與角色關系表以及角色與權限關系表實現。證書與角色關系表存放客戶端證書主題信息與客戶端的角色信息對應關系,角色與權限關系表存放角色與訪問權限的對應關系。在客戶端建立 SSL/TLS握手[6]時,服務端讀取客戶端證書主題信息,查找證書與角色關系表,取得客戶端的角色信息,再查找角色與權限關系表,取得客戶端的訪問權限,從而實現客戶端的身份認證和基于角色的授權。

4.2 傳輸層安全

傳輸層安全主要通過調用 OpenSSL中 SSL/TLS模塊實現。SSL/TLS模塊通過調用國密算法中的SM2和SM3算法實現SSL握手(身份認證和密鑰交換),通過調用SM4算法實現傳輸數據的加密。硬件國密算法的調用通過OpenSSL中的引擎Engine技術實現[7]。引擎技術通過引擎對象模型, 使上層模塊獲得對可變化的底層描述的引用, 此底層描述大部分是針對底層硬件的描述。大致過程是: 聲明一個引擎對象, 然后用希望使用的硬件的描述符來初始化這個引擎對象。流程框架如下所示:

圖7 OpenSSL Engine技術

4.3 應用數據安全

應用數據安全指Java應用通過JNI技術調用OpenSSL中的基于國密算法的加解密功能和簽名驗簽功能。OpenSSL為了方便上層應用調用不同密碼算法的加解密和簽名驗簽功能,統一封裝了密碼算法庫里的所有密碼算法,并將封裝接口定義為EVP。通過統一封裝,上層應用只需要在初始化時設定相關參數,就可以調用不同的密碼算法進行加解密和簽名驗簽。

用EVP技術[8]封裝國密算法:SM2、SM3、SM4[9]。EVP_SM2提供基于SM2的數據加密、解密接口,實現了電子信封的功能。同時提供數字簽名和驗簽接口,實現防抵賴。EVP_SM4提供基于SM4的數據分組加解密接口,并提供緩沖功能。EVP_SM3提供基于SM3的信息摘要接口。調用過程如下圖:

圖8 Java 調用C 技術

5 測試與結果

5.1 測試環境

測試環境包括硬件環境、軟件環境、網絡環境、測試工具,具體如下表所示。

表6 測試環境

5.2 測試方案

客戶端使用支持國密算法證書的瀏覽器通過 https訪問測試系統。瀏覽器與安全中間件建立基于國密算法的SSL/TLS連接。SSL/TLS建立連接時客戶端和服務端相互驗證對方身份:國密算法證書的有效性。安全中間件根據客戶端的證書信息確定客戶端的角色,測試系統根據客戶端的角色確定客戶端的訪問權限,返回角色測試頁面。角色測試頁面測試應用數據的加密、解密功能和簽名驗簽功能。角色測試頁面如下:

圖9 測試頁面設計

5.3 測試結果

客戶端通過基于國密算法的瀏覽器訪問安全中間件。通過HTTPS發起訪問,SSL/TLS握手過程使用的國密套件,測試數據如下:

圖10 測試結果:使用國密算法套件

應用數據的加密、解密功能和簽名驗簽功能。測試結果如下:

圖11 測試結果:應用數據安全功能:源數據

圖12 測試結果:應用數據安全功能:加密數據

圖13 測試結果:應用數據安全功能:解密數據

圖14 測試結果:應用數據安全功能:簽名數據

圖15 測試結果:應用數據安全功能:數據驗簽

安全中間件基于國密算法的安全功能即安全管理、傳輸層安全、應用數據安全均可以實現。

6 結論

國內外主流中間件產品的安全功能無論是傳輸層安全還是數據層安全,都是使用國外通用密碼算法實現的。由于國外通用密碼算法存在安全后門,安全性不可控,并且國外密碼算法的密鑰長度受出口限制,所以安全強度不可控。基于國密算法安全中間件的安全功能設計在使用國密算法的基礎上實行傳輸層安全和應用數據安全。能很好解決目前中間件產品的安全不可控問題和安全功能欠缺問題。

[1]GM/T 0024-2014SSL VPN技術規范[S].北京:中國標準出版社.

[2]馮揚.數據(災備)中心中間件應用服務器研究與設計[J].電子技術應用,2015.

[3]魏勇,張權.中間件技術研究[J].電子技術應用,2004.

[4]Acii?mez,W.Schindler.A vulnerability in RSA implementations due to instruction cache analysis and its demonstration on OpenSSL[R].Lecture Notes in Computer Science, 2008.

[5]張永建.RSA算法和SM2算法的研究[D].江西贛州:江西理工大學,2015

[6]何福均.OpenSSL握手過程的測試與分析[D].湖北武漢:華中科技大學,2008.

[7]殷杰.OpenSSL分析與測試[D].天津:天津大學,2008.

[8]吳永強.國密 SSL安全通信協議的研究與實現[D].陜西西安:西安電子科技大學,2014.

[9]牛永川.SM2橢圓曲線公鑰密碼算法的快速實現研究[D].山東濟南:山東大學,2013.

猜你喜歡
功能
拆解復雜功能
鐘表(2023年5期)2023-10-27 04:20:44
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
基層弄虛作假的“新功能取向”
當代陜西(2021年21期)2022-01-19 02:00:26
深刻理解功能關系
鉗把功能創新實踐應用
關于非首都功能疏解的幾點思考
基于PMC窗口功能實現設備同步刷刀功能
懷孕了,凝血功能怎么變?
媽媽寶寶(2017年2期)2017-02-21 01:21:24
“簡直”和“幾乎”的表達功能
中西醫結合治療甲狀腺功能亢進癥31例
主站蜘蛛池模板: 欧美国产视频| 欧美日韩在线亚洲国产人| 亚洲人成在线精品| 国产精品9| 夜夜拍夜夜爽| 婷婷六月综合网| 亚洲成人黄色在线观看| 精品久久人人爽人人玩人人妻| 亚洲中文字幕在线观看| 国产精品亚欧美一区二区| 亚洲福利片无码最新在线播放| 午夜精品福利影院| 久久精品国产免费观看频道| 国产福利观看| 国产激情无码一区二区三区免费| 国产成人精品综合| 香蕉视频国产精品人| a毛片基地免费大全| 国产亚洲视频在线观看| 伊人欧美在线| 伊人成人在线| 国产视频a| 国产成人综合久久精品下载| 999精品在线视频| 伊人大杳蕉中文无码| 999精品色在线观看| 欧美日韩一区二区在线免费观看| 91www在线观看| 97国产在线视频| 色老二精品视频在线观看| 亚洲国产天堂久久综合| 麻豆精品在线播放| 午夜丁香婷婷| 亚洲AV无码不卡无码 | 亚洲综合天堂网| 国产日韩AV高潮在线| 成人午夜精品一级毛片| 欧美成人二区| 亚洲三级网站| 美女免费黄网站| 一级毛片免费的| 中国国产A一级毛片| a毛片在线免费观看| 91九色国产在线| 亚洲精品第五页| 伊人久综合| 婷婷色在线视频| 国产精品吹潮在线观看中文| 日韩小视频在线观看| 99福利视频导航| 国产一区二区福利| 国产又粗又爽视频| 国产原创演绎剧情有字幕的| 国产亚洲精品91| 伊人成色综合网| 91精品国产自产在线老师啪l| 国产成人做受免费视频| 亚洲最大福利视频网| 国产精品性| 中文成人在线视频| 曰AV在线无码| 亚洲国产精品一区二区第一页免 | 久久永久视频| 无码专区在线观看| 欧美日韩国产一级| 91精品视频在线播放| 欧美www在线观看| 园内精品自拍视频在线播放| 欧美福利在线播放| 国产精选自拍| www.亚洲一区二区三区| 一区二区三区四区精品视频| 欧美乱妇高清无乱码免费| 91成人在线免费观看| 91精品aⅴ无码中文字字幕蜜桃| 国产在线一区二区视频| 怡春院欧美一区二区三区免费| 日本一区二区不卡视频| 波多野结衣久久精品| 日韩精品高清自在线| 亚洲男人天堂2018| 18禁色诱爆乳网站|