一、介绍

RSA

算法的介绍:公钥加密、私钥解密

或私钥加密、公钥解密,这样们可以在终端软件

公开我们的公钥而不会影响安全性。

RSA

这种特点常用在电信、等行业数字签名中。

SHA-1

算法的介绍:

从一段字符串中计算出唯一标识这段字符串的信息摘要

160bit

=20

位字符)和

md5

算法类似。

RSA

SHA-1

算法在网上都有很详细的介绍不是本文介绍重点,本文重点介绍

RSA

算法在

完成加密解密及数字签名过程中用不同开发语言对接的问题(

java

c++

)对于其它开发语

言例如

vb

delphi

pb

等可以调用

c++

lib

dll

库文件来完成。

二、数字签名流程

1

A

构建密钥对,将公钥公布给

B1...B2

,将私钥保留。

2

A

使用私钥加密数据,然后对加密后的数据签名

(

签名算法:密文

=rsa(

明文,

privatekey)

Sgn=sha-1(

密文

) ,

发送给

B1..B2

B1..B2

使用

Sign

来验证待解密数据是否有效,

如果有效使用公钥对数据解密

rsa

(密文,

publickey

3

B1..B2

使用公钥加密数据

rsa

(明文,

publickey

,向

A

发送经过加密后的数据;

A

获得加密数据,通过私钥解密

rsa

密文,

privatekey)

4

数字只起到数据在网络传送中验证否被篡改过并保证加密数据的完整性。

RSA

据的安全是由

RSA

算法来完成的。

(工作流程图如下: