iOS创建的证书没有密钥,这是因为苹果公司在设计证书系统时采用了一种公钥加密的方式,即使用非对称加密算法来生成证书和密钥对。
在非对称加密算法中,公钥用于加密数据,而私钥用于解密数据。因此,在证书系统中,公钥被用于加密和验证数据,而私钥则被用于解密和签名数据。
当你在苹果开发者中心创建一个证书时,系统会自动生成一个公钥和一个私钥,并将公钥放在证书中,私钥则保存在本地的密钥库中。这意味着,你不能直接访问私钥,也不能将其导出或共享给他人。
当你使用证书来签名应用程序时,系统会使用私钥对应用程序进行签名,并将签名和证书一起打包到应用程序中。当用户下载和安装应用程序时,系统会使用证书中的公钥来验证应用程序的签名是否有效,以确保应用程序未被篡改或修改。
因此,证书系统中的公钥和私钥是非常重要的组成部分,它们保证了证书和应用程序的安全性。由于私钥的保密性非常重要,因此苹果公司将其保存在本地,以防止其被泄露或共享给他人。
总之,iOS创建的证书没有密钥是因为证书系统采用了非对称加密算法,将私钥保存在本地的密钥库中,以确保证书和应用程序的安全性。