【发布时间】:2010-10-14 16:09:44
【问题描述】:
我需要“密码保护”我的应用程序,但需要有关在何处安全存储密码的建议。
我打算如何做到这一点:
程序第一次运行时,我会提示用户创建密码。密码将在 SHA-256 中加盐和散列,然后存储在注册表或文件中。
问题:
如果我将散列密码存储在注册表或文件(或两者)中,那么某人只需删除注册表或文件中的密钥并提示创建新密码就太容易了...
如何安全地存储散列密码,使其更难被删除?
我曾考虑将其存储在注册表中,并创建一个具有隐藏和系统属性的文件,以便在删除注册表文件时从中读取,但这似乎很愚蠢,因为它也可以很容易地删除。
// 我希望我已经用正确的标签正确地发布了这个问题 - 我是新来的,所以请放轻松! ;)
一切顺利
克里斯(香巴拉)
【问题讨论】:
-
你在防御谁/什么?
-
为什么您的用户应该能够一开始就提供密码,然后再也不会?
-
SLaks... 我需要确保除了创建密码的人之外没有人可以访问该程序。
-
codymanix... 创建密码后,用户可以登录程序并根据需要多次更改密码。我只需要想办法让密码不容易被删除。
-
@Shamballa:这是他们的责任,不是你的。如果程序在计算机本身上(不在您的服务器上运行并且通过网络连接访问),那么您无法做任何事情来阻止拥有计算机的坚定用户访问它。你可以用一些技巧让他慢一点,但就是这样。