美文网首页
iOS 应用的签名原理是什么?

iOS 应用的签名原理是什么?

作者: sunny冲哥 | 来源:发表于2016-12-20 09:35 被阅读72次

作者:Edison Z

链接:https://www.zhihu.com/question/22153061/answer/26238013

来源:知乎

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

在公钥密码体制里面,密钥被分为了私钥和公钥两个部分,最出名的是RSA所形成的PKCS标准,由于密钥不对称,在原本可以支持加密的基础上,又支持了一种认证的方式,就是签名。

其实签名就是加密的逆过程,加密是用公钥加密,私钥解密,这样就只有私钥拥有者才可以查看明文,其他人都可以给私钥拥有者发信息。一般来说,密钥对是由私钥拥有者产生的,自己保留私钥,公钥公开出来。

如果反过来,用私钥进行加密,那么公钥也可以解密,这个就叫签名。因为私钥只有私钥拥有者一个人知道(不泄露的前提下),但是公钥是可以公开出来的,大家可以验证是不是由正确私钥加密的(这里可以简单的考虑为固定了一个明文签名,这样只有私钥拥有者的签名大家才可以正确解密得到这个明文,其他人是无法伪造的)。至于怎么签名,是对整个程序签名还是片段签名,这个就是基于实际的 考虑。

在实际中应用,由于还要考虑到重放攻击等,一般来说是有一个完整的证书体制,比较出名的就是rsa基础上建立的PKCS。证书本身的构成是比较复杂的,而且需要一个大家公认的第三方来维护证书,当然,在苹果的体制下,自然这个第三方就是苹果公司,他为每一个开发者维护了每个开放者的证书(当然包括身份信息,密钥对等等很多信息),也为自己维护了一个机构证书。

如果按我判断,上传的时候利用开发者的证书对程序签名上传,apple验证签名的有效性,如果有效,apple用机构证书再次对程序签名。

用户下载的时候,会验证是否是apple签名的。至于如何签名,这个很难说,很可能是对每一个程序页都签名了,这样可以保证程序完全无法被修改

相关文章

  • IOS 逆向开发(四)App重签名

    1. 应用签名 应用签名原理回顾 上一篇博客“IOS 逆向开发(三)应用签名”中详细讲解了IOS 应用签名,证书的...

  • iOS签名机制

    应用签名的原理iOS APP签名机制详解iOS逆向之旅(基础篇) — App的签名机制【Xcode是如何将App安...

  • iOS 应用的签名原理是什么?

    作者:Edison Z 链接:https://www.zhihu.com/question/22153061/an...

  • iOS应用签名原理

    前言 iOS真机调试、App打包等过程涉及到各种证书,CertificateSigningRequest、p12、...

  • iOS 应用签名原理

    本文将讲解苹果的应用签名原理,旨在理解了应用签名后可以对非自己的应用进行重签名。 下面将从三个方面去讲解应用的签名...

  • iOS应用签名原理

    一、代码签名 代码签名是对可执行文件或脚本进行数字签名,用来确认软件在签名后未被修改或损坏的措施。和 数字签名原理...

  • iOS 应用签名原理

    一. 代码签名 代码签名是对可执行文件或脚本进行数字签名.用来确认软件在签名后未被修改或损坏的措施。和数字签名原理...

  • iOS 应用签名原理

    欢迎访问我的博客原文 不少果粉对 Apple 钟情,与它的纯净、安全有很大关系,我们发现在苹果的设备上下载应用时,...

  • iOS应用签名原理

    1. 应用签名原理 以前操作系统上是不需要签名的,软件下载下来就能用,盗版横行。苹果希望解决这样的问题,保证每一个...

  • iOS应用签名原理

    代码签名是对可执行文件或脚本进行数字签名.用来确认软件在签名后未被修改或损坏的措施。和数字签名原理一样,只不过签名...

网友评论

      本文标题:iOS 应用的签名原理是什么?

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