用开发者证书签名怎么认证,免费个人苹果签名证书

最近需要给iOS开发团队做一次关于iOS开发证书以及代码签名的分享,于是花了点时间把这一块的知识重新学习和整理了一遍,从而有了这篇学习笔记。其中很多一些文字都是从网站或者博客上摘抄过来,为了阅读方便也做了一些调整,说白了我只是做了一些知识的梳理和整合。该笔记涉及到内容有:开发者账号、签名证书、标识符(Identifiers)、设备(Devices)、APP授权机制、配置文件、ipa文件的签名和安全…

近期必须给iOS开发团队做一次关于iOS开发设计证书及其代码签名分享的,因此花了些时长把这一块的专业知识重学和总结了一遍,进而拥有这篇文章学习心得。其中不少一些文本也是从网址或是博主上摘录来,想要阅读文章便捷也做了一些调节,简言之我就是做了一些知识整理和融合。

该手记牵涉到内容包括:苹果开发者、签字证书、标志符(Identifiers)、设备(Devices)、APP授权机制、环境变量、ipa文件的签字和身份验证。

苹果开发者类型

苹果公司为iOS开发人员给予三种账户类型,如下所示:

  • Apple Developer Program 服务年费 $99(或¥688) 能够在iOS App Store和Mac App Store发布运用能以本人(Individual)或是机构(Organization)名义添加,以机构真实身份添加需要提交邓白氏编码(DUNS Number),会空出Team Management作用,容许多人协作开发设计。在发落款内以机构(Organization)名义添加能够填好企业或个人信息(例如某某某企业、某某某个人工作室),而本人(Individual)添加只有默认设置表明创建账户填报的本人信息,而且不可以改动。
  • Apple Developer Enterprise Program服务年费 $299,用以以InHouse方式公布公司内部运用,不可以发布App Store企业证书到期则早已安装运用无法再继续运作。
  • iOS Developer University Program
    高校计划需要提交高等院校基本上信息,提供。苹果公司为激励高等院校更多加入到苹果开发者方案中,刻意发布这一项方案,高校计划具备在真机里检测等管理权限,但是不能将App分享到App Store。

证书(Certificates)

什么叫证书?证书便是:证实证书持有者有证书上所讲的水平,一个证书要牵涉到授予者、持有者、证实持有者拥有什么样的能力。比如,CET-4证书;授予者:院校,持有者:自身,的证明水平:英语达到四级水准。苹果开发者证书也是一样,授予者:自身,持有者:组装证书的电脑;的证明水平:能够装包某应用软件。

开发人员证书水平由来

向Member Center申请办理证书的一个过程,本身就是将于当地产生的certSigningRequest文档递交给苹果公司,使它开展签字授权全过程。certSigningRequest这一文件包含以下几点:

  1. 申请人信息,此信息要用申请者的私钥加密的。
  2. 申请人公匙,此信息是申请人所使用的公钥相对应的公匙。
  3. 摘要算法和公钥加密优化算法。

当苹果用公钥并对签字(受权)以后,我们就会获得一个证书文档。有着该证书后,我们就能用相对应的公钥对APP签字了。当iOS设备取得APP时就能通过证书里的公匙来检验APP的准确性,与此同时iOS设备自身能够认证证书是否被授权,因为该证书是苹果自身签名的证书。

被苹果签名的证书会随着APP一起装包到ipa文件中,同时提交到App store中。

在我们得到签字证书以后,还要一个证书来检验证书有没有被恰当受权,该证书便是Worldwide Developer Relations Certificate Authority证书。该证书一般都会随Xcode一起组装到自己的电脑里,还可以从Member Center去免费下载。因此要是没有该证书,开发人员将无法使用相对应的公钥对APP的签字,因为不能保证证书是不是被授权。该证书其实就是网上流传提及媒体证书(Intermediate Certificate)。

证书的类型

