haslib 模块

Posted wf123

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了haslib 模块相关的知识,希望对你有一定的参考价值。

一、能够把一个字符串数据类型的变量,转换成一个定长的,密文的字符串。且没一个字符串中的字符都是一个十六进制的数子。

二、对于相同的字符串,无论字符串多长,无论在什么环境下,任何语言中,使用相同的算法得出的结果都是一样的。只要不是相同的字符串,结果就是不同的。

三、常用的两种加密算法

  MD5算法  (不可逆)

  得到的结果是一个32位的字符串,且每个字符串都是一个十六进制的数字。

  效率快,相对简单。

  sha1 算法   (不可逆)

  得到一个40位的字符串,且每个字符串是一个是一个十六进制的数字。

  算法相对复杂。

  技术分享图片

  撞库

  由于MD5,sha1算法不可逆,所以有一批‘有志之士’就将好多的数字字母的组合计算出的密文值,存在一个库中。这样当截获了密文值就可以去库中匹配,如果有相同的,就查他对应的原字符串。

  因此出现了撞库,同时使得这个加密算法相对出现了些风险。

  加盐的MD5算法

  技术分享图片

  动态加盐

  对于一些用户名和密码,因为用户名是唯一的,所以将用户名作为盐,在进行加密计算,这样得出的结果的安全性将会更高。

  技术分享图片

  可以用于文件的一致性校验。

  技术分享图片

  如果文件过大,还可以按字节读取。

  完整的读完一个文件计算的MD5值和分段读完最后的MD5值是一样的。

 

以上是关于haslib 模块的主要内容,如果未能解决你的问题,请参考以下文章

rsync添加多模块,客户端推送出错!

ansible常用模块之synchronize模块

rsync通过服务同步

Linux上rsync配置

rsync服务扩展应用

rsync服务扩展应用