概述
统一电子印章系统的电子签章是采用 PKI 公钥密码技术,将数字图像处理技术与电子签名技术进行结合,以电子形式对加盖 印章图像数据 的电子文档进行数字签名,以确保文档来源的真实性以及文档的完整性,防止对文档未经授权的篡改,并确保签章行为的不可否认性。在使用电子印章对各种文档进行电子签章过程中,签章者通过数字签名对文档数据进行签章处理,从而达到与传统纸质文件盖章操作相同的可视化效果,同时又利用数字签名技术保障了文档数据的真实性、完整性以及签章者行为 的不可否认性 。统一电子印章系统中数字签名算法为SM2 杂凑 算法为 SM3 。
1.2.156.10197.1.301 : SM2椭圆曲线公钥密码算法
1.2.156.10197.1.501 : SM3WithSM2Encryption
通过上图我们可以看到以下内容:
- 三个主要的数据结构:1、电子签章结构体;2、电子印章结构体;3、印章结构体。他们包含关系是 1包含2;2包含3。
- 三次用到算法加密:两个签名值、一个原文杂凑值
- 三个证书:两次用到签章者证书、一次制章者证书
签章的大致流程需要四步。
1:构造印章信息
类似于c语言的结构体。将对应属性的值赋值后。
2:构造电子印章结构体
根据有效的数字证书构造出一个印章结构体(C语言的struct)。运用“SM3WithSM2Encryption”对印章结构体进行运算得到了 电子印章的签名值。
3:构造待签名数据
4:构造电子印章结构体
第二步