苹果公司为开发人员给予三种证书类型,用于在各个条件下应用,便捷开发人员的调试和检测。

  • 开发设计证书:平常用于开展实机调试的证书,用该证书签名的APP,只有安装于指定设备上。
  • 检测证书:不可用于实机调试的证书,但是能够编译程序在指定的真机里(不能开展调试)。主要是用于递交给检测开展的功能认证,和开发证书的区别就是,它跟公布证书类似处在非沙盒游戏环境。但用该证书签名的APP没法递交到App store,只有组装在规定设备上。
  • 公布证书:不可用于调试和检测,也无法组装在规定设备上,只有递交到App store。

应用公司(Enterprise)账户中的公布证书签名的APP能够安装在因此设备上,但不能递交到App store。

标志符(Identifiers)

在Member Center中,Identifiers能够管理方法App IDs、Pass Type IDs、Website Push IDs、iCloud Containers、App Groups、Merchant IDs、在这里主要是详细介绍App IDs。

App ID其实就是一个字符串数组,拿来做APP唯一标识的字符串数组,App ID是大小写敏感的。一个APP有且只有有一个ID,而且唯一。在Project中称之为Bundle ID(但是也会有些小区别,Bundle ID不可以包括[ * ]号)。在Member Center、Project、iTunes Connect都需要此ID去标识此App的唯一性。App ID加上以后不可以进行调整和删掉。

App ID标识符的构成和类型

iOS开发者证书以及代码签名学习笔记

以上如图所示,App ID由Apple所产生的一个Team ID做为作为前缀,后边跟的是开发人员自定的标志符,App ID字符串数组中只有包括标识符(A-Z,a-z,0-9),连接符(-),点(.)并且此字符串数组最好是是reverse-DNS格式。比如你企业的网站域名是cctv.com,你App的名称是Hello,那你可以用com.cctv.Hello做为你Bundle ID。

App ID之中能以[ .* ]来末尾,用于表达一个通配类型,如下图:

iOS开发者证书以及代码签名学习笔记
  • 精确类型的App ID:在标志符中没有[ .* ]来结尾的App ID能够称做为精确类型,该类型的App ID可用于做APP的Bundle ID。
  • 使用通配符类型App ID:在标志符是以[ .* ]结尾的App ID为使用通配符类型的App ID,该类型的App ID不可以拿来做APP的Bundle ID,它的作用后面会提到。

