
注意:
1、CSR 是由私钥+密码生成的;
2、P12就是由CER 经过私钥+密码生成的;
| | **根据什么生成** | |
| --- | :--- | --- |
| <font style="color:#0071c1;background-color:#fff3ce;">CSR</font> | 私钥+公钥 | |
| <font style="color:#04b0f1;">苹果官网证书(certificateContent)--CER</font> | token+上面的<font style="color:#0071c1;background-color:#fff3ce;">CSR</font> |  |
| Cer(P12的前身) | 1,<font style="background-color:#dfebf6;">Apps Id(bundleId)</font><br/>2,CSR | 两个推送证书的CER是手工生成 |
| P12 | <font style="color:#04b0f1;">苹果官网证书(certificateContent)</font>+私钥+密码 | |
| **两个推送证书P12**(cer是通过<font style="color:#0071c1;background-color:#f9e5d7;">CSR</font>在苹果官网生成--此步无法自动化) | <font style="color:#04b0f1;">推送证书(Cer)</font>+私钥+密码 | |
| | | |
| profile | 1,<font style="color:#0071c1;">主证书id</font>: `profileRelationshipsCertificatesData.setId(/*"CRZV4XQ5MF"*/createProfileParam.getCerId())`;<br/>2<font style="color:#0071c1;">,bundleId</font>:通过 `listBundleId(iosCertificatApplyReqDTO, extendIdentifier, token)`查询<br/>3,<font style="color:#0071c1;">token</font> | 注意:会依赖主证书<br/> |
| <font style="color:#0071c1;">Apps Id(bundleId)</font> | 1,包名;<br/>2,需要创建group id进行关联<br/>3,token | |
| Apps Id(bundleId)和主证书的更新没有关系, | 所以更换<font style="color:#04b0f1;">苹果官网证书(certificateContent)</font> ,不用重新生成Apps Id(bundleId) | |
| 更换<font style="color:#04b0f1;">苹果官网证书(certificateContent)</font>需要做什么 | 只需用重新生成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?
可以