有没有办法隐藏或加密边缘设备的 python 代码?有什么方法可以防止python代码的逆向工程吗?



我正在尝试制作一个智能物联网设备(能够在边缘设备本身上执行智能计算机视觉操作)。深度学习算法(用python编写)在Raspberry Pi上实现。现在,在将此产品(软件 + 硬件)交付给我的客户时,我希望没有人应该登录 raspberry pi 并访问我的代码。流程应该是这样的,每当有人登录 pi 时,都应该需要输入某种键才能访问代码。但在这种情况下,操作系统将如何访问代码并运行它(没有密钥)。然后我可能不得不将密钥存储在本地。但是仍然有机会访问密钥并访问代码。我已经为我的作品申请了专利,并希望保护它。

我正在考虑加密我的代码(用 python 编写)并仅发布可执行版本。我为此尝试了pyinstaller,但不知何故,互联网上有一个脚本可以对其进行逆向工程。

现在我有点害怕,因为它可以一次性泄露我 6 个月的所有努力。请提出更好的方法。

提前谢谢。

将代码保存在服务器上并使用互联网访问是保持代码私密的唯一方法(也许)。任何类型的分布式程序最终都可以拆解。你不能(可能不应该)试图阻止人们进入他们拥有并实际拥有的设备。如果你的财产有专利,那么人们是否能够看到代码并不重要,因为只有你才能合法地从中获利。

作为一般建议,代码确实很难控制访问。尝试加密软件或对其应用软件密钥或类似的东西充其量是徒劳的尝试,最坏的情况通常会导致软件性能和可用性问题。最好的解决方案通常是将一个软件与某种必要的定制硬件设备联系起来,只有你卖。这可能在这里是不可能的,因为您使用的是通用硬件,但值得深思。

最新更新