Lit*_*per 4 delphi passwords delphi-7
我想创建一个多用户应用程序,但我不知道如何保存和读取加密密码.
procedure SavePass(Password: WideString);
var
Pass: TIniFile;
begin
Pass := TIniFile.Create(ChangeFileExt(Application.ExeName, '.PASS'));
Pass.WriteString('Users', 'USERNAME', Password);
Pass.Free;
Run Code Online (Sandbox Code Playgroud)
密码必须存储在计算机上.这有效,但使用它来保存密码是愚蠢的.散列密码也很好.
如果连接软件接受散列密码,则不会阻止窃取散列密码的人员进行连接.它所要做的只是隐藏真实密码.
此外,如果您连接的软件不接受散列密码(数据库,网站等),您将必须以这样的方式存储您的密码,以便您可以将其恢复到原始状态.哈希版本不会帮助你.
如果你想扰乱你的存储,以便人类无法读取文件,你可以使用Windows.EncryptFile()
和Windows.DecryptFile()
.在新德尔福是一个的整齐包裹成IoUtils.TFile.Encrypt()
和IoUtils.TFile.Decrypt
.
如果你真的想阻止其他人阅读密码的明文版本,那么你将不得不使用密钥进行一些加密.那么你存储那个密钥在哪里?这将首先打败存储密码的全部目的.例如,通过使用文件系统的用户权限来防止其他用户访问会更好,因为您或您的软件可以执行任何操作,如果他具有相同的权限,则"黑客"可以执行此操作.
归档时间: |
|
查看次数: |
2819 次 |
最近记录: |