Centos系统下载大全 | Redhat系统下载大全 | Windows2012系统下载大全 | Windows2008系统下载大全| CMS教程 | 网站地图 51运维网-专注Linux/Unix系统安全运维!
当前位置:51运维网 > 教程 > Linux教程 > 正文

Linux基础知识十七 Linux 的加密机

时间:2014-05-31 00:10 来源:未知 作者:www.51ou.com 阅读:

首先查看 /etc/shadow文件,来观察加密后的密码结构:

wKioL1NYgzeAmv3nAAElqp9Ie1I545.jpg

$加密方法$ 8位随机数$加密后的密码串

 

不同的加密方法决定了加密后的密码串的特性,使用以下命令查看可用的加密方法:

# man 3 crpt

wKiom1NYg3axafwhAACjiur-UfI599.jpg

 

目前使用的加密方式主要有以下几类:

1.对称加密

使用对称加密,加密和解密都使用同一个密钥,其特点是速度快,常用的方式为:3DES(Data Encrypt Standard),该方法采用56位密钥,其中3表示运行三轮;AES(Advanced Encrypt Standard),采用变长密钥。

对称加密的缺陷在于密钥的管理及分发比较困难。

 

2.公钥加密

公钥加密也叫非对称加密,即采用 私钥/公钥 (S/P)--> (security/public) 的加密方。其中私钥加密的文件只能用与之对应的公钥解密,反之亦然。但是公钥可以从私钥中提取出来,因此有私钥,则可以推测出公钥;反之则不行。

公钥加密的特点是加密速度慢,但是安全性高。它通常用于密钥的分发,主要采用的算法有RSA和DSA。

 

3.单向加密

单向加密只能加密,不能解密。它是hash算法的一种。主要用于提取数据的特征码,其特征为:

a)无论是输入多大的数据,其输出是定长的。

b)如果输入的数据一样,结果必然一样,反之,输入的数据有微小的改变,将引起输出的巨大变化,通常称为“蝴蝶效应”和“雪崩效应”。单向加密这些特征可以避免加密串被反向推断。

 

例如我们可以进行以下操作来演示微小的改变采用单向加密后,会引起结果的巨大变化:

# cp /var/log/messages ./          

# md5sum messages            // 采用md5的方式为文件messages 加密

# nano messages               // 在messages 中的增加一个字母

# md5sum messages        // 再次对文件messages加密以观察输出结果

wKiom1NYg_GjxDp8AAOenAIFFw8919.jpg

 

单向加密采用的算法有如下几种:

md5 (Message Digest):        输出定长为128bit的加密串

SHA (Secure Hash Algorithm):  

sha1:               输出定长为160bits的加密串

sha-256: 256bits:     输出定长为256bits的加密串

sha-512: 512bits:    输出定长为512bits的加密串

 

根据单向加密的特性——只能加密不能解密,因此在验证密码是否正确时,采用的做法是再次对数据进行加密,如果加密结果一致,则密码正确。

这样的加密方式会产生一个安全隐患,即两个人用了相同的密码,则可能产生相同的加密串。

为了避免这样的情况出现,需要引入一个新的机制:salt(盐),即8位随机数。具体的操作是每次加密时,都添加8位的随机数,由于“蝴蝶效应”/“雪崩效应”的存在,8位随机数可以使密码串产生巨大的变化。

例如我们可以为用户hbase 和 redis都设定相同的密码123,来比较二者的加密结果:

# tail /etc/shadow

# passwd mongodb

# passwd redis

# tail /etc/shadow

wKioL1NYg97DBKn2AASEQ4vvcig976.jpg

 

上述例子我们可以看到8位随机数在单向加密中的作用。事实上,我们可以自行指定salt,如果两个密码8位随机数相同,密码也相同,则加密串会完全一致。例如为文件messages加密时指定随机数:

# openssl passwd -1 -salt 12345678 messages

# openssl passwd -1 -salt 12345678 messages

# openssl passwd -1 -salt 12345698 messages

此例子可以看出随机数设定一致,则加密串一致,随机数细微改变,可以完全改变加密串的结果。

wKioL1NYg_rwnnGhAAO9z0sslwg177.jpg

 

本文出自 “重剑无锋 大巧不工” 博客,请务必保留此出处http://wuyelan.blog.51cto.com/6118147/1401600

感谢您对【51运维网 http://www.51ou.com/】的支持,我们为您免费提供《Linux基础知识十七 Linux 的加密机》技术文章,《Linux基础知识十七 Linux 的加密机》详细使用和说明,有时《Linux基础知识十七 Linux 的加密机》可能不完善、敬请谅解!如果《Linux基础知识十七 Linux 的加密机》有错误请给我们留言,我们将尽快修复文章错误,如果您觉得本站不错,请分享给周围的朋友!谢谢!

顶一下
(0)
0%
踩一下
(0)
0%
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
验证码:点击我更换图片