【问题标题】:Encrypt a string with a password in ruby在 ruby​​ 中使用密码加密字符串
【发布时间】:2014-03-19 17:15:32
【问题描述】:

我想从用户那里获取一些输入并使用密码对其进行加密。例如,用户给我:

String: 'Whackabad'
Password 'Holycrap'

我想存储他们的字符串,加密,但是当用户输入他们的密码时能够再次解密字符串。实现这一目标的最佳方法是什么?

【问题讨论】:

    标签: ruby encryption


    【解决方案1】:

    您可以使用encrypted_strings gem:

    data = 'Whackabad'
    password = 'Holycrap'
    encrypted = data.encrypt(:symmetric, :algorithm => 'des-ecb', :password => password) 
    # => "N6gLAAL9d9lRjHUbh54Ctw==\n"
    
    encrypted.decrypt(:symmetric, :algorithm => 'des-ecb', :password => password) 
    # => "Whackabad"
    

    此解决方案不会在任何地方加密或存储密码 - 它会加密数据,只有知道密码的人才能解密数据。 p>

    如果您不希望任何人(包括网站管理员)在没有正确密码的情况下解密数据,这是一个很好的解决方案。

    【讨论】:

      【解决方案2】:

      使用devise。这是一个完整的身份验证解决方案。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-03-10
        • 1970-01-01
        • 2015-07-31
        • 1970-01-01
        • 1970-01-01
        • 2017-08-04
        相关资源
        最近更新 更多