Tensorrt导出engine文件加密(Windows&C++版)

扯皮的话:为了优化模型的inference,TensorRT会根据网络的定义执行优化包括特定平台的优化并生成inference engine。此过程被称为构建阶段,尤其是在嵌入式平台上会消耗大量的时间,因此,一个典型的应用程序只会被构建一次engine,然后将其序列化为plane file以供后续使用。需要注意的是:生成的plane file 不能跨平台或TensorRT 版本移植。另外,因为plane file是明确指定GPU 的model,所以我们要想使用不同的GPU来运行plane file必须得重新指定GPU。目前,人工智能越来越普遍,导致各种模型都需要进行落地应用。高效率的部署方式即通过Tensorrt进行部署,但通过该框架导出的engine文件却本身不具有加密性质,即可通过打印等方式得到该engine文件各种内容,从而导致商业秘密泄露。为此,本文将专门通过一个非常简单的小技巧将我们的engine文件进行加密,从而即使有技术人员拿到engine文件也不可能对其中的内容进行破解,从而保护商业机密。


engine文件:.engine 是 TensorRT 运行时引擎文件的扩展名。生成的 .engine 文件是针对特定硬件平台和优化配置的二进制文件,其中包含了高度优化的模型表示。请注意,我想说的是:

你可能感兴趣的:(原生C++开发(VS,Qt,CUDA),c++,tensorrt,加密,Windows)