苹果企业签名之苹果证书的详解

2022-04-28 08:25 栏目:苹果p12签名证书 查看(385)

  具体操作和概念如下:


  1 在对应的keychain里从证书颁发机构请求证书,在此就本地生成一对公私钥,储存的CertificateSigningRequest的公钥,私钥储存在本地电脑中!


  第二 步苹果处理,不用管。


  3 步对应 CertificateSigningRequest 传到苹果后台生成证书,下载到本地。此时,本地有两个证书,一个是第 1 步生成的,另一个是从这里下载的,keychain 会把这两个证书联系起来,因为它们的公共和私钥是对应的XCode当你选择下载的证书时,你实际上会找到 keychain 在相应的私钥中签名。这里的私钥只生成 Mac 是的,如果是别的 Mac 还需要编译名这个 App 怎么办?答案是将私钥导出给其他 Mac 用,在 keychain 如果私钥被导出,它将存储成 .p12 文件,其他 Mac 打开后导入私钥。


  第 4 步在苹果网站上操作,配置 AppID / 权限 / 设备等,最后下载 Provisioning Profile 文件。


  第 5 步 XCode 会在本地找到相应的私钥(第一步生成),通过第 3 步下载的证书(有公钥),用本地私钥签名 App,并把 Provisioning Profile 文件命名为 embedded.mobileprovision 一起包装。这里是 App 签名数据保存分为两部分,Mach-O 可执行文件将签名直接写入本文件,其他资源文件将保存在 _CodeSignature 目录下。


  第 6 – 7 步的包装和验证是 Xcode 和 iOS 系统自动做的事情。


  CSR:Certificate Singing Request,证书签名请求文件。


  包含计算机的公钥信息。因此,创建时不需要填写任何与发布等相关的信息。


  Certificates证书:出版者证书。Apple Develop的ID 电脑授权证书。


  内容是由其他机构签名的公钥或私钥组成的数据包。


  计算机拥有此证书后,有权对此进行处理Apple Developer的ID下所有App进行真机测试、包装和发布。请注意,这里没有指定App,换句话说,和App无关。


  CSR 和 Certificates 的联系


  上面提到了Certificates它包含来自计算机的信息CSR。所以在创建Certificates需要提交时间CSR。相当于Mac 公钥被苹果私钥 加密。


  p12: 本地私钥可导入其他电脑。


  如上所述,只有有了证书,你才有权做这些事情。如果另一台电脑想要发布,它也需要证书。如果你创建了一个新的证书,它也可以解决,但一般来说,一个开发人员账户创建一个发布证书就足够了,苹果对证书的数量有限。此时,导出p12文件相当于复制一个私钥。安装另一台电脑后,另一台电脑有权。


  Entitlements:包含了 App 权限开关等信息。


  Provisioning Profile: 描述文件。包含了证书、App ID、设备、Entitlements 等数据,由后台私钥签名的数据包。PP文件,.mobileprovision后缀文件。


上一篇:哪些因素会导致苹果签名过期?

下一篇:苹果开发者账号有哪几种,企业签名是使用哪种账号呢?

郑重申明:IOS企业签名以外的任何单位或个人,不得使用该案例作为工作成功展示!