每一个APP还会继续相匹配一串数字的字符串数组(在itunesconnect建立以后可以获得),根据该字符串数组可向Apple所提供的http接口(http://itunes.apple.com/lookup?id=**),获得相对应的APP在Appstore里的信息,可用于检验版本升级,升级的log一些资料。

App ID的功效

  • 在Xcode工过程中,Bundle ID保存在Info.plist中,如果你编译程序工程项目的情况下,他们会把此文件拷贝你的软件库中。
  • 在iTunes Connect,用Bundle ID去标志App,在你第一次搭建提交以后,不就好了不断变化或是删除你的Bundle ID了。
  • 在Member Center,你创建一个和Bundle ID相符的App ID。假如App ID是精确类型的,你就得精准的去配对你Bundle ID。

授权机制 (Entitlements)

授权机制取决于什么服务器资源什么样的情况容许被一个应用使用。简单说它就是一个沙盒游戏配置列表,上边列出什么个人行为允许其,什么会被拒。Xcode 会把这个文档做为--entitlements参数具体内容发送给 codesign。

在 Xcode 的 Capabilities 菜单栏下选择一些选择项以后,Xcode 便会形成这样一段 XML。 Xcode 会一键生成一个 .entitlements 文档,之后在需要时往里加上内容。当搭建全部应用中,这一文档还会递交给 codesign 做为运用所要有着什么授权参照。这种受权信息务必都是在开发者中心的 App ID 中开启,而且包含于环境变量中。

受权列表在Member Center中的App ID中配备,那样就能够相匹配到具体APP。

设备(Devices)

这儿的Device指的是用于检测或是调试使用的设备。能够是iPhone、iPad、iPod、Apple watch及其Apple TV,在Member Center中加上检测Device的流程其实不是很难,只需取得相匹配Deveice的UDID就能加了。我们能运用iTunes、iTools、Xcode这种专用工具都能够拿到设备的UDID。

需要注意的问题便是,每一个苹果开发者,每一年较多能够加上100台调试设备,并且加上以后不可以修改和删掉,要想改动就需要直到下一年再次续订的时候才会进行调整或是删掉调试设备了。

环境变量(Provisioning Profiles)

以上提及了证书能证明APP的隶属及其APP的完好性,确保APP的自身的安全性。但却不可以优化到APP所采用的服务项目被苹果公司认同,例如APN推送服务,而且证书没法限定调试版APP的装机规模。因此苹果公司想出mobileprovision。一个mobileprovision文件包含一下具体内容:

  1. AppID 这儿的AppId能是精确类型的还可以是使用通配符类型。
  2. 证书列表 在多的人协议书开发设计时,一个mobileprovision文档中能够包括好几个证书文档。
  3. 作用受权列表
  4. 可安装设备列表 评估和调试mobileprovision文档其中包含设备列表,mobileprovision公布类型的文档中一般不包括设备列表。
  5. 苹果的产品签字

以上所提到的苹果的产品签名要用的苹果自已的公钥相对应的公匙是Worldwide Developer Relations Certificate Authority证书(媒体证书)里的公匙,所以这类文件形成后,我们都是无法进行改动的,需要从Member Center中配备并形成。

配备文件的区别

  • mobileprovision文件中是否包含机器设备列表,可分为带device信息的描写文件与不带device信息的描写文件如下图:
iOS开发者证书以及代码签名学习笔记
iOS开发者证书以及代码签名学习笔记
  • 还可以根据配备文件中涉及到的证书文件的种类来划分:开发设计种类、测试类型、公布种类。
  • 还可以根据配备文件中涉及到的App ID做区别,假如文件中App ID是精确类别的,那么这个配备只有用于对指定APP开展应用。假如是通配类别的,那么这个证书可用于对相匹配的Bundle ID的APP开展应用。假如是Company类别的苹果开发者,能够形成一个供精英团队所使用的Team Provisioning Profile,通过这些配备文件,队伍内人员能够共用一个配备文件去进行开发设计调节,自然,App ID得特定成通配类别的。mobileprovision文件构造如下所示:
iOS开发者证书以及代码签名学习笔记

总体来说叙述文件便是融合了证书、AppID、机器设备及其作用受权列表,进而确认了应由哪台电脑,把哪一个App,安装在哪台手机上。

APP的签名和身份验证全过程

ipa文件的签名全过程

这张图片讲述了,开发iOS应用软件时,从申请办理证书,到装包的大概全过程。

iOS开发者证书以及代码签名学习笔记

ipa文件的构成

iOS程序流程最后都会以.ipa文件导出来,ipa文件仅仅一个zip包,能直接缓解压力,先来了解一下ipa文件的构造:

iOS开发者证书以及代码签名学习笔记

缓解压力后,获得图中的Payload文件目录,以下是个根目录,这其中的具体内容如下所示:

  • 网络资源文件,比如照片、html、这些。
  • _CodeSignature/CodeResources。这也是一个plist文件,可以用文字查询,这其中的内容是是软件包中(不包含Frameworks)全部文件的签名。留意欢迎来到全部文件。代表着你程序流程一旦签名,就不可以变更在其中一丁点的物品,包含网络资源文件和可操作文件自身。iOS系统将查验这种签名。
  • 可操作文件。此文件跟网络资源文件一样必须签名。
  • 一个mobileprovision文件.装包时所使用的,从MC上产生的。
  • Frameworks。程序流程引用的非系统软件带有的Frameworks,每一个Frameworks本身就是一个app,这其中的构造应当和app类似,还包含签名信息CodeResources文件。

ipa文件的身份验证历程

  1. 缓解压力ipa文件
  2. 取下embedded.mobileprovision,根据签名校检有没有被伪造过 a. 在其中几个证书的公匙,在其中开发设计证书和公布证书用以校检签名 b. BundleId c. 受权列表
  3. 校检全部文件的签名,包含Frameworks
  4. 核对Info.plist里边的BundleId是否合乎embedded.mobileprovision文件里的

别的涉及的难题

汇总

当参与到苹果开发者方案以后,苹果公司根据证书来受权给开发人员开发iOS运用,并带来了多种多样证书种类来针对不同的需要。为了确保APP安全性和一致性,APP中每一个文件也将被签名。除非是再次签名,不然不可以并对进行任何改动。

mobileprovision文件是一个配备文件,由苹果公司签名后公布给开发人员的。主要包含了证书、App ID、机器设备列表、受权列表。通过这个信息进而确认了应由哪台电脑,把哪一个App,安装在哪台手机上。因此证书和mobileprovision文件是签名和装包的两大必需文件。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2022年9月29日 下午6:42
下一篇 2022年9月29日 下午6:46

相关推荐

  • 商业管理专业学什么,商务管理就业前景分析

    这年头,逢人就要读商科,商科里十之八九都要申请商业分析(BusinessAnalytics)专业。这个近三年才涌现出来的新兴专业俨然已成为新生代当红爆款! 那么商业分析到底是什么?受众人追捧的BA,真的如你所想的那样吗?让我们一起剖析一下这个火的不要不要的专业把 一、BA是什么? BusinessAnalyst(商业分析),简称BA,以商业知识为基础,数理编程为手段,从数据分析出发,以决策优化来创…

    2022年10月5日
    1210
  • 录屏软件哪个好用,4款免费的电脑录屏软件分享

    这款录屏软件叫做Bandicam:不仅仅支持游戏录像,桌面区域或全屏录像,摄像头录像.如果你想做小文件录像或者高清晰的游戏视频统统可以。 最最重要的就是非常稳定,分享给大家: 这款软件软件可以很好的录制全屏游戏以及桌面某一区域,无论是录制视频还是游戏或者是摄像头都可以选择适当的压缩率得到大小不同质量不同的视频文件。 接下来教程:这款软件是需要破解注册的,破解过程非常的简单,一步步按照操作就可以了。…

    2022年7月16日
    500
  • 御姐是什么意思(御姐类型的女生两大特征)

    成熟的大姐姐对于绝大多数死宅的吸引力都是非常大的,因为这大姐姐们除了火爆的身材之外,其心智和行为处事方面都能够碾压那些小萝莉和不是很成熟的少女们。ACG领域大多数御姐给人的印象都是身材好棒好棒的大姐姐,行为举止优雅。昨晚和人飙车技的时候,忽然发现对手好像对御姐有啥误会,并不是是个年长且身材好的萌妹都可以叫御姐的!比如牧野遥,要说她是御姐的话总觉得会少点啥,大家说是不是?所以今个我们就来聊聊御姐通常…

    2022年9月17日
    900
  • 年轻人创业项目排行榜,适合年轻人的小型创业项目推荐

    2019开什么店最好? 2019在不知不觉中就到了眼前,一年的时间就是这么快,在你还在思考2018的时候,2019就已经来到了眼前。 于创业者而言,关心的无非也就是2019开什么店最好,有兴趣的话,就一起往下看看吧! 一、粗粮早餐店 粗粮早餐是眼下的一大热门,现代人对粗粮早餐是很欢迎的,因此也就有着比较大的需求。对创业者来说,。开一家粗粮早餐店是不会错的,市场需求大,而且需求稳定,生意好是必然的。…

    2022年6月7日
    720
  • 房地产营销策划案例分析,房地产营销的5种手段

    房地产营销策划就是运用整合营销概念,对开发商的建设项目,从观念、设计、区位、环境、房型、价格、品牌、包装、推广上进行整合,从而合理确定房地产目标市场的营销方案。房地产营销策划可分为房地产投资营销、房地产投资营销、房地产投资营销、房地产形象营销、房地产建筑质量这几个类型,接下来就和小编一起来看看房地产营销策划方案案例吧。 房地产营销策划的种类 一、房地产投资营销 二、房地产定位营销 三、房地产规划设…

    2022年6月27日
    640
  • 2020超强续航手机推荐,不仅容量大且价格实惠非常值得入手

    在功能机时代,手机续航一直都不是人们担心的问题,一部功能机待机两三天不是问题。因为那时候,手机的功能只不过是打电话和发短信,所以耗电量很少。而到了智能机时代,手机的发展飞快,越来越多的功能开始在手机上出现,手机的性能越来越强,屏幕也被越做越大,伴随而来的自然是手机耗电量的陡增。由于手机的功能越来越丰富,轻办公,娱乐,设影音,社交等功能的进步让人们沉浸在手机上的时间越来越多,手机的续航问题就出现了。…

    2022年10月5日
    370
  • 企业网站seo怎么做,seo关键词优化详细方法介绍

    相信不少刚接触SEO的小伙伴都会遇到一个问题,SEO该做什么,怎么做?下面我会给大家分享一套实战的SEO方案,希望能帮到你! SEO是什么,怎么做? SEO优化及推广计划书 一、确立关键词 1、如何选择主关键词及长尾关键词: 1)与公司所处行业及网站运营目的息息相关; 2)通过百度指数、词库工具、百度搜索下拉框等形式,筛选出搜索量适宜,优化难度适宜的主关键词; 3)通过观察竞争对手网站的情况。 2…

    2022年6月30日
    640
  • 家用电烤箱品牌哪个好(家用电烤箱价格及图片)

    近年来,烘焙受到了越来多年轻人的追捧,烤箱也受到了越来越多人的关注。家用电烤箱好用吗?家用电烤箱应该怎么选?今天,小编就来给大家一一解答。 家用电烤箱好用吗 家用电烤箱分为台式小烤箱和嵌入式烤箱两种。台式电烤箱好处在于非常灵活,可以根据需要选择不同配置的烤箱,由于品质,配置的不同,价位从几百元到几千元不等,国外的品牌通常比较贵,而国内的产品性价比就比较高,比如像海氏这样的做出口OEM的工厂型企业。…

    2022年9月25日
    450
  • 手把手教你做营销,满满的干货建议收藏

    创业是一种热情,一种爱好还是一种专业? 营销是一次交易,一次售卖还是一种方法? 第一次发展的结果一定要成为第二次发展的基础 一个没有策略的初创企业就像是一个没有地图的旅程,因此今天文章的目的在于把这张地图传授给我们受人尊敬的创业者,这样他们就不会在市场激烈的竞争中迷失方向。 营销是没有专家的,唯一的专家是消费者,就是你只要打动消费者就好了。 ————史玉柱 MGM,即Member Get memb…

    2022年10月10日
    850
  • vivo体验店和专卖店有什么区别,vivo体验店装修效果图一览

    在过去的十年中,手机行业逐渐敞开了多元化发展的大门,越来越多不同造型、配色和功能丰富的产品出现在大众视野,但遗憾的是传统店面的体验方式已经不能满足用户多元化的消费需求。为此,业内多家品牌厂商都面临着店面转型的难题,都希望通过营造出沉浸式的自然体验,为快节奏生活中的用户带来心灵的慰藉和视觉享受,而在这方面vivo早已经进行了提前布局。 众所周知,自2018年开始,vivo已经着手对线下渠道策略进行升…

    2022年5月25日
    1920

发表回复

登录后才能评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信