防止加密分区在其他 PC 上运行

Maj*_*cRa 3 hardware encryption disk-encryption

简洁的问题:是否有可能以某种方式将分区加密绑定到硬件,因此不可能(非常困难)将系统复制到另一台 PC 并在那里运行?

全文:我们开发了一台在设备内运行 Linux 的小型嵌入式 PC。当设备开启时,嵌入式 PC 就开始运行,向用户显示数据,直到断电。

这台 PC 上的软件是我们的商业竞争优势,因此我们希望尽可能阻止对其进行访问(请参阅 PS)。

所以这个想法是加密系统闪存或至少它的一部分。但是,可以只复制整个闪存。然后,下一个想法是将加密绑定到硬件。但是如何?

PS 我知道一切都是逆向工程的主题,但这并不是让产品逆向工程平淡无奇的理由。

PPS 我对抄袭并不偏执。不幸的是,我们知道竞争对手会试图通过名称窃取技术 =)

Ste*_*itt 5

您可以使用可信平台模块(TPM)将加密数据绑定到特定设备。这些在过去几年中在x86笔记本电脑中变得非常普遍,并且也可以安装在许多服务器中。

使用 TPM,您可以生成仅存在于模块中的加密密钥,并使用它来加密数据;如果您生成的密钥无法备份,那么您可以确保数据只能使用相应的 TPM 进行加密。复制原始存储设备是没有用的。在 Linux 上,您可以使用TrouSerS来管理它。

在 ARM 平台上,您可以对使用TrustZone存储的密钥执行类似操作,但我不知道详细信息。