gpt4 book ai didi

ruby - 如何将十六进制字符串转换回二进制 'SecureRandom.random_bytes'?

转载 作者:太空宇宙 更新时间:2023-11-03 17:30:30 24 4
gpt4 key购买 nike

在 Ruby 中,我可以创建一个 16 字节二进制并将其转换为十六进制字符串:

key     = SecureRandom.random_bytes(16)                    # => "hN\xDB\xAD\xAF\xB3R\xC0`\xB19\x1D\x19.\xD3I"
hex_key = key.each_byte.map { |byte| '%02x' % byte }.join # => "684edbadafb352c060b1391d192ed349"

在 PHP 和 Javascript 中,我可以将十六进制字符串转换回它的 16 字节二进制。

PHP:

<?php
hex2bin("684edbadafb352c060b1391d192ed349");
?>

Javascript via CryptoJS :

CryptoJS.enc.Hex.parse("684edbadafb352c060b1391d192ed349");

但是如何使用 Ruby 将十六进制字符串转换回它的 16 字节二进制?

最佳答案

这是您要找的吗?

[str].pack('H*').bytes.to_a

或者只是

[str].pack('H*')

关于ruby - 如何将十六进制字符串转换回二进制 'SecureRandom.random_bytes'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40139949/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com