解密回调

circle-info

说明

为了保证安全性,支付在回调通知接口中,对关键信息进行了 AES-256-GCM 加密,商户收到报文后,要解密出明文,解密时使用 APP 的密钥。本章节详细介绍了加密报文的格式,以及如何进行解密。

加密报文格式

首先,商户先从应答中获取以下信息。

  • AES-GCM 是一种 NIST 标准的 认证加密arrow-up-right算法, 是一种能够同时保证数据的保密性、 完整性和真实性的一种加密模式。它最广泛的应用是在 TLS 中

  • 回调报文使用的加密密钥为 APP 的密钥。。

  • 对于加密的数据,我们使用了一个独立的 JSON 对象来表示。为了方便阅读,示例做了 Pretty 格式化,并加入了注释。

{
    "original_type": "transaction", // 加密前的对象类型
    "algorithm": "AEAD_AES_256_GCM", // 加密算法

    // Base64编码后的密文
    "ciphertext": "...",

    // 加密使用的随机串初始化向量)
    "nonce": "...",
}

注意:加密的随机串,跟签名时使用的随机串没有任何关系,是不一样的。

解密

  • 算法接口的细节,可以参考 rfc5116arrow-up-right

  • 大部分编程语言(较新版本)都支持了 AEAD_AES_256_GCM。开发者可以参考下列的示例,了解如何使用您的编程语言实现解密。

代码示例

Last updated