A Convenient Method for Securely Managing Passwords

advertisement
A Convenient Method for
Securely Managing Passwords
1
J. Alex Halderman
Brent Waters
Edward W. Felten
Princeton
Stanford
Princeton
J. Alex Halderman
****ing Passwords!
• Web site password overload
Generating, keeping secret, and recalling
passwords for scores of sites
• Leads to insecure coping techniques
– Writing passwords down
– Reusing same passwords
• Difficult to enforce better behavior
We need to make password security easy
2
J. Alex Halderman
In This Talk
1. Approaches to password management
2. Our construction and its security
3. Comparison with other techniques
4. Demonstration of our implementation
5. Future work and conclusions
3
J. Alex Halderman
Approaches to Password Mgmt
• Local encrypted storage
e.g., Password Safe (1998)
– Cumbersome to access from multiple locations
• Centralized remote authentication
e.g., Microsoft Passport (1999)
– Needs server-side changes, trusted third party
• Cryptographic password generation
e.g., LPWA (1997), PwdHash (2004),
our scheme (2004)
4
J. Alex Halderman
Password Generators
Master Password
“amazon.com”
Hash()
“wrbPzdqS”
Use as your Amazon password
• E.g.: LPWA, PwdHash
• Client software derives
individual site passwords
using deterministic one-way
function
• Users sets all site passwords
to function output
• Only need to remember
master password to recreate
all site passwords—highly
transportable!
A simple idea, but hard to get right!
5
J. Alex Halderman
Stealing the Master Password
Password Guess
“yahoo.com”
“lassie”
“rover”
“spot”
“fido”
Hash()
“H2VeusSq”
“CJPZfAKx”
“RWwsYlTi”
“LZIniBNd”
==
=?
“LZIniBNd”
“LZIniBNd”
Adversary learns
password from
low-security site
Dictionary attack
to learn master
password
amazon.com  wrbPzdqS
gmail.com  obIDmogl
citibank.com  sX4rLlO1
Can access all other
password-managed
sites
Easy to execute because scheme use fast hashes
6
J. Alex Halderman
Thwarting Brute Force Attacks
attack cost = ½ × dictionary size × cost per guess
• Hard to increase dictionary size
User habits hard to change, limits on human memory
• Increase cost per guess by using slower hash
– Used elsewhere to protect password verification
routines (UNIX crypt)
– Our approach: iterated hash
• Security vs. usability tradeoff
User has to wait too! — Cache intermediate results
7
J. Alex Halderman
Initialization
Phase
Our Construction
Master password
User identity
“MyD06ReX”
“jhalderm@princeton.edu”
Hk1()
Generation
Phase
Local
Cache
Master password
(again)
Hk2()
J. Alex Halderman
Target site
“amazon.com”
Mapping
“wrb8zdqS”
8
(k1 >> k2)
User’s site password
for “amazon.com”
Security Analysis
Four attack scenarios:
 1. No information
? 2. Stolen site password
? 3. Stolen cache data
? 4. Stolen cache + site password
Primary concern is offline attacks.
9
J. Alex Halderman
Increasing
external
difficulty
Security of Our Scheme
Attack scenario
Hashes/ Time/
guess
guess
1. No information
N/A
N/A
2. Stolen site password
k1+k2
100.1s
3. Stolen cache data
k1
100s
4. Stolen cache + site password
k2
0.1s
10
J. Alex Halderman
Relative Attack Resistance
Estimated time to test 100,000 guesses
Scheme
Stolen
password
Stolen
data
Stolen pw
and data
Password Safe
N/A
74.6 secs
74.6 secs
LPWA
0.5 secs
N/A
N/A
PwdHash
0.1 secs
N/A
N/A
Our Scheme
116 days
116 days
2.8 hours
11
J. Alex Halderman
Equivalent Password Length
PwdHash
LPWA
Our Scheme
12
*********
********
****
J. Alex Halderman
Password Multiplier
• Extension for Mozilla Firefox
Windows, Mac OS X, and Linux
• Tightly integrated with browser
Double-click any password field to fill in
• Balanced security and convenience
– Initialization — 108 iterations, ~100 seconds
(Only once per installation)
– Password generation — 105 iterations, ~0.1 secs
(Before every password operation)
13
J. Alex Halderman
Password Multiplier — Demo
14
J. Alex Halderman
Future Improvements
• Flexible password formatting
Cope with sites that require numbers,
punctuation, special patterns
• Easier password changes
Manually and at regular intervals
• Improved anti-spoofing
Adopt techniques from PwdHash
• Port to Internet Explorer, others
15
J. Alex Halderman
Require
additional
“state”
Summary — Our scheme:
• Provides password access from anywhere our software
can be executed
• Asks user to remember only one short password
• Requires no server-side changes
• Does not require trusting a third-party service
• Nearly as secure as independent random pwds
• Likely much more secure than what you do now
• Is practical, available today, and free
http://www.cs.princeton.edu/~jhalderm/projects/password/
16
J. Alex Halderman
A Convenient Method for
Securely Managing Passwords
17
J. Alex Halderman
Brent Waters
Edward W. Felten
Princeton
Stanford
Princeton
J. Alex Halderman
Download