8

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

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

安全框架有什么帮助吗?或如何实现?

4

1 回答 1

4

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

尽管如此,您仍然可以自己实现数字签名,这非常简单且有文档记录。您需要按照本文档中的说明序列化您的 PDF,为签名对象腾出一些空间(这需要对 PDF 布局进行最低限度的解析),然后计算签名并将其存储在文件中。

对于加密部分,Security Framework 似乎没有提供 API 来生成所需的 PKCS#7 签名。所以你可以改用 OpenSSL。

于 2014-07-03T20:40:22.640 回答