ExProtector
ExProtector 是保护完整嵌入式设备免受伪造、逆向工程、篡改以及恶意代码执行的理想解决方案。然而,如果您只想保护嵌入式设备的软件免受逆向工程和盗版侵害,您可以选择使用 ExProtector 或 AxProtector CmE。
与集成 AxProtector CmE 或 CodeMeter API 相比,ExProtector 提供了针对嵌入式系统更深层次的集成。ExProtector 不仅保护软件,还保护整个操作系统与引导加载程序(Bootloader)。需要保护的各个层级均通过 ExProtector 进行加密并附带数字签名。为了实现最高级别的保护,一个安全锚点(Safe Anchor)是必不可少的:解密与签名验证过程将作为 ExEngine 集成到操作系统、引导加载程序或预引导加载程序(Pre-bootloader)中。
此外,通过结合使用 CodeMeter API,您可以对软件的各项独立功能分别进行授权。
ExProtector 提供以下变体版本:
-
ExProtector VxWorks 6.8 / 6.9 集成于 Wind River Workbench 中,用于加密面向 PowerPC 和 Intel 架构的 VIP(VxWorks 映像项目)、RTP(实时进程)以及 DKM(可下载内核模块)。
-
ExProtector VxWorks 7.x 用于加密面向 ARMv6 及更高版本、ARMv6HF、ARMv7HF、x86 和 x86_64 架构的 VIP(VxWorks 映像项目)、RTP(实时进程)以及 DKM(可下载内核模块)。
-
ExProtector Linux 用于加密 Linux 可执行文件与共享对象(Shared Objects)。
-
ExProtector µController 用于加密微控制器的应用程序代码。目前提供针对 Infineon XMC4500 的即用型集成方案。可应要求提供对其他平台的适配支持
工作原理
将 ExProtector 集成到您的软件中只需三个简单的步骤:
-
软件的加密与签名
使用 ExProtector,您可以对软件进行单独加密、单独签名,或者同时进行加密与签名。在所有这些情况下,均无需对源代码进行任何集成。作为持续集成(CI)的一部分,该保护机制可以作为构建后流程(post-build process)整合到自动化构建系统中。
-
ExEngine 的集成
您可以将 ExEngine 集成在调用并启动受保护软件的层级中。如果您的保护目标是软件应用程序,您应将 ExEngine 集成到操作系统中。如果您的目标是保护操作系统,则 ExEngine 应集成在引导加载程序(Bootloader)中。而为了保护引导加载程序,ExEngine 应集成在预引导加载程序(Pre-bootloader)中。为了达到最高级别的保护,建议同时在多个层级进行集成。在集成过程中,您的根公钥(Root Public Key)将被嵌入到 ExEngine 中。这是确保您的软件在嵌入式设备中保持真实性的关键步骤。ExEngine 已经内置于 VxWorks 7 中;只需一键即可激活。
-
证书的使用
您应当使用私钥对软件进行签名,以验证其真实性。证书与证书链使得分配不同的权限并在密钥泄露的情况下制定应急预案成为可能。