Python和C之间共享的配置文件格式?
我想实现一个共享的配置文件,这个文件会用Python写入(输出),但要用C语言读取(输入)。
这个配置文件唯一的要求就是不能让人看懂。
有没有人建议我应该用什么文件格式来做这个项目呢?
补充说明:这个文件不能让人看懂是因为我们不希望用户能够修改配置,而且在某些情况下,我们也不希望用户知道某些配置的内容。
4 个回答
1
可能最简单的方法是使用XML,然后用一个简单的密码或者固定密钥的加密方式来混淆它。
1
2
这个配置文件需要多安全呢?
其实没有绝对的安全性,你很快就会遇到像数字版权管理(DRM)那样的问题(比如允许用户打开一个文件,但又不让他们真正使用它……我知道这听起来很疯狂)。
通常来说,简单的混淆方法就能起到不错的效果。可以把配置文件保存为一个JSON格式的文件(请不要用XML格式)。然后对内容进行XOR
处理,并且改一下文件扩展名。这样可以阻止大部分人随便查看这个文件。显然,不要把这个混淆的过程写下来。
如果你担心用户会修改配置文件(你不在乎配置文件是否可读,只是想防止加载自定义的配置),可以使用加密签名。把私钥存放在公司里,利用它和Python程序生成一个签名的配置文件。然后把公钥放在C++应用程序里,用它来验证配置文件是否正确签名,确保设置的安全性。