基於PKI技術的網路安全平臺設計分析

才智咖 人氣:2.22W

[摘要]採用USB加密機和PKI技術設計並實現一個網路安全平臺。該安全平臺實現身份驗證、安全傳輸和訪問許可權管理等功能。研究該平臺所使用的協議的工作流程,並詳細介紹客戶端、訪問控制服務器和證書管理系統的工作原理。

基於PKI技術的網路安全平臺設計分析

[關鍵詞]資訊保安 PKI 安全協議 USB加密機 網路安全平臺

一、概述

本文的目的是開發基於PKI技術的網路安全認證和連線平臺。該平臺使用USB 密碼機,利用PKI體系的相關技術,構建一個供擁有密碼機的合法使用者通過內網或者網際網路訪問內部網路的資源伺服器的安全平臺。平臺要求實現使用者的和伺服器的雙向認證、金鑰磋商、使用者訪問許可權管理,保證資訊傳輸的保密性、完整性、不可否認性。

這個網路安全平臺的伺服器端分為兩個部分,訪問控制伺服器和證書管理伺服器。訪問控制伺服器是直接與客戶端交換資料的伺服器,負責的是與客戶端完成金鑰磋商,實現加密傳輸,控制客戶端的訪問許可權。證書管理伺服器負責包括訪問控制伺服器在內的所有使用者的證書牛成和證書頒發。證書採用X.509v3格式,並且在連線的時候負責使用者的身份鑑定。

二、USB密碼機介紹

本文中採用的SJW-21C型USB密碼機是採用USB介面的密碼裝置。

SJW-21C型密碼機的對稱加密演算法使用的是經國家密碼局鑑定的專用密碼演算法晶片,其加密分組為64位,金鑰長度為128位,密碼機的對稱加密速度≥SMbps,公鑰演算法支援1024何的RSA,簽名速度≥4 次/秒,摘要演算法則支援SHA—l和MDS。密碼機還內建通過國家有關部門鑑定的隨機數發生器,並且支援隨機數的篩選,也就是會自動檢查隨機數的質量,如果達不到要求,會自動捨去。另外,密碼機本身也硬體支援生成RSA金鑰對。

三、PKI同絡安全平臺原理介紹

基於PKI的網路安全平臺的安全認證過程分為兩個部分,一個是認證資訊初始化過程,一個是對使用者的入網認證過程,

(一)認證資訊初始化

認證資訊初始化指的是這個網路安傘平臺在架設起來之後,證書管理系統會生成所有使用者包括訪問控制伺服器的證書和私鑰,然後分發到各自的密碼機中去,具體過程如下。

1,將證書管理系統安裝好之後,會進行初始化。

2,證書系統會開始根據需要牛成其他認證實體的證書。

3,各使用者將自己的密碼機拿到證節管理系統裡面來初始化,寫入證書和私鑰。

4,密碼機初始化完畢之後,只要把密碼機安裝到任何一個可以連線到訪問控制伺服器的電腦上,執行客戶端,輸入正確的PIN碼,就可以開始按照自己的許可權來使用資源伺服器上面的內容。以上就是整個安全平臺系統的初始化過程。

(二)安全平臺認證協議的認證過程

安全平臺的認證協議設計思想來自SSL/TLS協議,但不是純粹的將兩者簡單的加在一起,因為那樣不僅小能發揮USB密碼機的真正優勢,密碼機本身的特性也會對SSL/TLS協議的安全性帶來影響,所以這個協議是在理解了SSL/TLS協議的設計思想之後根據密碼機的安全功能和實際情況之後設計的。在下面的介紹裡,會將密碼機所自帶的128位國產對稱加密演算法稱為SAl28。

1、客戶端密碼機生成一個12 8位的隨機數R1,然後用SHA一1演算法取這個隨機數和密碼機TD的資訊摘要H1,用SAl28演算法以Rl為金鑰將H1加密,然後用密碼機的私鑰加密R1,並在前頭加上密碼機的ID傳送給訪問控制伺服器。

2、訪問控制伺服器將使用者發來的資料直接轉發給證書管理伺服器。

3、證書伺服器收到包之後,先根據這個ID在證書資料庫裡面找這個ID所對應的證書,然後用證書電所包含的公鑰解密被客戶端私鑰加密過的Rl,然後用這個R1通過SAl28演算法解密得到H1,驗證通過後。證書伺服器會生成一個新隨機數R2,然後將R2用客戶端的公鑰進行RSA加密,把加密後的資料加上 Rl之後取摘要值H2,然後將Rl和加密之後的R2還有H2以R2為金鑰用SAl28演算法加密,再將R2用訪問控制伺服器的公鑰進行RSA加密,再將以上資料傳送給訪問控制伺服器。

4、伺服器收到上述資料後,首先用自己的公鑰解出R2,然後用R2通過SAl28演算法得到RsC(R2)+RI+H2,驗證通過後,將R2取摘要H3,然後將RsC(R2)+H3以R1用SAl28演算法加密之後傳送給客戶端。

5、客戶端收到資料後,先用Rl解出Rsl(R2)和H3,在確認之後,用自己的私鑰解出R2,然後以R2為SA 128演算法的金鑰開始和伺服器進行通訊,到此,驗證過程結束,客戶端和訪問控制伺服器之問建立起安全連線。

四、安全平臺的主要橫塊

這個網路安傘認證平臺的安全連線部分主要分成3個部分,客戶端,訪問控制伺服器和證書管理伺服器。這個系統是一個網路安全的應用,所以網路通訊和安全非常重要。在Internet公網上的通訊採用TCP/IP協議,使用MFC封裝的一步SOCKET類CasyncSocket建屯網路連線。至於安全方面的連線是採用密碼機,程式設計採用對USB的驅動程式應用介面的訪問,這裡使用的是針對這個密碼機的軟體開發包。

(一)客戶端的實現

客戶端的實現土要分為兩個部分,一個是對密碼機的控制,一個是對網路安全協議的支援。客戶端被設定為驗證PIN碼之後,就開始進行公私鑰自檢,自檢成功後就開始向連線控制伺服器提交驗證申請。

(二)訪問控制伺服器的'實現

訪問控制伺服器的主要功能是負責外網和內網的資料交換,並判斷資料的屬性以做不同的處理。在訪問伺服器上面,維護了一個訪問許可權資料庫,這個資料庫鶚面含有資源伺服器上面所有的資源並且對每個不間的使用者ID標明瞭許可權。在客戶端和訪問控制伺服器之間建立了安全連線之後,伺服器就會將和這個客戶端聯絡的執行緒轉變成一個轉發執行緒,客戶端將自己的需求加密之後發過來,經過轉發執行緒的解密處理之後,會按貺客戶端的許可權範圍決定是否將需求傳送給資源伺服器,如果需求符合客戶端的許可權,那麼轉發執行緒會將得到的資源加密之後傳送給客戶端。

(三)證書管理伺服器的實現

在這個安全平臺裡面,證書管理伺服器的作用是證書生成和頒發,驗證客戶端和伺服器端的身份,並且生成對稱加密金鑰。證書管理伺服器有一個證書庫,存有安全平臺系統裡所有密碼機的證書。