㈠ 基于PKI技术的网络安全平台设计分析
基于PKI技术的网络安全平台设计分析
[摘要]采用USB加密机和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标明了权限。在客户端和访问控制服务器之间建立了安全连接之后,服务器就会将和这个客户端联系的线程转变成一个转发线程,客户端将自己的需求加密之后发过来,经过转发线程的解密处理之后,会按 贶 客户端的权限范围决定是否将需求发送给资源服务器,如果需求符合客户端的权限,那么转发线程会将得到的资源加密之后发送给客户端。
(三)证书管理服务器的实现
在这个安全平台里面,证书管理服务器的作用是证书生成和颁发,验证客户端和服务器端的身份,并且生成对称加密密钥。证书管理服务器有一个证书库,存有安全平台系统里所有密码机的证书。
PKI
PKI(Public Key Infrastructure ) 即"公开密钥体系",是一种遵循既定标准的密钥管理平台,它能够为所有网络应用提供加密和数字签名等密码服务及所必需的密钥和证书管理体系,简单来说,PKI就是利用公钥理论和技术建立的提供安全服务的基础设施。PKI技术是信息安全技术的核心,也是电子商务的关键和基础技术。
PKI的基础技术包括加密、数字签名、数据完整性机制、数字信封、双重数字签名等。
PKI的基本组成:
完整的PKI系统必须具有权威认证机构(CA)、数字证书库、密钥备份及恢复系统、证书作废系统、应用接口(API)等基本构成部分,构建PKI也将围绕着这五大系统来着手构建。
认证机构(CA):即数字证书的申请及签发机关,CA必须具备权威性的特征;
数字证书库:用于存储已签发的数字证书及公钥,用户可由此获得所需的其他用户的证书及公钥;
密钥备份及恢复系统:如果用户丢失了用于解密数据的密钥,则数据将无法被解密,这将造成合法数据丢失。为避免这种情况,PKI提供备份与恢复密钥的机制。但须注意,密钥的备份与恢复必须由可信的机构来完成。并且,密钥备份与恢复只能针对解密密钥,签名私钥为确保其唯一性而不能够作备份。
证书作废系统:证书作废处理系统是PKI的一个必备的组件。与日常生活中的各种身份证件一样,证书有效期以内也可能需要作废,原因可能是密钥介质丢失或用户身份变更等。为实现这一点,PKI必须提供作废证书的一系列机制。
应用接口(API):PKI的价值在于使用户能够方便地使用加密、数字签名等安全服务,因此一个完整的PKI必须提供良好的应用接口系统,使得各种各样的应用能够以安全、一致、可信的方式与PKI交互,确保安全网络环境的完整性和易用性。
通常来说,CA是证书的签发机构,它是PKI的核心。众所周知,构建密码服务系统的核心内容是如何实现密钥管理。公钥体制涉及到一对密钥(即私钥和公钥),私钥只由用户独立掌握,无须在网上传输,而公钥则是公开的,需要在网上传送,故公钥体制的密钥管理主要是针对公钥的管理问题,目前较好的解决方案是数字证书机制。
㈢ 网络安全之PKI技术原理
PKI:利用公钥理论和技术建立的提供网络信息安全服务的基础设施。为用户提供所需的密钥和证书管理,用户可以利用PKI平台提供的安全服务进行安全通信。
PKI内容
1、认证机构
PKI的核心部分,认证中心,是数字证书的签发机构,权威可信任的第三方机构
2、数字证书库
在使用公钥体制的网络环境中,必须向公钥的使用者证明公钥的真实合法性。因此,在公钥体制环境中,必须有一个可信的机构来对任何一个主体的公钥进行公证,证明主体的身份以及它与公钥的匹配关系。
3、密钥备份
如果用户丢失了密钥,会造成已经加密的文件无法解密,引起数据丢失,为了避免这种情况,PKI提供密钥备份及恢复机制
4、证书作废
身份变更或密钥遗失
5、应用接口系统
PKI应用接口系统是为各种各样的应用提供安全、一致、可信任的方式与PKI交互,确保所建立起来的网络环境安全可信,并降低管理成本。
目前网络交互、网络交易、电子商务、电子政务,可信赖的数字信息环境,必需建立在这些安全要素之上
PKI基于公钥理论,建立在公钥加密技术之上,了解PKI就先了解公钥加密技术。
Public Key Infrastructure 公钥基础设施
在传统密码体制中,用于加密的密钥和解密的密钥完全相同,通过这两个密钥来共享信息。
这种体制所使用的加密算法比较简单,但高效快速,密钥简短,破译困难。然而密钥的传送和保管是一个问题。例如,通讯双方要用同一个密钥加密与解密,首先,将密钥分发出去是一个难题,在不安全的网络上分发密钥显然是不合适的;另外,任何一方将密钥泄露,那么双方都要重新启用新的密钥。
常见算法:MD5、RSA、DES
问题:共享的密钥不安全、通信者都需要不通密钥、通信双方都可否认信息。