前两天我打开邮箱一看。收到公司1331一封要求改动邮箱password的邮件。

为什么我们须要一个复杂的password呢?尽管我一直以来设置的password都非常复杂。可是公司这次要求改动password的邮件激发起我的好奇心,我想试试到底什么样的password才算安全?

常见password破解方式有两种。一种是字典式破解,一种是暴力破解。曾经电脑处理器速度较慢,内存也非常小,因此为了加快破解速度,黑客经常使用字典式破解。所谓字典式破解就是首先将经常使用的password、英文单词、中文拼音等存储在一个文本文件中,然后採用程序挨个測试。一旦通过则停止。常见的password有admin、1234、pass1234、password、888888、518518等等。

比如有人将银行卡password设为“888888”或者“999999”等所谓吉祥的数字组合。假设有人盗了你的银行卡,去ATM机測试几次。非常快就能将您银行卡里的金额所有转走。

第二种是暴力破解。

当字典式破解不成功后,黑客就会採用暴力破解。

所谓暴力破解就是将数字、字母等各种进行穷举。挨个測试。与字典式破解不同的是。暴力破解的数据量通常相当大。

以8位纯数字password为例,暴力破解的数据量达到1080,即一亿组password。而包括数字和字母组合的。暴力破解的数据量达到368。大约2.8万亿组password,而假设是区分大写和小写字母的password组合则达到628组。大约218万亿组password。

password每添加一位。password组合则曾几何级数增长。

近期在船上时间比較多。于是我用Ruby写了一小段程序。模拟了一下password破解所须要的时间。我測试程序所用的笔记本处理器是Intel Core i5 2.4GHz,内存为8G 1600MHz。为了模拟真实的使用环境,我的測试方法是首先随机生成一个纯数字的8位数password,然后利用程序模拟暴力破解password。经过几次測试,破解8位纯数字password的平均速度为2分半钟左右。

所以您的password假设是由等于或低于8位的纯数字组成,即便加上网络延时,破解时间也不会超过一个小时。

公司IT部门建议的password为:PaSs1234或p!ss1234或Pass!$#%。

对于暴力破解来说第一个,即PaSs1234则共同拥有2.8万亿组password。可是对于字典破解来说。能够尝试pass和1234的组合,如Pass1234、Pass1234、PaSs1234非常easy猜解。

第二个password。p!ss1234。尽管仅仅是将a换成感叹号,可是由于这个p。ss不属于单词,并且“。”一般会与“~!@#¥%……&*”等一起列为特殊符号。所以这样类似的password组合至少有408种,即256万种组合,配合字典破解所需时间不会超过10分钟。最后一种password,前面能够配合字典破解。后面4位用暴力破解。大约有2700万组。破解难度就非常大。并且也须要一定的技巧。

那么什么样的password才安全呢?当然是越长、越复杂越安全。

可是太复杂、太长的password不仅难记。用起来也不方便。对于上网经常使用的password。由于站点採用了限制登录次数以及使用验证码的方式避免了暴力破解式的攻击,所以您能够依据自己的情况,用数字、password、特殊字符等共同组成,如rNh#4915*。

