Iphone 数字身份等同于公钥+;私钥?

Iphone 数字身份等同于公钥+;私钥?,iphone,ios,xcode,code-signing,Iphone,Ios,Xcode,Code Signing,我正在阅读有关iOS中的应用程序代码签名的文章,我不明白为什么私钥和公钥都在一起?使用私钥对应用程序进行签名时,公钥和证书的用途是什么 Xcode使用您的数字身份在运行期间对应用程序进行签名 构建过程。此数字标识由一个公钥-私钥组成 配对和证书。私钥由加密密钥使用 函数生成签名。该证书由 苹果;它包含公钥并将您标识为的所有者 钥匙对 公钥是任何人都可以解密应用程序所必需的,因此包含在构建中。让我们总结一下这个过程: 使用私钥加密应用程序可执行文件的哈希摘要(如md5或sha-1)。这就是“签名

我正在阅读有关iOS中的应用程序代码签名的文章,我不明白为什么私钥和公钥都在一起?使用私钥对应用程序进行签名时,公钥和证书的用途是什么

Xcode使用您的数字身份在运行期间对应用程序进行签名 构建过程。此数字标识由一个公钥-私钥组成 配对和证书。私钥由加密密钥使用 函数生成签名。该证书由 苹果;它包含公钥并将您标识为的所有者 钥匙对


公钥是任何人都可以解密应用程序所必需的,因此包含在构建中。

让我们总结一下这个过程:

使用私钥加密应用程序可执行文件的哈希摘要(如md5或sha-1)。这就是“签名”

您的用户使用您的公钥解密它(他们拥有它是因为它是公共的),并对照可执行文件进行检查。只要你的私钥保持私密,你就是“签名”它的人。这被称为“验证”

那么数字身份呢:

您的公钥本身不是公开的,它必须以某种方式被共享、公开,并由认证机构(特此称为CA)签名(即CA用他们的一个神奇的神秘私钥对其进行加密或散列)这保证了共享过程没有被中间人篡改。
因此,公钥和证书(CA签名-CA加密您的公钥)标识您(因此被视为您的“数字身份”的一部分),并且必须以某种方式(通过嵌入可执行文件中的第三方,由您命名)到达最终用户。

听起来有点。。。干的,但当你想出来的时候,你就有了签名。