使用 Play Integrity API 来保护您的应用和游戏

2022 年 2 月 15 日 谷歌开发者

在 Android 平台上有丰富的应用和游戏,为用户带来了很多绝佳的使用体验。其中大部分的用户会按照应用或游戏所设计的体验路线享受其带来的乐趣。但还是有一些用户来者不善,他们会通过作弊、恶意篡改、欺诈盗窃、盗版或未经授权等方式对应用或游戏进行滥用,这使得开发者不得不绞尽脑汁应对。通常使用未知账户或未知设备同应用进行不可信的交互将会带来滥用行为,且形式越来越复杂,这给开发者带来的挑战也在持续升级。本文您将学习到如何使用最新的 Play Integrity API 在兼顾便利性的同时为开发者保障应用的安全和完整性。


如果您更喜欢通过视频了解此内容,请在此处查看:

‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍ 使用 Play Integrity API 来保护您的应用和游戏
  • Bilibili 视频链接
    https://www.bilibili.com/video/BV1PS4y117wR/



Play Integrity API


我们曾推出独立的 API 来专门处理此类特定问题,比如 SafetyNet Attestation APIGoogle Play Licensing,每天帮助上千个应用处理对设备和用户账号的信任问题。但是随着挑战升级,所要面临的情况越来越复杂,开发者往往要集成多个 API 才能成功处理反滥用问题,但这样带来的复杂性很容易产生遗漏,而一项遗漏造成的结果往往可能会导致应用被严重滥用。


  • SafetyNet Attestation API
    https://developer.android.google.cn/training/safetynet/attestation

  • Google Play Licensing
    https://developer.android.google.cn/google/play/licensing


为解决这类问题,我们整合了最为先进的完整性技术,提供了全新的 Play Integrity API ,实现了让开发者只需调用单个 API 就能够实现整个应用的保护。该 API 会检测应用中存在的风险和不可信的交互,并发送信号给应用后端服务器,应用后端服务会判断是否能够信任同应用进行的交互。

  • Play Integrity API
    https://developer.android.google.cn/google/play/integrity


Play Integrity API 有助于保护您的应用和游戏,使其免受可能存在风险的欺诈性交互 (例如欺骗和未经授权的访问) 的危害,让您能够采取适当措施来防范攻击并减少滥用行为。

https://developer.android.google.cn/google/play/integrity/overview


当您的应用在搭载 Android 4.4 (API 级别 19) 或更高版本的设备上使用时,Play Integrity API 会提供已签名且加密的响应,其中包含以下信息:
  • 正版应用二进制文件: 确定您正在与之交互的二进制文件是否已获 Google Play 认可且未经篡改。
  • 正规 Play 安装: 确定当前用户帐号是否以正当方式 (例如通过 Google Play 安装或付费购买) 获取应用或游戏。
  • 正品 Android 设备: 确定您的应用是否在由 Google Play 服务 提供支持、已知且未经篡改的 Android 设备上运行。
    https://developers.google.cn/android


一旦发现问题,您可以决定是否需要提高用户使用门槛,来提高应用被滥用的难度,从而降低应用可能会面临的风险。我们已同一些开发者们紧密合作来测试这一 API,它已投入生产环境使用,来保护应用和游戏不被滥用。

△ Play Integrity API 的优势

Play Integrity API 具有如下关键优势:

  1. 它由 Google Play 提供支持,并提供了最新的文档、代码示例和最佳实践,开发者可从 Play Console 进行配置,并得到开发者支持;

    https://play.google.com/console/developers

  2. Integrity API 返回的数据包体积小且被加密,单个返回的数据包封装了多个完整性检测信号,无需进行多个 API 调用;

  3. 这是一个面向未来设计的 API,它将会支持更新的设备种类和规格的完整性检测。



授信流程


Play Integrity API 通过某种难以被侵入的方式让您的应用服务器同 Play 服务器进行通信,并进一步处理授信。 其具体步骤如下图所示:

△ Play Integrity API 授信步骤

  1. 用户开始进行某项操作,比如登陆应用或者加入多人游戏;
  2. 应用后端服务器开始生成唯一 ID,并通过触发应用开始进行完整性检查;
  3. 应用调用 Play Integrity API;
  4. Play 服务器会开始根据多项信号进行评估,包括设备是否已经受到侵入,是否通过证书认证测试,并对应用的授权许可进行验证,随后 Play Integrity API 会返回经过签名和加密的判定结果给应用,告知是否可以信任设备和二进制文件;
  5. 应用再将 Play Integrity API 返回的结果转发回应用服务器;
  6. 应用服务器会检查返回的 ID 与发送时的 ID 是否相同,并对结果进行分析判断,并将其返回给应用;
  7. 应用拿到结果之后,如果判定一切正常就可以让用户继续使用。

以上所有的操作都会在一瞬间完成,用户不会感觉到有任何的延迟。如果您使用的是 SafetyNet Attestation API,它的实现同上述步骤相似。


注意事项


