gpt4 book ai didi

perl - perl 中的 SHA256 摘要

转载 作者:行者123 更新时间:2023-12-03 19:47:35 25 4
gpt4 key购买 nike

我需要对电子邮件地址进行 SHA256 散列,并且需要将结果作为字符串。

我尝试了以下方法:

  use Digest::SHA qw(sha256);
my $data = 'swaranga@gmail.com';
my $digest = sha256($data);

print $digest;

但它打印出如下内容:
B/D6i1μû^Þ©Q;¢Þ

我需要如下输出:
cbc41284e23c8c7ed98f589b6d6ebfd6

上面的哈希是使用 Apache DigestUtils 的 SHA256 生成器生成的.

我究竟做错了什么?我是 perl 的新手,所以如果它是愚蠢的,请原谅。

谢谢。

最佳答案

cbc41284e23c8c7ed98f589b6d6ebfd6 MD5 swaranga@gmail.com ,不是 SHA-256

上海 swaranga@gmail.com 的加密>>

 SHA-1:            3a3be7013e297e28d24979aadc4ae75d84ce0844
SHA-256: 0947300f280d422f4418366931cebcfbd17f5ede1507a951153b0f15a21c10de
SHA-384: 34c01f3956aac32aacae1a6cf67f8a66d441af06c9d36f580ce4be5b234b5399cd879231c49db5bec269309582c19432
SHA-512: db1aa053dd9ee191b091abbcb8bead2ec69a1ab2664bb1deeeedbdb49b25e7bc7680a7659ae88c046afdabf1e35ed0e068763f8754b369bfade69cf21f65d166
SHA-1 (Base64): OjvnAT4pfijSSXmq3ErnXYTOCEQ=
SHA-256 (Base64): CUcwDygNQi9EGDZpMc68+9F/Xt4VB6lRFTsPFaIcEN4=
SHA-384 (Base64): NMAfOVaqwyqsrhps9n+KZtRBrwbJ029YDOS+WyNLU5nNh5IxxJ21vsJpMJWCwZQy
SHA-512 (Base64): 2xqgU92e4ZGwkau8uL6tLsaaGrJmS7He7u29tJsl57x2gKdlmuiMBGr9q/HjXtDgaHY/h1Szab+t5pzyH2XRZg==

如果您确定要使用 SHA-256 而您正在寻找 十六进制 输出,然后试试这个:

脚本:
#!/usr/bin/perl
use Digest::SHA qw(sha256);
print unpack("H*", sha256('swaranga@gmail.com')), "\n";

或者
#!/usr/bin/perl
use Digest::SHA qw(sha256_hex);
print sha256_hex('swaranga@gmail.com'), "\n";

输出:
0947300f280d422f4418366931cebcfbd17f5ede1507a951153b0f15a21c10de

如果你想要 MD5 十六进制 输出,然后试试这个:

脚本:
#!/usr/bin/perl
use Digest::MD5 qw(md5);
print unpack("H*", md5('swaranga@gmail.com')), "\n";

或者
#!/usr/bin/perl
use Digest::MD5 qw(md5_hex);
print md5_hex('swaranga@gmail.com'), "\n";

输出:
cbc41284e23c8c7ed98f589b6d6ebfd6

关于perl - perl 中的 SHA256 摘要,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9991757/

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