安基网 首页 电脑 电脑学堂 查看内容

经典算法之黑色应用(穷举法)

2004-9-29 20:05| 投稿: computer


免责声明:本站系公益性非盈利IT技术普及网,本文由投稿者转载自互联网的公开文章,文末均已注明出处,其内容和图片版权归原网站或作者所有,文中所述不代表本站观点,若有无意侵权或转载不当之处请从网站右下角联系我们处理,谢谢合作!

摘要: 穷举法理论   穷举算法有点像数学上说的"完全归纳法",在问题答案可能的全部解集内逐一查询(测试)直到找出答案为止,这种算法在密码破解中得到了广泛的应用,但该算法的缺点是运算规模比较大,算法的"最好情...
穷举法理论   穷举算法有点像数学上说的"完全归纳法",在问题答案可能的全部解集内逐一查询(测试)直到找出答案为止,这种算法在密码破解中得到了广泛的应用,但该算法的缺点是运算规模比较大,算法的"最好情况时间复杂度!"为1,"最坏情况时间复杂度"是n,"平均时间复杂度"是(((1+n)*n)/2)/n,另外在网络环境里进行远程破解还要考虑连接到远程机器所需花费的时间。 使用穷举法进行密码破解的伪C代码算法大致的模型是这样的: 设:flag和done为BOOL型变量,pass为存放当前口令字串的char型数组变量,当flag为TRUE时为找到密码,done为TRUE时为使用完了全部字典口令单词。 void docrackpassword(void *para) { char pass[MAX_PASSLEN]; do{ 生成或从文件读取一个口令字串放入pass; 进行一次本地或远程密码测试(使用pass里的口令字串); if(密码正确)flag=TURE; if(口令字典中的字串全部用完或已经生成完了全部口令字串) done=TRUE; }while(!flag&&!done) if(flag) printf("Yeah! Password is %s\n",pass); else printf("Password Not Found\n"); }//end docrackpassword 在一些国家有专门的高速破译设备来运行这些程序,这些机器大都有x个处理芯片、超大容量内存,一些常用的指令如:mov,inc,sub,add等都使用硬件实现,而非普通PC机器上使用!的"微指令"技术,如IBM为美军方设计的"飓风"破!译机就是一个典型的破译机器。

小编推荐:欲学习电脑技术、系统维护、网络管理、编程开发和安全攻防等高端IT技术,请 点击这里 注册账号,公开课频道价值万元IT培训教程免费学,让您少走弯路、事半功倍,好工作升职加薪!



免责声明:本站系公益性非盈利IT技术普及网,本文由投稿者转载自互联网的公开文章,文末均已注明出处,其内容和图片版权归原网站或作者所有,文中所述不代表本站观点,若有无意侵权或转载不当之处请从网站右下角联系我们处理,谢谢合作!


鲜花

握手

雷人

路过

鸡蛋

相关阅读

最新评论

 最新
返回顶部