我们的应用程序使用库securehash对象来创建单向密码:https://github.com/nremond/pbkdf2-scala/blob/master/src/main/scala/io/github/nremond/securehash.scala现在我的问题是我在go中的代码返回-1进行密码检查。packagemainimport("bytes""crypto/rand""crypto/sha512""fmt""
2024-02-06评论:访问次数:606
不能,因为root密码都是密文存储的,而密码设计的一个目标就是反推解密出来的可能性尽量小。linux的用户密码存放在“/etc/shadow”文件中;密码采用的是SHA512散列加密算法,其加密等级更高,也更加安全。
2023-03-30评论:0访问次数:4391
我目前在/etc/shadow文件中的密码格式类似于$6$icnb6xpt8xjwc$ai9rq5hqpep.juts/tubhk/oi7so/s1aa.ihgbjhn12qmt5p44x5or86pso9/opbo4cmo0at4xumc0ycapo87/(sha512加密密码)。我需要做的是验证密码(用户提供的密码和当前的哈希密码)。我正在go上实现这个。我试图实现这一目标的方法是,获取用户提供的密码,使用与/etc/shadow中相同的盐对其进行哈希处理,并检查它们是否相似或不同。
2024-02-08评论:0访问次数:465
哈希(Hash)指的是将任意长度的二进制串映射为固定长度的二进制串的一种方法,该映射规则就是哈希算法,也称为散列算法。哈希算法经常被用来加密、检验数据完整性以及散列表查找等应用中。Go语言(golang)提供了标准库中的hash包,该包提供了多种哈希算法的实现,包括如下:- MD5、SHA1、SHA256、SHA512等基础哈希算法- CRC32、Adler32等校验和算法-
2023-05-16评论:0访问次数:577