如何加密ini文件中的值

时间:2008-12-22 14:33:40

标签: encryption file ini

加密INI文件中的值的最佳方法是什么?

使用加密/解密密钥??

6 个答案:

答案 0 :(得分:2)

效果如何?你想保护或混淆什么?

您可以使用适用于所有平台的众多双向密钥加密算法之一...但问问自己为什么要这样做。如果你试图做一些防黑客攻击,加密ini字符串可能不会让你那么远,因为只要你解密ini,字符串就会在内存中。解密的关键将在你的程序中。孩子玩耍要破解。

如果您只想阻止人们轻松编辑设置,请不要将其放入ini中。选择用户难以编辑的二进制格式。

答案 1 :(得分:2)

出于什么目的?安全?

如果您尝试(例如)加密明文密码,您应该使用PKI的一些实现。但请记住,密钥管理会成为您的问题。只是加密这个值并不是灵丹妙药,因为ini文件最有可能出现在本地主机的文件系统上,大概就是你需要存储密钥对的地方。你只是简单地将问题抽象出一层。他们无法直接读取您的加密密码,但如果他们能找到您存储密钥对的地方,他们可以自行解密。

答案 2 :(得分:2)

对于我有电子邮件密码的个人脚本,我使用 TinyEncryption.

我会将密钥放在代码本身中。这可以防止偶然的窥探者只是浏览并获取电子邮件密码。

代码也很简单。这是在Python中。

import random
import base64
def tinycode(key, text, reverse=False):
    "(de)crypt stuff"
    rand = random.Random(key).randrange
    if reverse:
        text = base64.b64decode(text)
    text = ''.join([chr(ord(elem)^rand(256)) for elem in text])
    if not reverse:
        text = base64.b64encode(text)
    return text

为了更加增强安全性,我使用PGP,但您必须提示输入密码。没有完美的设置,这取决于您的需求。

答案 3 :(得分:1)

您可以将任何标准加密算法与密钥一起使用,并且可以在加密前使用一些随机填充为该值加前缀。

但是,您计划在哪里存储该密钥呢?或者,您是否要让用户输入密码并从中获取密钥?如果没有那么加密该值将毫无意义。

答案 4 :(得分:0)

你还需要解密吗?如果不是,你可以salt并哈希。

如果你确实想要解密它,那么我想你也应该指定语言。

答案 5 :(得分:0)

MD5哈希

然后将hash(“password”)与ini_file.password哈希

进行比较