由于Apple控制着整个硬件/软件堆栈,因此可以(通过某种类型的可信计算)获得以下信息:

  • 硬件证明该软件是正版,不受监狱破坏的iOS
  • iOS确认我的服务器运行的应用程序是未修改的应用程序

  • 该实现如下:

    当我的服务器发送数据时,可以保证只能以我打算使用的方式使用数据(因为它运行的是未经修改的应用程序,在没有牢狱之灾的iOS上)。

    这样可以防止诸如修改后的应用程序之类的事情,该应用程序窃取从服务器传输到客户端的数据。我意识到理论上可以窃听,但是可以通过加密消除。

    谢谢!

    最佳答案

    简要地,不。

    您是在不支持TC的平台上谈论可信计算概念。 IOS在Trusted Computing - Remote Attestation附近不包含任何内容。 它没有TPM

    如果启动链中下一个元素的签名无效,则由Apple芯片建立的信任链只会尝试停止执行。如果一件事失败(越狱),他们检测它的方法就不是真正有效的方法。它与Microsoft推出的Secure Boot非常相似,但是与Trusted Computing的ozt_code当前运行的系统版本完全不同。

    通过可信计算,TPM存储系统引导(SRTM)的度量(PCR)。在启动时,首先执行的操作(CRTM –我们真正需要隐式信任的唯一操作)将通过测量BIOS来启动链,将测量结果发送到TPM(在PCR中),然后将执行传递给它(BIOS)。然后,BIOS对引导链中的下一个元素执行相同的操作。

    然后,可以根据存储在内存中的环境,将存储在PCR中的测量值用于加密或解密信息(SEAL / UNSEAL操作)。

    TPM不对测量采取任何措施(好或坏)。这个想法不是要限制可以加载的内容,而是要知道平台上加载了什么环境。如果已对某些内容进行了修改,则TPM将不会包含正确的PCR值,并且UNSEAL操作(使用PCR作为密钥进行解密)将不起作用。

    对于远程证明,我们正在谈论QUOTE操作。与SEAL基本上是同一回事,但是使用其他密钥来确保评估方可以验证认证确实来自真实/合规的TPM。

    当然,系统可以使用SEAL操作来保护用于解密操作系统的机密,从而以某种方式产生与安全启动相同的效果。

    有关更多信息,请参阅其他文章。

    09-25 15:50