RSA 密钥生成
大约 3 分钟
RSA 密钥生成指南
Smilepayz API 请求需使用商户 RSA 私钥签名;您将对应的公钥上传至商户后台,供平台校验 X-SIGNATURE。本指南说明如何在沙盒与生产环境生成并保存密钥。
概述
| 密钥 | 持有方 | 用途 |
|---|---|---|
| 商户私钥 | 商户(切勿上传) | 签名代收、代付、查询等 API 请求 |
| 商户公钥 | 上传至 Smilepayz | 平台校验您的 X-SIGNATURE |
| 平台公钥 | 从 Configuration Info 复制 | 校验回调签名 |
沙盒与生产分开
请为沙盒和生产分别生成 RSA 密钥对,勿在生产环境复用沙盒私钥。
密钥要求
商户后台要求 2048 位 RSA 密钥(签名算法 SHA256withRSA)。公钥文本框中保存的是不含 PEM 头尾的 Base64 字符串。
- 私钥 — 保存在下载文件中,仅部署在您的服务器
- 公钥 — 填入 Merchant Public Key 文本框后点击 Save
签名用法详见签名授权。
沙盒:生成并保存
步骤 1:进入 API Setting
- 登录商户后台。
- 顶部开关切换为 Sandbox。
- 左侧打开 Configuration。
- 选择 API Setting 标签。
- 滚动至 Merchant Public Key 区域。
步骤 2:生成密钥对
- 点击 Generate RSA Keys。
- 浏览器会下载密钥对文件(文件名通常包含
Sandbox与时间戳)。 - 公钥 会自动填入下方文本框。
步骤 3:保存公钥
- 确认文本框中的公钥内容。
- 点击该区域底部的 Save。
- 将下载文件妥善保管 — 其中包含私钥。

生产:生成并保存
生产环境入口为 Settings → Configuration,而非沙盒左侧的 Configuration 菜单。
步骤 1:进入 API Setting
- 登录商户后台。
- 确认顶部为 Production。
- 进入 Settings → Configuration。
- 打开 API Setting 标签。
- 滚动至 Merchant Public Key。
步骤 2:生成并保存
- 点击 Generate(生产环境按钮文案,功能与沙盒相同)。
- 安全保存下载的私钥文件。
- 核对文本框中的公钥。
- 点击页面底部的 Save API configuration。
生产 API Setting 差异
生产环境 API Setting 中,IP 白名单为只读展示(由平台维护)。回调字段为 Payin、Payout。保存按钮文案为 Save API configuration。

下载文件格式
下载文件通常包含两把密钥的 PEM 块:
-----BEGIN PRIVATE KEY-----
[Base64 私钥内容]
-----END PRIVATE KEY-----
-----BEGIN PUBLIC KEY-----
[Base64 公钥内容]
-----END PUBLIC KEY-----
集成代码或 SDK 使用私钥(PKCS#8、Base64)。后台文本框中的公钥与 PEM 中公钥内容一致,但不含 -----BEGIN/END----- 行。
配置完成后
- 若尚未完成,请继续配置集成信息(IP 白名单、回调地址等)。
- 在沙盒 Signature Test 标签或通过沙盒 API 调用测试签名。
- 上线前在生产环境用新密钥对重复上述流程。
故障排查
| 问题 | 处理建议 |
|---|---|
| API 签名被拒绝 | 确认生成后已点击 Save;私钥与已上传公钥是否配对 |
| 环境搞错 | 沙盒与生产密钥独立 — 核对开关与 Merchant ID 前缀 |
| 私钥丢失 | 重新生成密钥对,上传新公钥并更新服务器配置 |
| 生成后公钥框为空 | 重试 Generate;检查浏览器下载权限 |
