我想要对Python代码进行(PGP/GPG)签名。是的,我已经阅读了此文和其他许多谈论保护和混淆Python代码的网站 - 这一切都不是我想要的。我不想混淆代码。
我希望客户和用户能够看到代码,他们可以修改代码、复制它并创建派生作品,我希望将软件发布在GPLv3下。
但我希望插件是“签名”的,这样它们在执行过程中就可以被视为是有信任度的。
在Python中是否可以实现这一点?我能否在检查其GPG签名后导入一个库? 最简单的方法是:检查文件的GPG签名,然后通过import导入它,否则引发异常。但这只适用于单文件导入,而不适用于目录python模块。
显然,如果客户更改程序中的GPG密钥或自己删除检查算法中的某些行,则所有内容都会消失 - 但这不是问题。他可以做任何他想做的事情 - 但这很愚蠢。 他想要的是可信度。 我希望他能通过将第三方插件复制到“插件”目录中来添加插件,并让程序检查插件的“可信度”,然后导入它。 (因此,他可以运行未签名的插件,但风险自负。)
在Python中是否可以实现这一点?我能否在检查其GPG签名后导入一个库? 最简单的方法是:检查文件的GPG签名,然后通过import导入它,否则引发异常。但这只适用于单文件导入,而不适用于目录python模块。
显然,如果客户更改程序中的GPG密钥或自己删除检查算法中的某些行,则所有内容都会消失 - 但这不是问题。他可以做任何他想做的事情 - 但这很愚蠢。 他想要的是可信度。 我希望他能通过将第三方插件复制到“插件”目录中来添加插件,并让程序检查插件的“可信度”,然后导入它。 (因此,他可以运行未签名的插件,但风险自负。)