我目前正在探索Java的安全方面。当然,我首先要看的一件事就是整个解码点。
提及解密技术
经过一段时间的学习,我了解了以下加密技术的一些知识:
我为什么要问这个问题?
我知道,粗略地说SHA1比MD5更安全,而PBKDF2WithHmacSHA1是最安全的。但是,现在我不得不问自己,为什么在某些应用程序中仍使用MD5或SHA1之类的加密,而在这种情况下PBKDF2WithHmacSHA1更安全?我当然知道,只有在极少数情况下(降低暴力速度/碰撞风险)才能利用最佳技术。
尽管如此,实现时间还是要长一些,反过来,您可以获得更安全的加密。
我的最后一个问题
简而言之,我的问题是,为什么不是所有的应用程序都始终使用最好的加密技术,即使它们不一定需要它?我的意思是唯一的缺点是实施起来需要更长的时间。
此外
我不认为速度下降不是不使用最佳加密技术的原因。
目标是使散列函数足够慢以阻止攻击,但仍要足够快而不会对用户造成明显的延迟。来自here