shadow加密方式
Ⅰ python hashlib.sha512 为什么加密结果和shadow不一样
python的话直接使用crypt就行计算的时候要加上salt值。
cat /etc/shadow | greb root
得到密文。密文由3部分组成,以”$”分隔,第一部分为ID,第二部分为盐值,第三部分为加密密文
密文示例:
$6$D0xsORq3b7GGsbYv$7L8myKFcJf1FqnvtzD.Zcbx9PeHnwGH1YJm/
$id$salt$encrypted
采用方法盐值加密密文
$6$D0xsORq3b7GGsbYv #这一段就是盐值,在加密的时候连同前面的ID一起加密
importcrypt
printcrypt.crpyt("password","$6$D0xsORq3b7GGsbYv")
就可以得到shadow中的密文了。
其实shadow中的密文并不是直接由sha512得出的,还有一些其他操作,例如使用base64加密了salt和hash,可以看下这里man page
Ⅱ linux中shadow文件里的"!!" 表示什么意思
以下为干货。
shadow文件中第二列的格式,它是加密后的密码,它有些玄机,不同的特殊字符表示特殊的意义:
①.该列留空,即"::",表示该用户没有密码。
②.该列为"!",即":!:",表示该用户被锁,被锁将无法登陆,但是可能其他的登录方式是不受限制的,如ssh公钥认证的方式,su的方式。
③.该列为"*",即":*:",也表示该用户被锁,和"!"效果是一样的。
④.该列以"!"或"!!"开头,则也表示该用户被锁。
⑤.该列为"!!",即":!!:",表示该用户从来没设置过密码。
⑥.如果格式为"$id$salt$hashed",则表示该用户密码正常。其中$id$的id表示密码的加密算法,$1$表示使用MD5算法,$2a$表示使用Blowfish算法,"$2y$"是另一算法长度的Blowfish,"$5$"表示SHA-256算法,而"$6$"表示SHA-512算法,目前基本上都使用sha-512算法的,但无论是md5还是sha-256都仍然支持。$salt$是加密时使用的salt,hashed才是真正的密码部分。
Ⅲ /etc/shadow保存用户的什么信息
/etc/shadow 文件,用于存储Linux系统中用户的密码信息,又称为“影子文件”。
由于/etc/passwd文件允许所有用户读取,易导致用户密码泄露,因此 Linux 系统将用户的密码信息从 /etc/passwd 文件中分离出来,并单独放到了此文件中。
/etc/shadow 文件只有 root 用户拥有读权限,其他用户没有任何权限,这样就保证了用户密码的安全性。
(3)shadow加密方式扩展阅读
影子文件的内容:
1、用户名。
2、加密密码(*或者!!表示该用户没有密码,或者在某个用户前面加上!让其密码失效,让该用户无法登录)。
3、最后修改时间(以时间戳的形式,以1970年1月1日为起始日期,时间单位为/天)。
4、修改密码的间隔时间(距离上一次修改密码间隔多少天才能修改,单位/天)。
5、密码的有效期,默认99999天,可以更改。
6、密码提醒时间(表示在密码失效时间的前面几天提示更改密码,以密码失效时间的最后几天开始算,单位天)失效后禁止登录。
7、密码宽限时间(密码过期后几天仍然可以使用并且提示更改密码,单位天)过了这个时间后禁止登录(0或者没有表示没有宽限时间,-1表示永久生效)。
8、账号失效时间,时间戳为单位。没填表示永久生效。
Ⅳ 【悬赏】shadow文件加密算法
这个你首先要清楚这个加密的方法
linux用户验证加密中引入了一个叫作salt的东西
这个东西是一个随机数,在添加用户时随机生成
然后根据这个随机生成的salt与设置的密码进行某种算法最终得出最后的密文
最终密码大概是这样的
$id$salt$encode
这里id的数字表示使用什么样的方法生成密文
在linux下通过man crypt函数可以看到这个id
ID | Method
─────────────────────────────────────────────────────────
1 | MD5
2a | Blowfish (not in mainline glibc; added in some
| Linux distributions)
5 | SHA-256 (since glibc 2.7)
6 | SHA-512 (since glibc 2.7)
这是我man复制后的结果(不知道会不会乱掉= =)
所以按着这个表可以看出你的这个使用的加密算法为sha-512(id为6)
这个密码生成可以使用crypt函数完成,第一个参数为你设置的密码123456
第二个参数为$6$BRjbojm3ZjL.GPSV
生成的结果就会是你帖出来的这个密文
一般现在网页提供的那种md5之流反查(破解)的东西基本上都是在后台拥有大量数据的
查询的时候通过你提交的字符串与数据库中的数据进行对比然后找出存在于数据库中的“原文”
如果无法在数据库中匹配到提交的字符串自然就无法破解了(当然可能有些网站也会提供暴力破解,根据我上面说的,写一个暴破的工具很容易的)
而这种数据库多数是使用一些常见的字符串(比如弱密码等)生成放入数据库的,但就像上面所说的那样
linux用户验证所生成的密码是用一个随机生成的salt作为key进行加密生成的,这样即使你两个用户使用同样的密码那生成的密文也是不同的(当然如果生成的随机字符串刚好相同的话,当我没说),所以除非暴力破解,否则这个所谓的在线破解是无法破解linux这个密文密码的
至于说网页会提示无法识别是因为有些网站会根据你提交的字符串进行一些判断
比如判断它是md5加密还是sha等,就像我上面所说的那样,它无法通过数据库这种方式破解,所以无法识别(当然如果有支持暴力破解并支持linux验证破解的话另说)
Ⅳ 有谁知道LINUX保存密码的shadow文件是用什么加密
md5sum
他就是一种哈希(Hash 到音译)到散列、杂凑算法。因为 MD5 已经被有效碰撞,所以有的系统已经改成了 sha 系列(好像是 sha256sum )。
这种算法都是一种不可逆的算法,他是根据算法,计算出给出数据的“特征”。这种特征不可以逆运算,因为他会丢失数据信息,但不同的数据会有不同的“特征”结果,不同数据出现相同“特征”结果的概率决定这个算法的安全。
最简单的杂凑算法应该就是 CRC 了,他就是一个位的异或计算。
Ⅵ linux中 group和group- shadow和shadow-有什么区别
1、/etc/passwd包含用户信息
2、/etc/shadow包含passwd里面用户对应的密码
3、/etc/group包含组信息
4、/etc/gshadow包含组加密信息
5、*-应该是相应文件的备份,如果误操作可用此文件恢复:
/etc/passwd-
/etc/group-
/etc/shadow-
/etc/gshadow-
6、diff
group
group-看两个文件的区别。
Ⅶ shadowsocks代理的设置教程
Shadowsocks 是新一代加密通讯软件服务,通过Web形式传输加密信息,用户可自行选择加密方式以及请求。科学地使用Shadowsocks代理,就能访问国外网站,查阅资料,扩大知识面。
7/7
再次右键点击小飞机,点击“服务器”,选择刚刚设置的服务器就可以了。
Ⅷ linux怎么看shadow文件里的密码怎么看
然后你要检查弱口令,
/etc/shadow里面储存的口令是通过crypt函数加密的,
这个工具是使用字典文件进行一定的组合然后尝试破解密码,
如果可以破解出密码,cVegeY
Ⅸ 数据库加密有几种
mysql数据库的认证密码有两种方式,
mysql
4.1版本之前是mysql323加密,mysql
4.1和之后的版本都是mysqlsha1加密,
mysql数据库中自带old_password(str)和password(str)函数,它们均可以在mysql数据库里进行查询,前者是mysql323加密,后者是mysqlsha1方式加密。
(1)以mysql323方式加密
select old_password('111111');
(2)以mysqlsha1方式加密
select
password('111111');
mysql323加密中生成的是16位字符串,而在mysqlsha1中生存的是41位字符串,其中*是不加入实际的密码运算中,通过观察在很多用户中都携带了"*",在实际破解过程中去掉"*",也就是说mysqlsha1加密的密码的实际位数是40位。