最近在做IPA签名的工作,要先科普一下基础。这里随着科普进程,也同步的做个分享。
围绕两点来做了解:
- 什么是签名?
- 怎么签名?
什么是签名?[原文]
关于公钥和私钥,这里有一篇入门级别的科普教程。
关于什么是证书,以及以下名词的解释,这里有详细的科普教程。
- 公钥/私钥/签名/验证签名/加密/解密/非对称加密
- RSA/DSA/SHA/MD5
- CA/PEM/DER/X509/PKCS
说白了,就是验证一致性,避免篡改。
最简单的验证方式,如下图
但是现实要复杂的多。
只校验安装不验证设备,流程如下:
添加上AppID和设备的限制,流程图如下:
证书申请流程,CSR[certificate signing request]
- 本地创建私钥,公钥可以通过算法从私钥中生成。
- 通过私钥创建证书申请,使用x509作为证书的格式。
- 发送给苹果签名,并且下载回本地。
由于证书申请走的流程是标准流程,我们可以从OpenSSL提供的API进行一下简单的模拟。
打包流程
下载验证流程
参考网址:
https://juejin.im/post/5d385523f265da1bb0040244