在使用 Play Integrity API 时,需要注意以下几点:
  1. 确认遇到的主要问题,是盗版问题,比如流量欺诈、作弊,还是其他问题。分析出问题的严重程度,以及它造成的损失程度,以判断需要花费多大的努力去减少损失;

  2. 就完整性问题而言,没有一劳永逸的解决方案,新的 Play Integrity API 也不能解决所有问题,它仅可作为整体安全和反滥用策略的一个环节;

  3. 务必要考虑到误报的风险以及其他可能带给普通用户的使用成本,与其遇到有风险的操作就进行封堵,更好的做法通常是通过额外步骤增加用户滥用的门槛;

  4. 持续分析,倾听用户反馈,并持续更新 Android 和 Play 支持的功能,积极采用行业内反滥用的最佳实践。


如需了解 Play Integrity API 详情,请前往 Play Integrity API 页面:

https://developer.android.google.cn/google/play/integrity


针对在 Google Play 以及其他平台发行的应用,我们都将发布集成指南,我们还会分享更多从 Safety Device Attestation 以及 Play Licensing 迁移至新 API 的相关信息,敬请关注,同时期待您的反馈。

您也可以通过下方二维码向我们提交反馈,或分享您喜欢的内容、发现的问题。您的反馈对我们非常重要,感谢您的支持!




推荐阅读

如页面未加载,请刷新重试

  点击屏末  | 即刻了解 Play Integrity API 更多详情




登录查看更多
0

相关内容

应用程序接口(简称 API),又称为应用编程接口,就是软件系统不同组成部分衔接的约定。
数据中心传感器技术应用 白皮书
专知会员服务
41+阅读 · 2021年11月13日
移动应用(APP)个人信息保护白皮书
专知会员服务
16+阅读 · 2021年10月31日
专知会员服务
29+阅读 · 2021年9月30日
专知会员服务
47+阅读 · 2021年6月12日
专知会员服务
112+阅读 · 2020年11月16日
【2020新书】数据科学与机器学习导论,220页pdf
专知会员服务
80+阅读 · 2020年9月14日
【2020新书】社交媒体挖掘,212pdf,Mining Social Media
专知会员服务
60+阅读 · 2020年7月30日
【2020新书】现代C++初学者指南,301页pdf
专知会员服务
159+阅读 · 2020年7月24日
最新《知识蒸馏》2020综述论文,20页pdf,悉尼大学
专知会员服务
157+阅读 · 2020年6月14日
解锁 2022 Google 游戏开发者峰会 | 游戏业务稳步发展
俄罗斯欲推国产应用取代Google Play
CSDN
1+阅读 · 2022年4月1日
保障 Google Play 的安全,我们一直在努力
谷歌开发者
0+阅读 · 2022年3月25日
使用 Compose 构建 Wear OS 应用
谷歌开发者
0+阅读 · 2022年3月17日
Android 推出隐私沙盒
谷歌开发者
0+阅读 · 2022年2月17日
加速应用开发 | Firebase Summit 2021 精彩回顾
谷歌开发者
0+阅读 · 2021年12月8日
全新 Tiles API: 与您的智能手表用户分享磁贴
谷歌开发者
0+阅读 · 2021年9月8日
聊聊RTA(Realtime API)
AINLP
28+阅读 · 2020年6月5日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
1+阅读 · 2014年12月31日
国家自然科学基金
1+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
Arxiv
0+阅读 · 2022年4月20日
Arxiv
0+阅读 · 2022年4月14日
Arxiv
28+阅读 · 2021年9月26日
VIP会员
相关VIP内容
数据中心传感器技术应用 白皮书
专知会员服务
41+阅读 · 2021年11月13日
移动应用(APP)个人信息保护白皮书
专知会员服务
16+阅读 · 2021年10月31日
专知会员服务
29+阅读 · 2021年9月30日
专知会员服务
47+阅读 · 2021年6月12日
专知会员服务
112+阅读 · 2020年11月16日
【2020新书】数据科学与机器学习导论,220页pdf
专知会员服务
80+阅读 · 2020年9月14日
【2020新书】社交媒体挖掘,212pdf,Mining Social Media
专知会员服务
60+阅读 · 2020年7月30日
【2020新书】现代C++初学者指南,301页pdf
专知会员服务
159+阅读 · 2020年7月24日
最新《知识蒸馏》2020综述论文,20页pdf,悉尼大学
专知会员服务
157+阅读 · 2020年6月14日
相关资讯
解锁 2022 Google 游戏开发者峰会 | 游戏业务稳步发展
俄罗斯欲推国产应用取代Google Play
CSDN
1+阅读 · 2022年4月1日
保障 Google Play 的安全,我们一直在努力
谷歌开发者
0+阅读 · 2022年3月25日
使用 Compose 构建 Wear OS 应用
谷歌开发者
0+阅读 · 2022年3月17日
Android 推出隐私沙盒
谷歌开发者
0+阅读 · 2022年2月17日
加速应用开发 | Firebase Summit 2021 精彩回顾
谷歌开发者
0+阅读 · 2021年12月8日
全新 Tiles API: 与您的智能手表用户分享磁贴
谷歌开发者
0+阅读 · 2021年9月8日
聊聊RTA(Realtime API)
AINLP
28+阅读 · 2020年6月5日
相关基金
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
1+阅读 · 2014年12月31日
国家自然科学基金
1+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
Top
微信扫码咨询专知VIP会员