?

基于PKI技術的安全接入平臺中接入認證的研究

2021-01-04 07:05
科技傳播 2020年22期
關鍵詞:公鑰服務器端口令

李 艷

在云端化的網絡大趨勢下,越來越多的傳統工作模式向互聯網上遷移,疫情更是加速推動了云浪潮?;ヂ摼W中存儲了海量的用戶數據信息,而網絡的開放性帶來了大量的訪問請求和認證請求,同時也產生了大量復雜的用戶權限管理問題,在云時代,用戶的個人信息安全已經成為一個迫切需要解決的社會問題,尤其很多單位和機關部門對網絡安全有著極高的要求,采用傳統的入侵檢測技術和防火墻等產品已經不足以讓用戶放心了。因此,對網絡信息進行采集和組織,加強對安全接入的研究顯得極為迫切。

1 公鑰基礎設施PKI

公開密鑰基礎設施(Public Key Infrastructure,以下簡稱PKI)利用現代密碼學的公開密鑰技術來為所有網絡應用提供數據加密和數字簽名,并且通過數字證書平臺來管理公鑰,從而實現信息安全服務。人們可以建立一個可以信任的網絡,由PKI技術來提供信息傳輸的保密安全性、完整性、不可抵賴性以及訪問控制等。一個標準的PKI體系結構,至少應該包括以下幾個部分:認證機構CA(負責數字證書的申請和發放);證書庫(負責集中儲存證書);證書注銷(定期清理證書);密鑰備份與恢復(針對用戶遺失密鑰進行處理);密鑰自動更新(保證密鑰有效性);密鑰歷史檔案(解決由于密鑰更新帶來的問題);交叉認證(不同PKI用戶之間的安全通信);不可否認性等等。

這其中最重要的便是認證機構CA。公鑰技術的前提目標便是兩個陌生用戶之間能夠安全地進行數據傳輸。假設:A想要發送信息給B,那么A性需要先獲取B的一個公鑰,然后用此公鑰對想要發送的信息進行加密,再發送給B。但是網絡中的用戶有千千萬,怎么獲取B的公鑰?獲取公鑰最可靠的方法便是指定某個權威實體,這權威實體必須對大部分甚至全部用戶來說都是可信的,該權威實體把公鑰和具體的用戶身份綁定在一起。這樣的權威便是“認證機構”(CA)。CA通過證書庫來完成證書的管理與分發,因此PKI技術的核心功能在于密鑰的管理。

PKI加解密的詳細過程如下:

信息發送方用自身的私密密鑰來加密要傳輸的信息內容,然后用信息接收方的公開密鑰來加密自身的私密密鑰,形成數字信封,然后將數字信封和已經加密過的信息一起發送給信息接收方。信息接收方收到信息后,先用自身的私密密鑰打開數字信封,得到信息發送方的密鑰,再使用改密鑰來解密成原始信息。

在這個過程中,為防止信息被篡改,需要對原始信息明文和重新解密后的信息明文進行校驗,但是如果對全部信息進行校驗的話,信息量太大,實際會對信息進行摘要加解密來驗證。具體流程如圖1所示:

圖1 PKI工作原理

2 安全接入平臺客戶端的接入認證研究

安全接入平臺是以PKI技術為核心的應用層平臺,是用戶和業務應用系統的中間樞紐。平臺運行于獨立的機器,所有終端用戶從網絡登錄平臺,都要進行身份認證;認證通過之后進行一系列的授權管理和業務代理方面的訪問控制,最終到達應用系統,同時利用隔離網閘有效對內部系統和外界進行物理隔離,這個過程可以有效地實現信息保護。

在平臺中,還有管理維護模塊和日志審計模塊等功能;其中管理維護模塊主要實現系統配置等功能,日志審計模塊主要實現系統中的日志工作。而安全接入平臺客戶端便是網絡端的用戶和業務應用系統之間的樞紐,所有用戶都要在接入平臺客戶端對其身份進行合理的授權之后,才能訪問相應的業務系統,以此來保證各個業務系統的安全運行和操作。

安全接入平臺的系統總體設計方案如圖2所示。

圖2 安全接入平臺總體方案設計

在安全平臺中,接入平臺客戶端運行于客戶的機器中,因此它必須具備以下功能:

1)采用TCP鏈接或者系統函數的方式,攔截客戶端信息,同時發給平臺服務器端,使得這兩個在邏輯上沒有直接相連。

2)對網絡中的用戶端和安全接入平臺服務器端之間的通信加密,加密要在用戶端無法察覺的情況下進行,并且每次的加密密鑰都要重新商量,這樣可以保證通信質量。

3)將數字證書存儲在UKey模塊中,實現基于數字證書的認證方式。

4)不僅能實現基于公鑰的認證,為了方便客戶,應該也要實現基于挑戰/響應的認證方式。

5)為了提升客戶的體驗舒適度,對客戶端的基本配置要有易用的圖形界面。

系統的接入平臺客戶端在某種意義上,可以看成是客戶機的服務器,它必須提供一個接入點,方便用戶進行接入認證,以最終使用戶可以使用業務系統,它必須具備以下功能:

1)必須具備密碼運算功能。

2)必須能給用戶提供基于數字證書的認證方式。

3)必須方便客戶使用,因此也要能實現基于挑戰/響應的認證方式。

4)必須對網絡中的用戶端和安全接入平臺服務器端之間的通信加密,加密要在用戶端無法察覺的情況下進行,并且每次的加密密鑰都要重新商量。

5)必須能對平臺的操作進行日志記錄,對于一些特別重要不能泄露的信息,必須能提供加密保存。

6)必須通過函數接口和授權管理模塊相連。

