Google 博客:SafetyNet 认证,反滥用的构建基块

为 Android 应用开发者及其用户打造创新型安全功能仍然是一项优先工作。作为这项工作的组成部分,我们
提供了 SafetyNet Attestation,开发者可通过这个 API 远程评估与其通信的 Android 设备的真伪。

SafetyNet 通过检查设备上的软件和硬件信息来评估其完整性。评估结果是一份使用密码签署的声明,对设备的基本属性——例如总体完整性和与 Android 的兼容性 (
CTS)——以及应用的相关元数据(例如其软件包名称和签名)进行证实。下面这段 JSON 代码展示的是这个 API 如何报告这些信息的示例:

{
  "nonce": "R2Rra24fVm5xa2Mg",
  "timestampMs": 9860437986543,
  "apkPackageName": "com.package.name.of.requesting.app",
  "apkCertificateDigestSha256": ["base64 encoded, SHA-256 hash of the
                                  certificate used to sign requesting app"],
  "apkDigestSha256": "base64 encoded, SHA-256 hash of the app's APK",
  "ctsProfileMatch": true,
  "basicIntegrity": true,
}

示例认证响应的内容,提供有关调用应用以及设备完整性和兼容性的信息。


SafetyNet Attestation API 可以帮助您的服务器区分哪些流量来自真实的兼容 Android 设备,哪些流量来自不太可信的来源(包括非 Android 设备)。这种分类有助于您深入了解每台设备的关联风险,以便在发生滥用或不端行为时对预防或缓解措施作出调整。

我们鼓励开发者利用 SafetyNet 认证补强其反滥用策略。可将 SafetyNet 认证与其他信号(例如您的现有设备端信号以及有关用户尝试做出的行为的行为信号)相结合,打造出稳健的多层级保护系统。

如需了解详细信息,请查阅
近期更新的文档,以及查看 GitHub 上的
SafetyNet API 示例

    原文作者:Android
    原文地址: https://juejin.im/entry/590bf5321b69e6006837ce6e
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