| |
| |
|
安信天元 PKI密码安全服务平台解决方案 |
|
|
| |
在利用 PKI 技术为应用系统增强安全性的时候,应用开发商都遇到了开发接口复杂,不统一,协议复杂的情况。我们为了简化应用开发商开发难度,减轻复杂程度,基于证书管理系统和国产加密设备开发了应用安全服务平台。在平台中我们封装了密码设备开发接口, PKI 操作协议接口,为应用系统提供了一个简单、灵活和跨平台的密码安全操作接口。 |
|
系统目标: |
目的: |
PKI 密码安全服务平台以国产加密设备为密码运算基础,为业务应用系统开发商提供一个安全、可靠和调用简单的密码安全服务组件,为应用系统开发商屏蔽复杂的密码运算接口,简化调用,同时增强应用系统的安全性。
|
定位: |
安全中间件和 PKI 密码安全服务平台,为业务应用系统开发商提供简单、安全、可靠的安全中间件产品,业务系统开发商不用了解复杂的密码安全操作协议,不用了解复杂的密码设备接口,直接利用我们的中间件就可以实现密码安全,增强应用系统的安全性。 |
系统功能设计: |
PKI 密码安全服务平台是以证书系统发放的证书为基础的,整体如下所述。 |
系统构成: |
PKI 密码安全服务平台主要由两个部分构成,一为客户端密码安全服务组件,另一为主机密码安全服务平台。他们与 CA 的关系如下图:
|
 |
系统流程: |
|
上图为安全服务平台的调用方式。只要程序员调用安全服务包就可以保障数据的安全。
|
接口:
服务器端应用接口: |
|
|
在与应用系统通信过程中,采用我公司开发的中间件,做到的跨平台、跨开发语言的调用, Unix , Windows 、 Java 、 C++ 等不同平台、不同开发语言都可以用相同的方式调用。同时通过中间件完成了负载均衡,双机容错等安全措施,保证应用系统的正常调用。 |
|
| 从以上接口可以发现, PKI 密码安全服务平台为业务应用系统商提供了一个简单、安全和可靠的接口,简化了业务应用系统开发商的调用,应用开发人员不用理解密码协议就可以为应用程序增加密码安全,增强了应用系统的安全性。 |
XML 数据设计: |
我们在数据的传输过程中,使用了先进的 XML 技术,将所有数据按照需要组织成 XML 格式的字符串,经过服务器或客户端的签名和 / 或加密之后,形成安全的数据,并仍然以 XML 字符串的形式进行传输。
下图详细解释了数据的传输过程:
|
|
系统性能设计: |
兼容性: |
PKI 密码安全服务平台采用了 XML 技术和中间件技术,能够在各种开发平台上使用,如 JAVA 、 C++/C 、 Delphi 等开发平台。
证书应用协议和底层密码操作协议我们遵循了 PKI 规范,能够与国内和国际标准的 CA 兼容通信。 |
标准性: |
PKI 密码安全服务平台开发严格按照国内和国际的相关标准,底层密码硬件平台采用 PKCS11 接口,证书采用 X509V3 证书,同时能够提供标准的 PKCS7 数据加密格式和 SMIME 等格式,可与其他系统相同 |
系统安全设计: |
PKI 密码安全服务平台采用硬件加密设备,密钥全部在加密设备内运算,不明文出现在加密设备之外。管理采用加密协议保护,利用证书进行身份认证,保证平台的安全。同时有安全日志供审计发现问题。主机安全服务平台采用安全操作系统保证系统的安全。 |
与其他安全方式比较: |
比较项目 |
PKI 密码安全服务平台 |
SSL 安全代理 |
网络密码机(VPN) |
加密机 |
是否支持双证 |
支持双证 |
不支持 |
不支持 |
需要开发 |
应用难易程度 |
开发简单 |
简单 |
简单 |
复杂 |
支持证书解释、验证和有效性查询(与 CA 中心通信) |
支持 |
支持 |
不支持 |
不支持 |
加密层次 |
实现实体身份认证仅对业务数据加密,防止内部攻击,安全粒度细,效率高 , 能使用 USB KEY 加密
|
对传输层包加密,安全粒度粗,效率低,是端对端加密,对客户端加密速度要求高,不能使用 USB KEY ( USB KEY 加密速度太慢) |
对网络层包加密,一般用于 IP 传输广域网加密,防止外部攻击,安全粒度粗,效率低
|
只提供底层函数,对开发人员密码知识要求高,效率高 |
通信中间件实现跨语言、跨操作系统平台、负载均衡、服务器和终端的交互、消息和事件处理 |
可实现 |
--- |
--- |
Socket 开发难度很大 |
服务器和终端的交互是否支持 PKI 身份认证、数字信封加密、授权访问控制 |
支持 |
不支持 |
不支持 |
不支持,必须由应用开发商自行开发 |
是否能实现局域网内密码安全服务 |
能,提供简单高层组件 |
能 |
不能 |
能,但仅提供底层基础函数 |
是否能实现内部服务器间数据密码安全服务 |
能,提供简单高层组件 |
不能 |
不能 |
能,但仅提供底层基础函数 |
能否实现存储加密 |
能,提供简单高层组件 |
不能 |
不能 |
能,但仅提供底层基础函数 |
是否保存数字签名或数字信封 |
能,提供简单高层组件 |
不能 |
不能 |
能,但仅提供底层基础函数 |
与应用结合程度 |
结合友好 |
不结合 |
不结合 |
结合不友好 |
|
|
|