如何使用iOS应用程序中的X.509证书数据对PDF进行数字签名

时间:2013-11-11 07:58:21

标签: ios objective-c cgpdfdocument

我在我的应用中生成PDF。我想通过我的应用程序为这些pdf提供最好的安全性。我添加了Apple提供的默认安全选项,如所有者密码,允许复制,允许打印等...

但我想添加我的证书信息,或者使用自定义证书(X.509证书)文件将其称为数字签名pdf。

安全框架是否有任何帮助? 要么 如何实现这一目标?

1 个答案:

答案 0 :(得分:1)

不幸的是, iOS本身似乎没有提供此功能。搜索将数字签名应用于PDF的库很困难,因为许多工具都应用了手写签名的图片。似乎没有任何可以在iOS上使用的C或Objective-C,大多数实现都是Java或C#,或者不适用于iPhone(例如Acrobat SDKPLOP DS)。

你可以自己实施数字签名,这非常简单明了documented。您需要按照本文档中的说明序列化PDF,为签名对象腾出一些空间(这需要最少解析PDF布局),然后计算签名并将其存储在文件中。

对于加密部分,似乎安全框架不提供API来生成所需的PKCS#7签名。所以你可以改用OpenSSL。