CodeSigning仅使用Windows的IPA文件

Ben*_*eny 7 delphi openssl code-signing x509 ios

对于未来的项目,我需要了解Apple iOS IPA文件(iPhone/iPad)的协同处理过程是如何工作的.我的项目的目标是构建(在Delphi中)一个Windows工具来编码一个IPA文件(之前通过XCode 编译为" 不代码签名 ").

可以肯定的是,只能在Windows上对IPA文件进行编码; 就像Adobe使用AIR/Flash CS5一样.此外,Epic Games,Inc.使用第三方工具构建了UDK(虚幻开发工具包),用于协调IPA文件.

最后一个是用C#/ .NET编写的,所以我试着探索源代码来了解代码签名过程是如何工作的,但是,哇,代码是相当进化的,即使C#/ .NET和Delphi之间有很大的相似之处,我很快就模糊了......

UDK的iPhonePackager非常接近我想做的事情(功能较少).

根据我的研究:证书和密钥可以通过命令行中的OpenSSL"生成"; Apple使用X509证书对二进制文件进行编码(?); 像Bouncy Castle Crypto API 这样的组件可用于管理证书.

关于苹果的代码签名过程中的一个有趣的文章:http://developer.apple.com/library/mac/#technotes/tn2206/_index.html

我还要生成" CodeResources "; 来自Mobile Provisioning文件的" embedded.mobileprovision "; 和" CodeSignature/CodeResources "具有所有文件的层次结构,如:

<key>MainWindow.nib</key>
<data>GTBfZPINlJlD7HXjMRAKgfAztXU=</data>
Run Code Online (Sandbox Code Playgroud)

如果你读到目前为止,你肯定会头疼:)
所以,下面几个问题开始...

是否可以重新签名已编译并使用" 不代码签名 " 签名的二进制文件?
你认为我的项目真的很难......?
您认为雇用开发人员会更好吗?我可以为这个项目预算,但理想情况下我当然希望自己做...:D

非常感谢您提出建议和/或建议.

贝尼

小智 1

我正在做一个类似的项目,但我找不到UDK工具的源文件,它是开源的吗?如果是的话,你能给我一个链接吗?

我可以告诉您 CodeResources 文件使用 base64 中的 sha1 摘要。您可以使用 openssl 创建: openssl dgst -sha1 -binary | openssl enc -base64