Google Play 订单 ID 已更新为新格式

问题描述 投票:0回答:3

我最近购买的所有 Android 应用程序都显示新的订单 ID 格式。

旧格式:

[merchant ID].[actual order ID]

我们可以使用这种格式来检查订单ID的前缀是否与商户ID匹配,并防止Freedom等应用程序可能进行的黑客攻击。

新格式:

GPA. 1234-5678-9123-45678
  • 我最近的所有订单都以“GPA。”开头(是的,附加点也在那里)
  • 有一个17位数字,分为4块
  • 前 3 个区块各包含 4 位数字,最后 3 个区块包含 5 位数字

我想知道这个数字代表什么,子区块的意义,商户ID是否包含在任何地方?

android in-app-purchase in-app-billing android-pay
3个回答
10
投票

实际上,当谷歌在 2015 年 5 月就新的订单 ID 格式发出警报时,我在谷歌开发者控制台通知图标内询问了谷歌(他们通常会在其中发出有关新支持的国家/地区等的警报)。他们说 GPA 是 Google Play Apps 的缩写。根据通知,这个更改应该在2015年6月完成,但是他们没有这样做,我以为它被取消了。我错了。

编辑(2): 我现在找到了两种类型的订单ID:GPA(只是字母GPA,不是数字)。(17位实际订单ID)和(20位商户ID)。(17位实际订单ID)

编辑(3): 谷歌刚刚回复了我,GPA.1234-5678-9012-34567就是顺序播放的最终形式。他们告诉我不要使用商家 ID 来检查购买情况,而应该使用购买令牌。目前不提供技术支持。但我仍然没有找到解决这个问题的最佳方法。 为了验证购买是否有效,他们告诉我不要使用订单 ID,而是使用购买令牌,使用 google API 进行服务器端验证。 它更复杂,但似乎可以防止 Freedom hack:https://github.com/soomla/android-store/issues/47

*抱歉我的英语不好。


2
投票

我不知道此更改的原因,也不知道他们如何通知我们此更改。使用我们的商家 ID 检查订单 ID 是避免黑客攻击的好方法。

无论如何,我一直在快速思考解决这种情况,我看到的唯一解决方案是使用 Google API 来检查具体购买。

https://developers.google.com/android-publisher/api-ref/purchases/products/get

发送 packageName、产品 id 和令牌,然后检查该购买是否存在或者developerPayload 是否相同。

请纠正我或提供更多想法来尽快解决此问题。

干杯


0
投票

请帮助我了解我的 Google Pay 和 Google 帐户黑客攻击以及我的国际货币再见今天所有在一个 ID 中更新 Google.com.myaccount.com 世界隐私安全和金融服务在世界商业 syberceurty 的 VIP 组

© www.soinside.com 2019 - 2024. All rights reserved.