iOS各个证书生成细节

注意:

1、CSR 是由私钥+密码生成的;

2、P12就是由CER 经过私钥+密码生成的;

根据什么生成
CSR 私钥+公钥
苹果官网证书(certificateContent)--CER token+上面的CSR
Cer(P12的前身) 1,Apps Id(bundleId) 2,CSR 两个推送证书的CER是手工生成
P12 苹果官网证书(certificateContent)+私钥+密码
两个推送证书P12(cer是通过CSR在苹果官网生成--此步无法自动化) 推送证书(Cer)+私钥+密码
profile 1,主证书id: profileRelationshipsCertificatesData.setId(/*"CRZV4XQ5MF"*/createProfileParam.getCerId()); 2,bundleId:通过 listBundleId(iosCertificatApplyReqDTO, extendIdentifier, token)查询 3,token 注意:会依赖主证书
Apps Id(bundleId) 1,包名; 2,需要创建group id进行关联 3,token
Apps Id(bundleId)和主证书的更新没有关系, 所以更换苹果官网证书(certificateContent) ,不用重新生成Apps Id(bundleId)
更换苹果官网证书(certificateContent)需要做什么 只需用重新生成profile即可,(不用重新生成Apps Id(bundleId))

推送证书P12生成流程

在iOS应用开发中,理解并正确配置证书和标识符对于应用的开发、测试和发布至关重要。以下是对相关概念和文件的详细介绍,以及生成过程的概述:

1. 证书签名请求(CSR)

CSR(Certificate Signing Request)是证书签名请求文件。开发者在申请数字证书时,通过Mac上的"钥匙串访问"应用生成CSR文件,其中包含公钥和相关信息。该文件随后提交给苹果,以获取开发或发布证书。

2. 苹果官网证书(CertificateContent)

这是苹果开发者网站上生成的数字证书,通常以.cer为扩展名。该证书由苹果签名,包含开发者的公钥信息,用于验证应用的真实性和完整性。

3. Cer(P12的前身)

.cer文件是从苹果开发者网站下载的证书文件,包含公钥信息。为了在开发环境中使用,需要将其与私钥结合,导出为.p12格式的证书,以便在Xcode等开发工具中使用。

4. P12

.p12文件是包含公钥和私钥的个人信息交换文件。它由.cer证书和私钥导出而成,通常用于在不同的开发环境中分发和安装证书。

5. App ID(Bundle Identifier)

App ID是应用程序的唯一标识符,通常采用反向域名的格式,如com.example.appname。在苹果开发者中心注册App ID时,需要指定Bundle Identifier,以确保应用的唯一性。

6. App ID与P12的生成过程

以下是从创建App ID到生成P12证书的完整流程:

  • 创建App ID:

    1. 登录苹果开发者账户,进入"Certificates, Identifiers & Profiles"部分。
    2. 选择"Identifiers"并点击"+"按钮添加新的App ID。
    3. 填写描述信息和Bundle Identifier,确保其在整个应用中唯一。
  • 生成CSR文件:

    1. 打开Mac上的"钥匙串访问"应用。
    2. 在菜单栏中选择"证书助理">"从证书颁发机构请求证书"。
    3. 输入注册苹果开发者账户时使用的电子邮件地址,选择"存储到磁盘",并点击"继续"生成CSR文件。
  • 申请证书:

    1. 回到苹果开发者中心,选择"Certificates"并点击"+"按钮添加新证书。
    2. 根据需要选择"开发"或"生产"证书类型。
    3. 上传之前生成的CSR文件,苹果将生成相应的.cer证书文件。
  • 生成P12证书:

    1. 下载并双击.cer文件,将其添加到"钥匙串访问"中。
    2. 在"钥匙串访问"中,找到刚添加的证书,右键选择"导出"。
    3. 选择"个人信息交换(.p12)"格式,设置密码并保存,即生成了包含私钥和公钥的.p12证书文件。

通过上述步骤,开发者可以成功创建App ID,并生成用于开发和发布的P12证书,确保应用在苹果生态系统中的安全性和唯一性。

问题

1、下面的base64 是哪里生成的?

2、主P12和推送P12是否可以使用不同的CSR?

可以

相关推荐
leo__5206 小时前
基于MATLAB的交互式多模型跟踪算法(IMM)实现
人工智能·算法·matlab
jacky2576 小时前
衍射光波导与阵列光波导技术方案研究
aigc·ar·xr·ai编程·仿真·混合现实·光学设计
脑极体6 小时前
云厂商的AI决战
人工智能
njsgcs6 小时前
NVIDIA NitroGen 是强化学习还是llm
人工智能
七牛云行业应用6 小时前
重构实录:我删了 5 家大模型 SDK,只留了 OpenAI 标准库
python·系统架构·大模型·aigc·deepseek
知乎的哥廷根数学学派7 小时前
基于多模态特征融合和可解释性深度学习的工业压缩机异常分类与预测性维护智能诊断(Python)
网络·人工智能·pytorch·python·深度学习·机器学习·分类
mantch7 小时前
Nano Banana进行AI绘画中文总是糊?一招可重新渲染,清晰到可直接汇报
人工智能·aigc
编程小白_正在努力中7 小时前
第1章 机器学习基础
人工智能·机器学习
wyw00007 小时前
目标检测之SSD
人工智能·目标检测·计算机视觉
AKAMAI7 小时前
圆满循环:Akamai 的演进如何为 AI 推理时代奠定基石
人工智能·云计算