安企神电脑监控软件 在线试用
扫码咨询客服
安企神电脑监控软件、局域网监控软件
首页
功能介绍
产品简介
下载中心
帮助中心
客户列表
关于安企神

使用MD5变换算法来防止穷举破译密码(一)

更新时间:2022-10-28 15:42:20


本文简介:MD5是在Web应用程序中最常用的密码加密算法。由于MD5是不可逆的,因而经过MD5计算得到后的密文,不能通过逆向算法得到原文。回顾在Web应用程序中使用MD5加密文本密码的初衷,就是为了防止数据库中保存的密码不幸泄露后被直接获得。但攻击者不但拥有数据量巨大的密码字典,而且建立了很多MD5原文/密文对照数据库,能快速地找到常用密码的MD5密文,是破译MD5密文的高效途径。然而,MD5密文数据库所使

使用MD5变换算法来防止穷举破译密码(一)

MD5是在Web应用程序中最常用的密码加密算法。由于MD5是不可逆的,因而经过MD5计算得到后的密文,不能通过逆向算法得到原文。

回顾在Web应用程序中使用MD5加密文本密码的初衷,就是为了防止数据库中保存的密码不幸泄露后被直接获得。但攻击者不但拥有数据量巨大的密码字典,而且建立了很多MD5原文/密文对照数据库,能快速地找到常用密码的MD5密文,是破译MD5密文的高效途径。然而,MD5密文数据库所使用的是最常规的MD5加密算法:原文-->MD5-->密文。因此,我们可以使用变换的MD5算法,使现成的MD5密文数据库无所作为。

下面演示一些变换算法的例子,当然,在其它的Web开发语言中,也大同小异,完全能得到相同的结果。

变换一:循环MD5

最容易理解的变换就是对一个密码进行多次的MD5运算。自定义一个函数,它接受$data和$times两个形参,第一个是要加密的密码,第二个是重复加密的次数。实现这种变换有两种算法:

//迭代算法

function md5_1_1($data, $times = 32)

{

//循环使用MD5

for ($i = 0; $i < $times; $i++) {   $data = md5($data);   }   return $data;   }   //递归算法   function md5_1_2($data, $times = 32)   {   if ($times > 0) {

$data = md5($data);

$times--;

return md5_1_2($data, $times); //实现递归

} else {

return $data;

}

}

?>

变换二:密文分割MD5

尽管用户的密码是不确定的字符串,但是只要经过一次MD5运算后,就会得到一个由32个字符组成的字符串,这时可以再针对这个定长字符串变换。有点BT的算法是,把这段密文分割成若干段,对每段都进行一次MD5运算,然后把这堆密文连成一个超长的字符串,最后再进行一次MD5运算,得到仍然是长度为32位的密文。

//把密文分割成两段,每段16个字符

function md5_2_1($data)

{

//先把密码加密成长度为32字符的密文

$data = md5($data);

//把密码分割成两段

$left = substr($data, 0, 16);

$right = substr($data, 16, 16);

//分别加密后再合并

$data = md5($left).md5($right);

//最后把长字串再加密一次,成为32字符密文

return md5($data);

}

//把密文分割成32段,每段1个字符

function md5_2_2($data)

{

$data = md5($data);

//循环地截取密文中的每个字符并进行加密、连接

for ($i = 0; $i < 32; $i++) {   $data .= md5($data{$i});   }   //这时$data长度为1024个字符,再进行一次MD5运算   return md5($data);   }   ?>

当然,这种密文分割的具体算法是数之不尽的,比如可以把原密文分割成16段每段两字符、8段每段4字符,或者每一段的字符数不相等……

立即下载试用

如何规范员工的电脑使用习惯?

互联网信息时代,各种信息随手可及,各种工具软件随意下载安装,特别是各种挂码和捆绑技术下,电脑上一不小心就会被安装上各种小程序或者全家桶。这给企业管理和业务开展上带来严重的安全隐患。

这个时个候,我们就需要禁止电脑安装软件、限制电脑安装程序的功能。这样做的好处:一方面可以防止因为私自安装软件、过多安装软件而导致的电脑运行速度下降、遭遇病毒木马入侵的风险;另一方面,通过禁止计算机安装软件也可以防止员工安装一些与工作无关的应用软件,如P2P下载软件、网络电视播放软件以及其他一些娱乐或用于处理私人事务的软件,从而引导员工合理上网,提升员工工作效率等。

通过安企神软件的桌面管理模块,就可以禁止终端安装软件,勾选后,终端无法安装新软件。安企神软件使用的分析安装包检测算法对安装包的识别率可达 90%以上。

另外,通过安企神软件的软件管控功能,你可以禁止终端计算机运行指定的软件,

比如:游戏软件、炒股软件、视频软件等。也可以设置软件白名单,安企神软件会自动分析windows操作系统必须的服务和进程,提供了默认安全模板,在此基础上,你可以自定义添加允许终端计算机运行指定的软件。支持给客户端按分组下发管控策略;在软件管控策略生效时间页面,可以设置生效时间,全天还是自定义时间段。比如如果你只希望策略在工作时间段生效,点击自定义时间段,最多可以设置 3 个自定义时间段。

通过安企神软件系统提供的丰富功能设置,就可以完整的规范员工的电脑使用习惯。


本文为收集整理,文章部分观点不代表本站观点,如有侵权或其它问题请反馈客服。https://www.wgj7.com/cjwt/16189.html