Sha*_*ala 7 delphi security passwords
我需要"密码保护"我的应用程序,但需要建议安全地存储密码的位置.
我打算怎么做:
第一次运行程序时,我将提示用户创建密码.密码将被盐化并在SHA-256中进行散列,然后存储在注册表或文件中.
问题:
如果我将散列密码存储在注册表或文件(或两者)中,那么有人只需删除注册表或文件中的密钥并提示创建新密码就太容易了...
如何安全地存储哈希密码以使其更难被删除?
我已经考虑过将它存储在注册表中,并创建一个带有隐藏和系统属性的文件,以便在删除注册表文件的情况下读取,但这看起来很愚蠢,因为它也可以很容易地删除.
//我希望我用正确的标签正确地发布了这个问题 - 我是新来的,所以请放心!;)
祝一切顺利
克里斯(Shamballa)
Mas*_*ler 15
这基本上是编程道德101问题.如果您将信息存储在其他人的计算机上,请记住该计算机是他们的财产,他们有权删除或修改其上的任何文件或注册表项.试图让它们成为不可能是一个非常糟糕的主意.
这是你不能做到的一个很好的理由.如果有人开始在您的计算机上放置无法删除或修改的文件,会发生什么?根据逻辑结论推断:如果病毒开始在您的计算机上放置无法删除或修改的文件,并且在硬盘驱动器已满之前无限循环,会发生什么?你知道如果有可能,有人会尝试.
如果您希望程序在用户无法修改密码的地方存储密码,请将其放在服务器上,让程序通过Internet连接与其联系.(这是一种完全不同的蠕虫病毒,但至少你不会试图做不可能的事情或侵犯用户的基本财产权.)
您没有真正指定此密码保护的内容.我假设它用于保护程序创建的数据.
我不是安全专家或密码学家,但如果数据存储在本地,解决方案很简单.将密码(或更可能是密码的哈希值)和数据存储在同一位置(文件,数据库等)中,并使用单独的密钥加密.
这可以防止文件删除造成的干扰.他们也会删除所有数据.除了最坚定的最终用户之外,这将阻止所有人.
| 归档时间: | 
 | 
| 查看次数: | 3473 次 | 
| 最近记录: |