C# 示例以下代码片段以**C#**编写,仅供参考。开发人员应使用其选择的编程语言实现相同的逻辑(例如,AES-256 ECB 加密、SHA-256 哈希),才能成功与 Spark DMZ 通信。
步骤 1:生成密码
Cipher 字段是一个经过安全加密的有效载荷,必须包含在请求正文中。它提供了一种强大的机制,用于证明您拥有必要的密钥,而无需公开传输该密钥。 此函数会生成最终的加密 Cipher 字符串,该字符串将包含在请求正文中。C#
sparkTransactionId:交易标识符(测试时使用 “1234”)tokenSecretString:您的密钥(Secret Token),用作 AES-256 ECB 加密密钥。random:17 位随机数。timestamp:UTC 时间,格式为yyMMddHHmm(可选)
步骤二:创建签名
该签名通过将序列化的请求体与您的标头哈希密钥相结合,并计算 SHA-256 哈希值来验证每个请求。此签名与您的集成商 ID 一起包含在 HTTP 标头中,以验证请求的来源和完整性。 该函数计算签名字符串并将其打包到所需的 HTTP 标头中。C#
request:整个请求正文对象(此处为 StartAuthenticationRequest3rdParty)integratorId:您唯一的集成方 ID。IntegratorValue:用于验证集成方身份的密钥HeaderHashKey。
IntegratorId 和 Signature。
请求模型
该请求模型定义了发送给 Spark 以启动身份验证的数据结构。每个身份验证请求都必须包含您的令牌 ID、终端标识详情、加密密文(使用CreateCipher() 方法生成),以及用于生成密文的 17 位随机数。
C#
响应模型
响应模型定义了在通过 Spark 发起身份验证后返回的数据结构。它包括哈希后的事务 ID 和状态信息。C#