身份認證經過這么多年的發展,目前最常見的認證方式有四種:基于口令簡單身份認證機制,基于挑戰/響應的簡單認證機制,基于DCE/Kerberos的強認證機制,基于數字證書的強認證機制。

簡單認證機制中一般使用一次性口令(OTP,One-Time Password)機制。比如在網絡上使用一次性動態口令或者令牌來對用戶身份進行認證,這種認證方式是最為常見的網絡認證方式。這種機制最大的特別是由于其一次性特性,所以可以有效防止在網絡中傳輸信息時固定密碼被截取的情形,因其一次性故也不怕被反復攻擊?;谔魬?響應的認證機制是客戶端先發出認證請求,服務器端發送挑戰碼,客戶端做出應答,服務器端再返回最終的認證結果,這樣一個過程,比如用于撥號用戶認證和計費的Radius協議就是這樣一種基于挑戰/應答的認證機制。

強認證機制則不會讓口令直接在網絡中傳輸,它會用多種加密機制來保障信息和密鑰的安全性,比如Kerberos協議,需要事先雙向身份認證;比如基于公共密鑰的認證機制,需要一個權威的第三方來為發送方和接收方確認身份??紤]到我們的平臺只需要單向解決服務器對客戶端的認證,因此選擇了以下兩種認證方式:

一是基于公共密鑰機制實現強身份認證。所有的認證方式,歸根結底,都可以最終分為兩個過程:認證請求和正式認證??梢院唵蔚剡@么理解,在客戶端和服務器端都同意的情況下,一個認證過程才能正常開始,這樣可以減少很多不必要的開支,相當于會話前先提好打好招呼,確認雙方都在線,也相當于一個認證的開始,如圖3是認證請求的詳細流程。

圖3 發送認證請求流程

認證請求成功之后,用戶可以進行正式認證,其認證流程具體如下:

1)客戶端從Ukey中獲取用戶數字證書(一般格式是用戶信息+公鑰+數字摘要)。

2)客戶端利用密碼模塊產生一個對稱密碼,并采用某種加密算法對數字證書進行加密,形成信體。

3)客戶端查找密碼模塊中已有的用戶私鑰,對上一步產生的對稱密碼進行加密,形成信頭。

4)客戶端將強兩步形成的數據按信頭、信體的格式組裝起來并發送到客戶端。

5)等待服務器的響應,若服務器返回認證成功信息則進行下一步,否則顯示認證失敗,退出認證。

6)顯示認證成功信息,并開始對通信數據進行加解密服務。其具體流程圖如圖4所示:

圖4 基于公鑰的認證流程

二是基于挑戰/響應機制實現弱身份認證。相對于強身份認證而言,基于用戶口令的身份認證的安全性是相對弱的。想要提高網絡安全性,就不能直接在網絡中傳輸口令,但是有沒有可以加密口令的東西,因此要采用挑戰/響應機制,來提高其安全性。第一步與強認證一樣,進行認證請求,發送用戶帳號至服務器端;根據返回信息來判斷賬號是否已經存在,若是則進行下一步,否則認證失??;讀取服務器返回信息中的一個值,這個值的長度一般是約定好的比如16位,用用戶的口令通過約定好的加密算法來加密這個值,用戶再將加密后的這個值發送給服務器,即響應服務器的挑戰;最后根據服務器返回結果判斷此次認證是否成功,若是則進行下一步,否則認證失敗。

但是這里一旦服務器端存在漏洞,則安全性就無從談起。因此我們在此基礎上,提出了加強安全性的進一步構思,具體如下:第一步與強認證一樣,進行認證請求,發送用戶帳號至服務器端;根據返回信息來判斷賬號是否已經存在,若是則進行下一步,否則認證失??;在讀取服務器返回值之前,采用哈希散列法對用戶口令的摘要進行加密,形成定長的口令密文;讀取服務器返回信息中的一個值,這個值的長度一般是約定好的比如16位,此時用剛才形成的口令秘文來加密這個值,用戶再將加密后的這個值發送給服務器,即響應服務器的挑戰;最后根據服務器返回結果判斷此次認證是否成功,若是則進行下一步,否則認證失敗。

可以看出,我們不用約定的加密算法加密服務器返回值,而是對用戶口令的摘要進行加密,形成定長的口令密文,后面再用這個口令密文加密服務器的返回值,那么就能明顯地擴大加密算法的選擇范圍,而且服務器也不用保存用戶的整個口令,只需要保存口令的摘要密文,不會影響用戶信息的安全。其詳細流程如圖5所示:

圖5 基于挑戰響應機制的身份認證

在用戶身份認證成功之后,安全接入平臺客戶端可以在用戶不察覺的情況下,為后續的通信自動進行加解密,以保障用戶的通信安全。

4 結束語

目前,PKI技術已經可以較好地滿足企業網絡安全的需求,能夠有效地提高互聯網中身份認證、數據傳輸以及訪問控制等安全問題。文中設計的基于PKI技術的安全接入平臺,基本上可以滿足企業級的安全需求。本文所采用的身份認證方式,也能最大限度地滿足當前網絡環境下的信息安全需求。

猜你喜歡
公鑰服務器端口令
Linux環境下基于Socket的數據傳輸軟件設計
高矮胖瘦
口 令
一種基于混沌的公鑰加密方案
淺析異步通信層的架構在ASP.NET 程序中的應用
好玩的“反口令”游戲
基于Qt的安全即時通訊軟件服務器端設計
SNMP服務弱口令安全漏洞防范
HES:一種更小公鑰的同態加密算法
SM2橢圓曲線公鑰密碼算法綜述
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合