加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

在Perl中创建glibc 2.7样式的Sha-512隐窝哈希

发布时间:2020-12-15 22:06:47 所属栏目:大数据 来源:网络整理
导读:所以,我有一个从数据库中读取/验证(和写入)密码哈希的网站,我有一些东西可以生成SHA-512样式的密码哈希,看起来像: $6$GloHensinmyampOc$AxvlkxxXk36oDOyu8phBzbCfLn8hyWgoYNEuqNS.3dHf4JJrwlYCqha/g6pA7HJ1WwsADjWU4Qz8MfSWM2w6F. 该网站是基于java的,所以
所以,我有一个从数据库中读取/验证(和写入)密码哈希的网站,我有一些东西可以生成SHA-512样式的密码哈希,看起来像:
$6$GloHensinmyampOc$AxvlkxxXk36oDOyu8phBzbCfLn8hyWgoYNEuqNS.3dHf4JJrwlYCqha/g6pA7HJ1WwsADjWU4Qz8MfSWM2w6F.

该网站是基于java的,所以我为它写了一个SHA-512哈希.麻烦的是,有一堆perl cron作业运行,还需要偶尔验证密码哈希到数据库,并且由于那些在Solaris机箱上运行,它的crypt不支持$6 $格式.

所以,当我这样做时:

printf("crypt => '%s'n",crypt("Hello",'$1$CygnieHyitJoconf$'));

我理智地回来了:

crypt => '$1$CygnieHy$n9MlDleP0qmGCfpbnVYy11'

然而,如果我这样做

printf("crypt => '%s'n",'$6$CygnieHyitJoconf$'));

我得到了一个无益的帮助

crypt => ''

有没有办法在不使用glibc的盒子上获取Perl中的SHA-512密码哈希值? (这是我在大多数搜索时被告知的内容(“使用地穴”).

我真的不想在perl中重新实现SHA-512密码哈希.

谢谢!

解决方法

实际上,我想我刚刚找到了自己的答案: Crypt::Passwd::XS

Crypt :: Passwd :: XS – 常见crypt()算法的完整XS实现

它有unix_md5,apache_md5,unix_des,unix_sha256和unix_sha512 ..我猜它有点不幸,它不会做河豚.但是,它解决了我的问题!不管怎样,谢谢@hobbs!

use strict;
use Crypt::Passwd::XS;

{
        printf("crypt => %sn",Crypt::Passwd::XS::crypt("Hello",'$6$CygnieHyitJoconf$'));
}

现在回来了

crypt => $6$CygnieHyitJoconf$vkGJm.nLrFhyWHhNTvOh9fH/k7y6k.8ed.N7TqwT93hPMPfAOUsrRiO3MmQB5xTm1XDCVlW2zwyzU48epp8pY/

如预期!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读