如何在服务端配置签名验证的 RSA 私钥?

更新于:2018年07月19日 11:14:31

为了进一步增强交易请求的安全性,Ping++ 交易接口针对所有的 POST 和 PUT 请求已经新增 RSA 加密验签功能。如果使用该签名验证功能,你需要生成一对 RSA 密钥,将公钥上传至 Ping++ 管理平台的「商户 RSA 公钥」并启用验签开关,然后将私钥配置到你的代码中。步骤如下:

  1. 首先你需要本地生成 RSA 密钥,生成方法请参考:如何获取 RSA 公钥和私钥?

  2. 将公钥上传至 Ping++ 管理平台的「商户 RSA 公钥」并启用验签开关

    0015b4ffaeeab01080fcae98154d523

    注:配置完商户 RSA 公钥后,Test 模式加密验签功能将自动开启,Live 模式在手动开启后加密验签功能生效。开启后不可关闭,所有的 API 请求将会要求验证签名。

  3. 在服务端配置「商户 RSA 公钥」对应的私钥

    ① 如果你是使用的 SDK,则可以读取配置私钥文件的路径或者直接定义变量,各 SDK 配置示例如下:

    PHP SDK :

\Pingpp\Pingpp::setPrivateKeyPath(__DIR__ . '/your_rsa_private_key.pem');

    JAVA SDK :

Pingpp.privateKeyPath = "/path/to/your_rsa_private_key.pem";

    NODE.JS SDK :

pingpp.setPrivateKeyPath(__dirname + "/your_rsa_private_key.pem");

    PYTHON SDK :

pingpp.private_key_path = 'your_rsa_private_key.pem'

    RUBY SDK :

Pingpp.private_key_path = File.dirname(__FILE__) + '/your_rsa_private_key.pem'

    GO SDK :

privateKey, err := ioutil.ReadFile("your_rsa_private_key.pem")

    C# SDK :

Pingpp.Pingpp.SetPrivateKeyPath(@"你生成的私钥文件的路径");

    ② 如果你调用 API 接口校验的话,需要生成 RSA 签名(SHA256)并在请求头中添加 Pingplusplus-Signature,详细方法请参考:新的接口验签方式说明

    您需要登录后才可以回复