Protection Suite - AxProtector Python
AxProtector Python 是一款易于使用的自动化加密工具,用于保护 Python 应用程序免受逆向工程的侵害。 选择您要保护的文件,AxProtector Python 会通过以下三种方式之一为您加密:
- 您可以使用默认添加的许可证来验证加密的 Python 应用程序(基本配置)
- 您可以使用模块化加密保护功能来加密Python 应用程序,允许用户激活单个功能(自定义许可)
- 您可以使用 AxProtector来加密Python程序来抵御逆向工程,无需任何形式的许可(IP 保护模式)
为了获得更强大的安全性,AxProtector Python 可以使用单独的方法加密您的 Python 应用程序,这些方法仅在受保护的环境中以及使用时运行时才进行解密和处理。这意味着原始 Python 代码在计算机内存中短暂停留。
为了进一步提高保护级别,AxProtector 可以将加密代码移动到 CmDongle 上执行(代码移植)。
基本配置
AxProtector Python 的基本功能是在 Python 应用程序中保护代码以及加入许可。 它通过使用开发人员定义的许可信息来加密应用程序的所有方法。然后将这些方法设置为在运行时自动解密。
如果用户拥有所需的许可信息,这些方法会即时解密;在其他情况下将报错。应用程序的核心功能不进行加密是一种很好的做法,以便它可以捕获并响应许可证异常,例如带有自定义错误消息。
动态加密方法对应用程序的性能影响很小。在少数情况下,排除掉特定的加密方式可以提高运行性能。
自定义许可
对于自定义许可,可以为 Python 应用程序的不同功能分配不同的许可。
用户可以仅仅购买选定功能的许可。 当访问购买的功能时,有两种方式实现。 第一个是应用程序可以像在平时的基本加密中一样,在缺少许可证时捕获没有许可的异常; 第二种方式是使用 API 来验证给定功能 (check_license)是否有许可权限,如果没有权限,则不允许使用该功能。
IP Protection 模式
IP Protection模式是在考虑到软件免费或者免费增值的情况下使用的,它与许可完美结合融为一体。 与基本的加密配置相比,加密的程序无需 CodeMeter许可证。解密所需的密钥安全地隐藏在应用程序本身中。该应用程序可以随时运行。
对于免费增值模式,这种 IP Protection模式可以与单独的许可相结合:相关应用程序的部分在 IP 保护模式下加密并始终可用; 其他部分与许可绑定,只有拥有正确许可的用户才能使用。API 可用于检查功能是否可用 (check_license)。
代码移植
为了增加安全性,机器中运行的代码可以在拥有CmDongle的情况下安全执行。为此,应用程序中特别敏感的部分被转换为 C 源文件,该文件在加密期间进行编译,并作为二进制加密 blob 安全存储在受保护的 Python 应用程序中。
在运行时,这个部分通过 API (execute_moved_code) 访问。加密代码移植到CmDongle的智能卡芯片中,在那里使用给定的参数对其进行解密和执行。输出将作为对 API 调用的响应传送回主系统。