Delphi – 认证机制建议
这个问题只有教育目的.此时我正在制作一个小应用程序,我希望在其中包含一个身份验证机制.应用程序在安装时应该可以访问Internet,但是可以脱机工作.到目前为止,我一直在考虑以下解决方案:
1)经典:发送到身份验证Web服务的用户名和密码(加密) – Internet连接断开时出现问题. 另外,我想要包含一个“记住密码”复选框.这是最安全的方法吗?我应该在哪里存储这些信息? 我相信你们大多数人已经建立了一个或多或少复杂的认证机制,我在征求你的意见.此外,我知道一切都可以被黑客攻击,但我想尽可能地让它变得困难. 解决方法
不要重新发明轮子!
一些规则: >身份验证必须是每个用户; 为简单起见,服务器为客户端创建“挑战”. 典型的实现可以是: >客户端连接到服务器,说出其用户名; 您可以使用良好的散列算法创建挑战(请参阅our very fast SHA-256 functions),并按照以下步骤操作: >用户输入其初始密码,然后将SHA-256发送到服务器(通过固定私钥加密,例如);>服务器存储用户名/密码哈希作为键/值;>服务器通过创建随机块(使用一些随机数据的SHA-256,包括当前时间和其他随机化随机值……)来创建挑战;>客户端使用刚刚输入的密码的哈希值对此随机块(从服务器接收)进行哈希处理;>服务器从客户端接收结果,使用存储的用户密码哈希值计算自己的版本,并比较两个值:如果两个值相同,则challenge成功. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |