Agent Skills
返回列表
支付宝开放平台密钥工具

支付宝开放平台密钥工具

开发编程 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_ddb6809c/alipay-open-platform-keys。

技能介绍

要解决的问题

接入支付宝开放平台时,RSA2 密钥配置经常卡在三个点:不知道应该走公钥模式还是证书模式,本地私钥/公钥 PEM 生成后难以核对是否成对,以及加签或回调验签失败后难以判断是应用侧密钥、支付宝平台公钥/证书,还是参数编码问题。该技能把本地密钥准备步骤收敛到脚本化流程,减少手工敲 OpenSSL 参数和误把私钥提交进仓库的风险。

技能如何工作

  • 公钥模式:执行 scripts/generate_alipay_rsa2_keys.sh,生成应用私钥和应用公钥 PEM,随后到开放平台控制台上传应用公钥,并保存支付宝公钥用于验签。
  • 证书模式:增加 --cert 与 --subj(或 ALIPAY_CSR_SUBJ)参数,生成私钥和 app.csr,上传 CSR 后下载应用公钥证书、支付宝公钥证书及根证书,再按 SDK 文档配置证书路径。
  • 成对校验:可用同目录 scripts/verify_alipay_rsa2_keypair.sh 或代码中的 alipay_rsa2.rsa_keys_match 在本地终端校验公私钥是否匹配;默认建议用户本地执行,避免私钥进入对话上下文。
  • 环境配置:常见变量包括 ALIPAY_APP_ID、ALIPAY_APP_PRIVATE_KEY 或 *_PATH、ALIPAY_PLATFORM_PUBLIC_KEY 或 *_PATH。CI 场景可使用 --no-print 降低 PEM 在输出中复现的概率。

适用边界与注意

该技能覆盖本地生成密钥/CSR、生成说明和排查思路,但不能代替开放平台控制台中的应用侧密钥或证书配置、支付宝公钥/证书下载、网关权限与产品签约。执行前需确认 openssl 可用,脚本本身不依赖 Python。私钥不应入库,项目 .gitignore 应忽略 *.pem、*.csr、alipay_keys_* 等产物。验签失败时,应分别检查请求侧的应用私钥/应用公钥/证书匹配,以及回调侧的支付宝公钥/证书版本和待签串参数编码。

使用场景

  • 接入支付宝支付前,在本地生成 RSA2 私钥与公钥 PEM,并按公钥模式上传应用公钥。
  • 需要证书模式时,用 --cert 生成应用 CSR,并核对控制台上传后下载到的应用与支付宝证书。
  • 收到验签失败反馈后,区分应用私钥/应用公钥不匹配与支付宝公钥或证书过期两种原因。
  • 在 CI 中生成密钥时,使用 --no-print 避免私钥 PEM 被写入日志或输出。

适合人员

  • 需要对接支付宝支付的 Java/Node 后端工程师,希望本地生成 RSA2 密钥并按 SDK 配置。
  • 负责支付宝应用密钥轮换的平台工程师,需要区分公钥模式与证书模式并生成 CSR。
  • 排查回调验签失败的服务端开发者,需要确认应用私钥、应用公钥或支付宝证书是否匹配。
  • 维护 CI 支付集成脚本的工程师,希望在构建时安全生成密钥且不打印私钥 PEM。