用C++Builder创建数字签名

如果你在网络上传递一份数据,但却存在着种种不安全的因素,使你对数据能否原封不动地到达目的地而心存疑惑,这时,你就可以给数据加上数字签名,从而使对方可以通过验证签名来检查你所传过去的数据是否已被他人修改。

一、程序原理

数字签名的工作原理还是比较简单的,它是根据你所提供的原始数据,经过复杂的算法,产生特定的数据签名,对方通过同样的过程也产生签名,如果数据已被修改,那么就不可能得到两份一模一样的签名,从而就可判断数据已被他人修改。编程人员利用Windows的CAPI接口,就可以实现数据的加密、解密和数字签名。

二、程序清单

下面用C++ Builder的语句来看一下它的具体实现过程。
先来创建数字签名,假定其数据来自于一个文件。

以上是一个数字签名的简单实现,得到的签名数据可以单独保存,也可以分开保存。