当前位置:文档之家› 数字证书认证以及签名实现方案

数字证书认证以及签名实现方案

1. 用户认证实现
用户使用数字证书进行身份认证时,可以使用SSL协议(https即是基于SSL协议之上的http协议)实现、现在主流的浏览器都支持SSL协议,因此采用https协议通讯的BS系统能够方便地使用数字证书做为身份认证方式。

除SSL 协议外,还有签名认证的方式实现身份认证,签名认证无标准的实现协议或是流程,神州融信基于PKI/CA接口开发套件设计实现了签名认证的过程。

下面介绍业务系统在不同结构下,所能身份认证的实现技术。

1.1 C S结构:
可以直接通过UTrust签名认证组件实现。

1.2 B S结构:
BS结构时,按协议分,可以分为http和https的访问的方式。

https是基于SSL协议基础之上的http通讯。

使用https时,可以配置WEB服务器要求使用数字证书对客户端进行认证。

◆使用https协议时
使用https时,无需使用UTrust签名认证组件。

服务器端调用windows 的API即可获得用户通过浏览器提交的数字证书的信息,实现对用户身份的认证。

但此种方式需要数字证书安装到浏览器或是数字证书在标准的符合PKCS12的USB KEY中。

◆使用http协议时
使用http协议时,浏览器不会自动获取用户的数字证书提交给服务器端。

此时认证需要使用UTrust签名认证组件实现服务器端的编程。

在客户端,使用微软的CAPICOM实现获取浏览器中安装的数字证书。

此种方式时,数字证书安装到浏览器中。

如果使用USB KEY,则需要KEY厂家提供读取数字证书的API。

2. 数字签名实现
数字签名应用主要包括签名以及验签两个过程。

数字签名时,使用用户的私钥对需要签名的原始数据进行签名,得到了对原始数据指纹加密后的密文。

验签名时,使用相同用户的公钥,对加密后的密文进行解密,即得到了原始数据的指纹。

比较原始数据的指纹是否一致,即可判断原始数据有无被修改。

1.3 CS结构
可以直接通过调用UTrust签名认证组件实现。

1.4 BS结构
在客户端,使用微软的CAPICOM实现对浏览器表单中的数据进行签名。

在服务器端使用UTrust签名认证组件实现验签。

相关主题