android - 验证服务器端的应用内计费签名

标签 android in-app-billing crypto++

我正在研究应用程序中应用内结算的安全性。

我在服务器上进行验证,这是用 C++ 编写的。

在 C++ 中可以通过哪些方式验证它?

我可以使用 openssl 命令吗?

最佳答案

您可以使用 OpenSSL 库。您的应用程序从市场收到的响应是一串 JSON 数据和一个签名字符串,该字符串是使用开发人员配置文件中的公钥的私钥创建的。您应该将该公钥保留在您的服务器上,然后您的应用程序可以将 JSON 字符串和签名传递到您的服务器进行验证。

签名字符串是采用 PKCS#1 填充的 base-64 编码的 SHA1-with-RSA 签名。您应该能够使用 OpenSSL EVP_Verify... 函数在 C++ 程序中验证它: http://www.openssl.org/docs/crypto/evp.html

关于android - 验证服务器端的应用内计费签名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9264122/

相关文章:

java - 在应用计费和替换公钥中。这有什么大不了的?

c++ - 使用 Visual Studio 2017 的 Crypto++ 库链接错误

android - App Store 或 Google Play 应用程序的加密和导出许可证

android - 无法获取 https :////dl. bintray.com/lukaville/maven/com/nbsp/library/1.09

java - Android:如何单独绘制.svg文件元素?

android inapp-billing - 找出 API 版本

c++ - 将加密对象解密为 memcpy 的 char[]

java - 数组android studio中相同值百分比和价格的总和不同

android - 了解订阅何时取消 - Play Billing 1.0

android - 管理多个版本的android应用