首页  >  问答  >  正文

请问ruby中如何对字符串进行sha256加密

我的代码是这样的

#sha256加密
if arg_0 == "sha256" && arg_1 == "en"
then enc = OpenSSL::Digest::SHA256.digest(arg_2)
p File.join(enc)
puts File.join(enc)
puts File.join(enc).to_i(16)
puts enc.to_i(16)
end

请问为什么输出是这样的

G:Ruby_pojpoj_1>ruby sha256.rb sha en admin
"x8CivxE5xB5Ax04x15xBDxE9bxBDMxEEx15xDFxB1gxA9xC8sxFCKxB8xA8x
1Fo*xB4HxA9x18"
�iv��A��M���g��s�K��o*�H�
0
0

我实际想要是结果是这种

8c6976e5b5410415bde908bd4dee15dfb167a9c873fc4bb8a81f6f2ab448a918

请问应该怎么写?

高洛峰高洛峰2758 天前1106

全部回复(1)我来回复

  • ringa_lee

    ringa_lee2017-04-24 16:02:37

    是ruby吗?感觉语法不是很像

    如果是ruby的话,用irb尝试如下代码

    require 'digest'
    Digest::SHA256.hexdigest 'message' 

    请参考 http://ruby-doc.org/stdlib-2.1.0/libdoc/digest/rdoc/Digest.html

    回复
    0
  • 取消回复