Hashing and Passwords Flashcards
1
Q
What is Hashing?
A
- Based on Cryptographic methods
- Takes a normal mesage, and returns as a fixed-sized output
- Hash value
- Finite number of outputs
2
Q
What are some Hashing properties?
A
-
Deterministic
- msg1→hash1
-
Computationally efficient
- Hashing is (relatively) fast
-
Pre-image resistant
- Hashing is one-way
-
Collision resistant
- If msg1→hash1 & msg2→hash1, then collision because they are the same
3
Q
What are some Common Hash Functions?
A
- MD5
- SHA1
4
Q
What is the MD5 Hash Function?
A
- It’s a broken system
- 16 byte output (128 bits)
5
Q
What is the SHA1 Hash Function?
A
- Slower, more secure
- 20 byte output (160 bits)
6
Q
What are three kinds of offline attacks?
A
- Brute Force
- Dictionary Attack
- Rainbow Table
7
Q
What are some website/server responsibilities?
A
- Use Hashing
- (Increases exploit effort in event of password file compromise)
- Use Salt
- (Protect against Rainbow Table Attack)
- Control/restrict access to the password file
- (Reduce likelihood of password file compromise)
8
Q
What are some Client responsibilities?
A
- Uncommon password
- (Protect against Dictionary Attack)
- Uses multiple character sets
- (A-Z, a-z, 0-9, special characters) (Protect against Dictionary Attack. Protect against (increase effort of) Brute Force Attack)
- Long password
- (Protect against (increase effort of) Brute Force Attack)
- Do not reuse passwords from other accounts
- (Decreases impact in event of password file compromise)
9
Q
How does Two Factor authentication work?
A
You have to provide:
- Something you know (password, usually)
- Something you have or something you are