如何使用Java(Servlet)验证针对应用内结算Android Market的签名数据

Nav*_*ved 10 java android servlets in-app-billing

在为Android应用程序实施应用内结算时,我遇到了一个问题.

让我首先解释一下这个场景
我们有一个内容服务器(数据服务器),它有产品列表.
当用户从列表中选择一个时,他就可以购买它.
使用我的测试帐户输入信用卡详细信息后,购买逻辑运行完美.
在回报中,我在Android设备中获得了签名数据.

我的问题是
1.我是否必须验证Android设备中的签名数据,然后将一些信息或数据发送到内容服务器,然后内容服务器发送产品(我认为这可能不太好,因为服务器端没有流量验证请求是否有效或更准确;签名数据是否由谷歌市场生成)?
2.如果我必须在服务器端验证数据,我该怎么做?我是否必须将其发送到Google市场(如果是,使用哪种网络服务或API)?

请帮我纠正这个.
提前致谢.

yog*_*iam 2

对于第二个问题,对数据进行哈希(例如:MD5、SHA)并将哈希与数据一起发送到服务器。在服务器上,创建数据的哈希值并比较哈希值以验证它们。

  • @Naved 哈希算法是确定性的。如果对相同内容使用相同的哈希算法,则无论数据位于哪台机器,最终都应该得到相同的结果。 (2认同)