DeviceCheck指出可以通过AttestService和DCDevice来加强对越狱手机和破解APP的防御。
通过管理设备状态和APP的完整性减少对服务的欺骗性使用。
DeviceCheck服务包含两个接口框架,一个使从APP中使用的和服务器使用的苹果服务器接口。
在APP中使用DCDevice类,会获得一个token,用在服务器上来为每个设备设置和查询二进制数据,同时保证了用户隐私。例如,可以使用这个数据来标识已经使用了你提供的促销价格的设备,或者标记你已经认定有欺骗性的设备。服务器对服务器的apis也使你可以验证从APP发来的token是在苹果设备上。
有人修改了你的APP并且在App Store之外发布了他可以获取未授权的功能,像游戏作弊,屏蔽广告,或者获取付费内容。APP Attest服务使你的APP可以识别它的有效性,使你的服务器可以从容的提供敏感资源的使用。使用[DCApp](https://developer.apple.com/documentation/devicecheck/dcappattestservice?language=objc)``[AttestService](https://developer.apple.com/documentation/devicecheck/dcappattestservice?language=objc)来在设备上生成一个特殊的加密键,让后通过Apple attest来验证这些键。然后在你向服务器请求敏感信息时,使用这个键来判断APP的有效性。
没有单一的策略可以消除全部的欺骗行为。例如,APPAttest不能在没有抵抗力的操作系统上准确的决定一个设备。相反,DeviceCheck服务提供了信息,你可以把它们整合到对一个设备的全面风险评估中。