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

在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对象可以包含一个或多个来自签名者信任链的发行人(机构)证书

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,301评论 19 139
  • 数字证书就是网络通讯中标志通讯各方身份信息的一系列数据,其作用类似于现实生活中的身份证。它是由一个权威机构发行的,...
    拉肚阅读 21,503评论 1 17
  • 接触iOS开发多年,花了一点时间去研究了一下iOS这套证书和签名机制,并撰文分享给需要的朋友。由于本人才疏学浅,多...
    风和花阅读 5,864评论 0 7
  • 如果穿越到古罗马,走在街头,大公共浴场比比皆是,即使在现在,就连意大利境内的中小城市庞贝,也保存有浴场的遗迹。在中...
    遥远的鱼223阅读 5,342评论 0 51
  • 读经日期:2017年11月21日 农历:十月初四 星期:二 天气:阴 读经人员:炜圣,炜圣妈 炜圣:5周5个月 ...
    泉州炜圣妈阅读 799评论 0 4