[TOC]
发送过程
对原始数据生成摘要
对数字签名进行解密
最后,判断 摘要1 与 摘要2 是否相等,若想等,则数据没有被篡改过
Apple
Mac
Apple
struct Mac {
公钥 L
私钥 L
}
struct Apple {
公钥 A
私钥 A
}
需要记住的是:这里的 Mac.公钥 L.sign 是使用 Apple.私钥 A 加密的
需要记住的是:这里的 App 有关数据之前是被 Mac.私钥 L 加密过的
Provisioning profile 用来装载 设备 ID,App ID,权限开关 Entitlements 等信息
Mac
Apple
struct Mac {
公钥 L
私钥 L
}
struct Apple {
公钥 A
私钥 A
}
App 数据.sign + Provisioning Profile 一同放进 App 中,名为 embeded.mobileprovisioning
Keychain -> 从证书颁发机构请求证书 -> 生成:
CertificateSigningRequest — send —> Apple Server — download —> 证书
其他 Mac 需要编译签名同一个 App ? —> Keychain 将私钥导出 —> .p12 文件
Mach-O 可执行文件把签名写进 embeded.mobileprovision 文件,其他资源文件保存在 _CodeSignature 目录下