首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    运维开发必备技能!陪你分阶段巩固复习前端知识,攻破前端技能防线。

    写在开篇先探讨一个问题:运维开发工程师是什么?所谓的运维、所谓的开发,到底怎么理解?到底是运维还是开发?笔者是不是可以这样去理解:只要开发跟运维领域相关的脚本、工具、产品,那么也都可以说是运维开发?假设这个理解是成立的,那么运维开发工程师平时只写一些零零散散的脚本,那算得上是运维开发工程师不?笔者认为算不上,顶多就是运维工程师,运维工程师对脚本(python、shell)的开发能力是必备的。那么运维开发工程师所需要掌握的技能要求是什么?笔者认为,应该具备打造运维工具、产品的能力,也就是全栈:运维技能+全栈开

    01

    深入浅出彩虹表原理

    一言以蔽之,彩虹表是一种破解用户密码的辅助工具。彩虹表以时空折中理论为基础,但并不是简单地“以空间换时间”,而是一种“双向交易”,在二者之间达到平衡。1980年,公钥密码学的提出者之一Hellman针对DES算法(一种对称加密算法)提出了一种时空折中算法,即彩虹表的前身:预先计算的散列链集。2003年瑞典的Philippe Oechslin在其论文Making a Faster Cryptanalytic Time-Memory Trade-Off(参考博客2)中对Hellman的算法进行了改进,并命名为彩虹表。当时是针对Windows Xp开机认证的LM散列算法。当然,目前除了破解开机密码,彩虹表目前还能用于SHA、MD4、MD5等散列算法的破译,速度快、破解率高,正如Philippe在论文中提到的:“1.4G的彩虹表可以在13.6s内破解99.9%的数字字母混合型的Windows密码“。实际上,Philippe所做的改进本质上是减少了散列链集中可能存在的重复链,从而使空间的有效利用率更高,关于这一点,后面会详述。

    04
    领券