<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh-Hans-CN">
	<id>https://wiki.riguz.com/index.php?action=history&amp;feed=atom&amp;title=Web%3A%E7%94%A8%E6%88%B7%E5%AF%86%E7%A0%81%E5%AD%98%E5%82%A8</id>
	<title>Web:用户密码存储 - 版本历史</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.riguz.com/index.php?action=history&amp;feed=atom&amp;title=Web%3A%E7%94%A8%E6%88%B7%E5%AF%86%E7%A0%81%E5%AD%98%E5%82%A8"/>
	<link rel="alternate" type="text/html" href="https://wiki.riguz.com/index.php?title=Web:%E7%94%A8%E6%88%B7%E5%AF%86%E7%A0%81%E5%AD%98%E5%82%A8&amp;action=history"/>
	<updated>2026-06-02T22:48:13Z</updated>
	<subtitle>本wiki上该页面的版本历史</subtitle>
	<generator>MediaWiki 1.42.3</generator>
	<entry>
		<id>https://wiki.riguz.com/index.php?title=Web:%E7%94%A8%E6%88%B7%E5%AF%86%E7%A0%81%E5%AD%98%E5%82%A8&amp;diff=1294&amp;oldid=prev</id>
		<title>imported&gt;Soleverlee：​以“=PBKDF2(Password-Based Key Derivation Function)=  PBKDF2简单而言就是将salted hash进行多次重复计算，这个次数是可选择的。如果计算一次...”为内容创建页面</title>
		<link rel="alternate" type="text/html" href="https://wiki.riguz.com/index.php?title=Web:%E7%94%A8%E6%88%B7%E5%AF%86%E7%A0%81%E5%AD%98%E5%82%A8&amp;diff=1294&amp;oldid=prev"/>
		<updated>2015-08-31T01:52:51Z</updated>

		<summary type="html">&lt;p&gt;以“=PBKDF2(Password-Based Key Derivation Function)=  PBKDF2简单而言就是将salted hash进行多次重复计算，这个次数是可选择的。如果计算一次...”为内容创建页面&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新页面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;=PBKDF2(Password-Based Key Derivation Function)=&lt;br /&gt;
&lt;br /&gt;
PBKDF2简单而言就是将salted hash进行多次重复计算，这个次数是可选择的。如果计算一次所需要的时间是1微秒，那么计算1百万次就需要1秒钟。假如攻击一个密码所需的rainbow table有1千万条，建立所对应的rainbow table所需要的时间就是115天。这个代价足以让大部分的攻击者忘而生畏。&lt;br /&gt;
&lt;br /&gt;
美国政府机构已经将这个方法标准化，并且用于一些政府和军方的系统。 这个方案最大的优点是标准化，实现容易同时采用了久经考验的SHA算法。&lt;br /&gt;
&lt;br /&gt;
=bcrypt=&lt;br /&gt;
&lt;br /&gt;
bcrypt是专门为密码存储而设计的算法，基于Blowfish加密算法变形而来，由Niels Provos和David Mazières发表于1999年的USENIX。&lt;br /&gt;
&lt;br /&gt;
bcrypt最大的好处是有一个参数（work factor)，可用于调整计算强度，而且work factor是包括在输出的摘要中的。随着攻击者计算能力的提高，使用者可以逐步增大work factor，而且不会影响已有用户的登陆。&lt;br /&gt;
&lt;br /&gt;
bcrypt经过了很多安全专家的仔细分析，使用在以安全著称的OpenBSD中，一般认为它比PBKDF2更能承受随着计算能力加强而带来的风险。bcrypt也有广泛的函数库支持，因此我们建议使用这种方式存储密码。&lt;br /&gt;
&lt;br /&gt;
=scrypt=&lt;br /&gt;
scrypt是由著名的FreeBSD黑客 Colin Percival为他的备份服务 Tarsnap开发的。&lt;br /&gt;
&lt;br /&gt;
和上述两种方案不同，scrypt不仅计算所需时间长，而且占用的内存也多，使得并行计算多个摘要异常困难，因此利用rainbow table进行暴力攻击更加困难。scrypt没有在生产环境中大规模应用，并且缺乏仔细的审察和广泛的函数库支持。但是，scrypt在算法层面只要没有破绽，它的安全性应该高于PBKDF2和bcrypt。&lt;br /&gt;
&lt;br /&gt;
原文地址 http://www.williamlong.info/archives/3224.html&lt;br /&gt;
[[Category:Web]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Soleverlee</name></author>
	</entry>
</feed>