Sal*_*lil 6 ruby encryption ruby-on-rails
我require 'digest/sha1'用来加密我的密码并保存到数据库中.在登录期间,我通过匹配保存在数据库中的加密密码进行身份验证,并再次加密,使用输入密码字段.截至目前一切正常,但现在我想做'忘记密码'功能.为此,我需要解密保存在数据库中的密码以找到原始密码.如何解密使用digest/sha1?或者有没有人知道任何支持加密和解密的算法?
我在rails上使用ruby,所以我需要Ruby方法来完成它.
big*_*num 10
SHA1是单向函数,你不能反转它.
这可能是重要的密码重置:http: //www.binarylogic.com/2008/11/16/tutorial-reset-passwords-with-authlogic/
如果你想加密/解密,那么你应该使用像AES这样的东西.但是,一旦开始使用加密/解密,您也必须开始担心密钥管理.
关于你对以下OP的评论 - 如果你打算存储CC信息,我建议你找一个谁知道加密,密钥管理等安全人员,谁也理解相关的法律和监管方面.
不加密密码.相反,存储密码的哈希值(更好地用盐).
到忘记经由另一信道,也就是说,密码重置的电子邮件通知密码通常意味着(重新)认证.
如果您需要预先构建的东西,请观看http://railscasts.com/episodes/209-introducing-devise.
编辑:如果你真的需要加密,谷歌"openssl ruby"
从来没有一个安全工作的简单解决方案.你的实现有多好,由弱点链接决定.
所以,我的建议是,不要指望SO的简短回答;-)
| 归档时间: |
|
| 查看次数: |
10574 次 |
| 最近记录: |