在iOS 9之前,用户可以通过在设备上安装自签名证书或者企业证书,来安装第三方应用程序。但是在iOS 9之后,苹果公司增强了对证书的验证机制,只有被苹果公司信任的证书才能被设备接受,否则设备将无法安装该应用程序。本文将介绍证书被iOS 9信任的原理和详细介绍。
证书是一种数字签名,用于证明应用程序的身份和完整性。iOS系统通过验证证书的签名和数字指纹来确认应用程序的身份和完整性。苹果公司通过发布证书颁发机构(CA)列表来控制哪些证书被信任,即只有被列入该列表的证书才能被设备信任。
在iOS 9中,苹果公司增强了对证书的验证机制,主要有以下几个方面:
1. 对证书颁发机构的限制。苹果公司只信任由以下几个颁发机构颁发的证书:VeriSign、GeoTrust、Thawte、DigiCert、GlobalSign、Comodo、Go Daddy和Symantec。如果证书不是由这些颁发机构颁发的,则无法被设备信任。
2. 对证书有效期的限制。苹果公司要求证书的有效期不能超过825天。如果证书已过期,则无法被设备信任。
3. 对证书用途的限制。苹果公司只信任用于应用程序签名和HTTPS连接的证书。如果证书用于其他用途,则无法被设备信任。
4. 对证书链的限制。苹果公司要求证书链必须完整,且证书链中的每个证书都必须由信任的颁发机构颁发。如果证书链不完整或者证书链中的某个证书不是由信任的颁发机构颁发,则无法被设备信任。
5. 对证书撤销的检查。苹果公司会定期检查证书撤销列表(CRL)和在线证书状态协议(OCSP),以确保证书的有效性。如果证书被撤销,则无法被设备信任。
综上,苹果公司通过限制证书颁发机构、有效期、用途、证书链和撤销等方面来控制证书被信任的范围。只有通过了这些限制的证书才能被设备信任,否则将无法安装应用程序。
在实际操作中,开发者需要在苹果开发者中心申请证书,并将证书用于应用程序的签名和打包。若要将应用程序发布到App Store中,则需要通过苹果的审核,以确保应用程序符合苹果的规定和安全要求。
总之,证书被iOS 9信任的原理和详细介绍包括限制证书颁发机构、有效期、用途、证书链和撤销等方面。只有通过这些限制的证书才能被设备信任,否则将无法安装应用程序。开发者需要遵守苹果的规定和安全要求,以确保应用程序的安全性和可靠性。