2011-10-17 77 views
1

我可以生成PKCS1格式的原始签名..并且能够验证它。 但找不到使用IPHONE IOS SDK生成PCKS7格式化签名的资源。如何使用IOS iphone SDK生成PKCS7格式签名?

我需要签署一个简单的文本消息。

我必须使用哪个库?

我们可以使用openssl吗?如是?那么如何将它包含在XCODE库框架中?

请帮忙。

回答

0

是的,您可以使用openssl进行此操作,但您需要自己编译并将您的应用程序与静态库链接。如果你想在iPhone模拟器和真正的iPhone设备上运行它,你需要创建一个包含armv7和i386体系结构代码的'fat'库。如果你想支持iPhone 3,那么你需要包含armv6架构代码。因此,建立具有全部3种体系结构的库是最好的。

这里有一对夫妇资源的描述如何构建OpenSSL的为iOS:

http://atastypixel.com/blog/easy-inclusion-of-openssl-into-iphone-app-projects/ https://github.com/st3fan/ios-openssl

编辑:其实我修改st3fan的生成脚本,我已经粘贴在这里:

setenv.shbuild_openssl.sh

下载这些脚本并保留他们在某处像〜/ bin(回顾一下他们,然后chmod他们0755一旦你确定他们没有恶意)。

Next编辑setenv.sh,因为它假设有一个目录,您将安装第三方库。默认情况下,这是/opt/local/ioslibs,所以确保存在并由您拥有,最后一位将失败。它已使用默认位置配置为Xcode 4.2/iOS SDK 5,因此可能需要更正。

build_openssl.sh配置打造的OpenSSL(1.0.0e)的特定版本,将下载的源码包,如果它不是在当前目录(你需要wget对于这一点,但如果你不能懒得手动安装wget然后使用脚本中的链接下载它)。运行它时,它将在armv6,armv7和i386 arch中构建库,并将正确的文件复制到安装目录。

+0

我按照“容易包含openssl ..”的链接做了,但来自openssl.xcodeproj的lybcrypto.a文件以红色显示。和 #import 无法识别。 xcode无法存档Openssl? – chetan 2011-10-18 12:47:58