Google Pay 使用 .net 解密直接令牌

Posted

技术标签:

【中文标题】Google Pay 使用 .net 解密直接令牌【英文标题】:Google Pay Decrypt Direct Token using .net 【发布时间】:2019-08-20 09:16:27 【问题描述】:

我正在寻求使用 .net (c#) 解密 Google Pay 响应的帮助。我正在使用 javascript API 和 Direct 方法 https://developers.google.com/pay/api/web/guides/setup。我的集成正在测试中并接收加密的有效负载。

问题在于似乎没有任何支持解密 ECv2 消息的 .net 库。我发现的唯一库是 Tink https://github.com/google-pay/tink-jni-examples,但是它使用的 Java 桥接器不适合我。

有没有人成功做到这一点或写过一篇文章?

【问题讨论】:

这个问题与 Stack Overflow 无关(请求资源),但 Tink 使用的算法记录在 developers.google.com/pay/api/web/guides/resources/… 中,它应该允许您通过一点点滚动自己的符合要求的实现努力。如果您这样做,请考虑在 GitHub 上提供它以帮助他人。 @IanKemp,感谢您的评论,我一直在尝试按照 Google 文档中的解密步骤进行操作。我只是不熟悉加密算法 我写了一个关于如何使用 BouncyCastle 解密这些令牌的 C# 示例:github.com/google-pay/payment-data-cryptography-dotnet(小免责声明,这不是官方的:Tink 是 Google 推荐用于这些目的的库) @fstanis - 我昨天真的在你的图书馆里玩游戏 - 我正在努力让它与我得到的响应一起工作 - 大多数问题似乎都与 JSON 编码有关。 如果您发现问题,请随时在 GH 上提出问题。 【参考方案1】:

根据@fstanis 的评论,我能够使用https://github.com/google-pay/payment-data-cryptography-dotnet 解密 Google Pay 数据。

【讨论】:

以上是关于Google Pay 使用 .net 解密直接令牌的主要内容,如果未能解决你的问题,请参考以下文章

Java中的Apple Pay支付令牌解密

Apple Pay 令牌的交易金额不正确

Apple Pay - 如何将商家公钥与支付令牌中的 publicKeyHash 进行比较?

设置 Google Pay 以向用户汇款

Google Pay 是不是支持将资金转入 PayPal 帐户?

如何获取用于直接集成的 Google Pay 公钥