美文网首页
iOS 证书/配置文件原理

iOS 证书/配置文件原理

作者: 轻轻语焉 | 来源:发表于2016-09-01 14:15 被阅读87次

    如果你只是想创建证书,不好意思这里没有!!!

    iOS开发,我们肯定会和证书打交道,很多时候,我们只知道怎么用这个证书,很少去研究证书到底是什么?证书有什么用?

    简单的讲,证书是我们开发、发布时的许可证,是由苹果发布的。

    我们的证书是被苹果CA签过名的合法的证书。而iOS设备在执行app前,首先要先验证CA的签名是否合法,然后再通过证书中我们的公钥验证程序是否的确是我们发布的,且中途没有对程序进行过篡改。

    下面问题来了,我们申请证书时,用的CertificateSigningRequest.certSigningRequest文件,是个什么鬼?有什么用呢?

    这个文件包含两部分内容(Certificate signing request):

    1、申请者信息,此信息是用申请者的私钥加密的

    2、申请者公钥,此信息是申请者使用的私钥对应的公钥

    3、摘要算法和公钥加密算法

    从MC(Member Center 开发者中心)中申请到的证书究竟是什么?

    苹果取出CertificateSigningRequest.certSigningRequest中的公钥,根本不管我的其他信息,然后将我的MC账号信息和我提交的公钥封装在证书中,并进行数字签名

    配置文件--iOS授权和描述文件

    但是光有证书并不够解决苹果的“后顾之忧”,证书能够证明app的所属以及app的完整性,保证app本身是安全的。但是,却不能细化到app所使用的某些服务是被苹果认可的,比如APN推送服务。而且证书无法限制调试版的app的装机规模。于是,苹果想出了mobileprovision。

    mobileprovision文件包含:

    1、AppId。每个app必须在MC中创建一个对应的AppId。规则不累述了。

    2、使用哪些证书。上面说了,不同类型的证书就代表了不同的发布方式,还包括一些功能的能否使用(比如APN)

    3、功能授权列表

    4、可安装的设备列表。对于AdHoc方式发布的app或者真机调试时,会有一个列表,这个列表里面是iOS设备的UDID,每台iOS设备出厂的UDID都不同,所以可以用来标识设备。可通过iTunes连接设备,或者http://fir.im/udid这里获取

    5、苹果的签名!

    AdHoc发布和真机调试

    AdHoc允许将测试版app发布给有限的设备安装,而无需通过appstore的审核。这里的关键是如何控制哪些设备可以装。答案就是mobileprovision文件,记得你在生成mobileprovision文件的时候需要选设备的UDID吧,所以这些设备需要事先添加到MC的Devices里面。对于开发时候的真机调试,原理差不多。都是通过mobileprovision的条目4来做到的。而苹果对于调试和测试用机的数量限制为100台!

    更多信息请查看 www.cnblogs.com/ioriwellings/p/5066652.html

    分享是一种力量。

    相关文章

      网友评论

          本文标题:iOS 证书/配置文件原理

          本文链接:https://www.haomeiwen.com/subject/spmodttx.html