验证服务器端的应用内结算签名

时间:2012-02-13 16:28:22

标签: android in-app-billing crypto++

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

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

哪些方法可以在c ++中验证它?

我可以使用openssl命令吗?

1 个答案:

答案 0 :(得分:2)

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

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