考研面试问题(考研面试问题汇总)




考研面试问题,考研面试问题汇总

一些小伙伴吐槽,去面试的时候经常听到面试官问这样的问题,“对称加密”、“非对称加密”、“MD5加密”,那么MD5到底属于哪种加密算法?遇到这样的问题,一定要小心,这是面试官给你挖的坑呢,可别傻傻地往坑里面跳。

注意了!MD5加密纯属口嗨,MD5是摘要算法,不是加密算法!切记。

为了让大家能够清楚地知道加密算法和摘要算法的定义和场景,给大家放一个图,是不是一目了然了?

加密算法的目的在于使别人无法成功查看加密的数据,并且在需要的时候还可以对数据进行解密来重新查看数据。

MD5算法是一种哈希算法,这一算法是不可逆的。也就是说,通过哈希算法得到的数据,无法经过任何算法还原回去。 所以既然不能将数据还原,也就不能称之为解密;既然不能解密,那么哈希的过程自然也就不能称作是加密了。

摘要算法

摘要算法,又称哈希算法、散列算法。通过一个函数,将任意长度的内容转换为一个固定长度的数据串。

摘要算法之所以能指出数据是否被篡改,就是因为摘要函数是一个单向函数,计算很容易,但通过摘要(digest) 反推data却非常困难,而且,对于原始数据做一个bit的修改,都会导致计算出的摘要完全不同。

md5能否解密?

不能。既然MD5不是加密算法,那么就不存在什么MD5解密了。(下面告诉你其实对这种特殊情况是可以的)

这时候,会有人说,为什么网上有很多网站声称能MD5解密?比如说这个:md5.cn

真相只有一个:因为这个网站记录了常用的一些明文和它对应的密文,比如普通的123456、abc123、iloveyou等,这些早就记录在案了,所以当我们输入需要解密的密文,就能匹配到存在数据库里面的解密结果。

加密算法

加密: 是以某种特殊的算法改变原有的信息,使得未授权的用户即使获得已加密的信息,但因不知解密的方法,仍然无法了解信息的内容。

解密:加密的逆过程为解密,即将该加密信息转化为其原来信息的过程。

加密算法分为对称加密和非对称加密,其中对称加密算法的加解密密钥相同,非对称加解密的密钥不同。

总结

加密算法的目的是: 防止信息被偷看

摘要算法的目的是: 防止信息被篡改

在面试的时候,一定要小心,不要掉进面试官给你挖好的坑。MD5是摘要算法,不是加密算法,而且MD5是不可逆的。而且,我们可以用彩虹表将密文还原出来,所以它不是安全的。想要解决这个问题,我们需要通过加盐的手段,每次生成一个不同的密码,就把这个问题解决了。

考研面试问题(考研面试问题汇总)

2023考研秘籍

跟我一起考研吗?马上关注我分享独家资料您