iOS-PDF上进行数字证书签名

2017-03-17  本文已影响371人  YannChee

在pdf上进行数字签名,在Java上可以使用开源库itext进行,在iOS 平台貌似还没有开源库,需要自己开发一个支持数字签名的pdf组件或者使用第三方SDK,此过程可以参考相关Java源码

1. 生成一张签名对象,一般是签名图片

2. 生成包含数字签名的签名域对象

3.生成字节数组摘要,此过程需要解析数组证书文件

4.注入自己数组摘要到签名域中

5.(可选)这样一个带有数字签名的pdf文件就生成了,可以取出数字证书信息校验签名域了

下面来重点解析下第3步操作

一个基于DER编码(Distinguished Encoding Rules,可辨别编码规则)的PKCS#7 二进制文件里包含数字签名可以被用于 摘要数据

如果是SHA1字节数组摘要 需要包装成 PKCS#7的签名数据作为字段. PKCS # 7对象必须符合 RFC 2315互联网中的PKCS # 7规范

自己数组摘要至少要包含签名者的X.509数字证书标准的签名证书,该证书用于验证签名值

PKCS # 7对象可以包含一个或多个来自签名者信任链的发行人(机构)证书

上一篇 下一篇

猜你喜欢

热点阅读