为什么我们须要复杂的password的更多相关文章

  1. MySQL 改动用户password及重置rootpassword

    为数据库用户改动password是DBA比較常见的工作之中的一个.对于MySQL用户账户的password改动,有几种不同的方式.推荐的方式使用加密函数来改动password. 本文主要描写叙述了通过 ...

  2. ubuntu下一个rootusername入口mysql,如何查看username和password,如何改变rootpassword

    mysql -u root -p 按Enter键,提示时输入密码access denied......ues password YES/NO错误. 第一步: 然后,你需要输入/etc/mysql夹.然 ...

  3. 【Java编码准则】の #13使用散列函数保存password

    明文保存password的程序在非常多方面easy造成password的泄漏.尽管用户输入的password一般时明文形式.可是应用程序必须保证password不是以明文形式存储的. 限制passwo ...

  4. php生成随机password的几种方法

    文章来源:PHP开发学习门户 地址:http://www.phpthinking.com/archives/523 使用PHP开发应用程序,尤其是站点程序.经常须要生成随机password,如用户注冊 ...

  5. ArduinoYun教程之配置Arduino Yun环境

    ArduinoYun教程之配置Arduino Yun环境 配置Arduino Yun 不管你使用前面介绍的哪种方式连接Arduino Yun.如今都能够配置你的Arduino Yun了.首先须要的是使 ...

  6. Mac中使用svn进行项目管理

    Mac中使用svn进行项目管理,借鉴了http://blog.csdn.net/q199109106q/article/details/8655204 下面方案多人亲測可用 转载请注明出处:http: ...

  7. AccountManager使用教程

    API解读 这个类给用户提供了集中注冊账号的接口.用户仅仅要输入一次账户password后,就能够訪问internet资源. 不同的在线服务用不同的方式管理用户,所以account manager 为 ...

  8. 初识Mongodb之[CURD]-PHP版

    行动 在了实践之前,希望大家看一下上面的学习资源,了解一下基本操作. 数据连接初始账号password 账号:admin password:admin 首先我们建立一个文件:mongodb.php,设 ...

  9. iOS8互动的新通知

    iOS8一旦远程通知想必大家都很熟悉.不要做过多的描述在这里,直接推出iOS8交互式远程通知. 再看互动的通知电话,显示的形式                  如今来看一下详细实现方式 一.通过调用 ...

随机推荐

  1. Android configChanges使用方法

    1.    在manifest文件里使用activity的默认属性.横屏竖屏时,惠重复调用onDestory和onCreate  造成不必要的开销.Android默认如此应该是为了适配不同的xml布局 ...

  2. Fragment使用的正确姿势

     网上关于Fragment的使用建议和分析非常多,可是依旧会有非常多人在使用Fragment的时候出现各种奇葩错误 这篇文章我分享一下各种项目中解决Fragment的各种注意事项(不做原理分析), ...

  3. How to: Create Custom Configuration Sections Using ConfigurationSection

    https://msdn.microsoft.com/en-us/library/2tw134k3.aspx You can extend ASP.NET configuration settings ...

  4. Import Example Dataset

    Overview The examples in this guide use the restaurants collection in the test database. The followi ...

  5. POJ 3145 线段树 分块?+暴力

    思路: 线段树 (分类讨论) 此题数据很水 数据很水 数据很水 但是卡个暴力还是没问题的-- //By SiriusRen #include <cstdio> #include <c ...

  6. Kali linux 2016.2(Rolling)里Metasploit的口令猜测与嗅探

    不多说,直接上干货! 对于发现的系统与文件管理类网络服务,比如Telnet.SSH.FTP等,可以进行弱口令的猜测,以及对明文传输口令的嗅探,从而尝试获取直接通过这些服务进入目标网络的通道. 对于SS ...

  7. react 中间件相关的一些源码解析

    零.随便说说中间件 在react的使用中,我们可以将数据放到redux,甚至将一些数据相关的业务逻辑放到redux,这样可以简化我们组件,也更方便组件抽离.封装.复用,只是redux不能很好的处理异步 ...

  8. vue使用axios中 this 指向问题

    1.解决办法 在vue中使用axios做网络请求的时候,会遇到this不指向vue,而为undefined,可以使用箭头函数"=>"来解决.如下: methods: { lo ...

  9. COGS——T1310. [HAOI2006]聪明的猴子

    http://cogs.pro/cogs/problem/problem.php?pid=1310 ★   输入文件:monkey.in   输出文件:monkey.out   简单对比时间限制:1 ...

  10. 学习笔记 Java_静态_继承 2014.7.12

    一.静态 1.构造函数:       特点:       1. 函数名和类名同样.       2. 不用定义返回值类型(和void不是一回事,而构造函数是根本不用定义返回值类型).       3. ...