Lec2 User Authentication
Lec2 User Authentication
Password-Based Authentication
Process:
1. User provides a username (ID) and password.
2. System verifies the password against the one stored for that ID.
User ID Functions:
Identifies the user for authorization.
Determines user privileges.
Used in discretionary access control (DAC).
Issue:
Insider attack: A regular user can read the database and learn other users'
passwords.
Outsider attack: Unauthorized access to the database exposes all passwords.
Countermeasures:
Access control on the password database.
Do not store passwords in clear text.
Process:
Encrypted passwords ( E(K, P) ) are stored in the database.
When a user submits a password, it is encrypted using the same key ( K ) and
compared to the stored value.
Drawback:
The secret key ( K ) must also be stored.
If an attacker gains access to the database, they might also gain access to K .
Process:
Store the hash of passwords ( H(P) ) in the database.
When a user submits a password, it is hashed and compared to the stored hash
value.
Properties of Hash Functions:
Variable-sized input produces a fixed-length output.
No collisions (each input maps to a unique hash).
One-way function (practically impossible to derive the original password from the
hash).
Benefits:
- If an attacker gains access to the database, they cannot easily reverse the hash to obtain
the original password.
Salting Passwords
Process:
Append random data (called a salt) to the user’s password before hashing: H(P ||
Salt) .
Each user has a unique salt.
Benefits:
Produces different hashes for the same password across different users.
Increases the computational work required for rainbow table attacks.
Example in Unix:
Salt is a randomly chosen integer (up to 12 bits).
Impact:
- Storage space required increases by a factor of 2s, where s is the salt size.
Given Data
Character set: 95 characters
Password length: 8 characters
Hashing algorithm: SHA-512
Brute force rate: 10^6 (1 million) hashes per second
95^8
2. Time to Test All Passwords:
Total time=95^8 \10^6 seconds
3. Convert to Larger Units (if necessary): This result can then be converted to hours, days,
or years if desired.
95^8
2. Size of Each Hash (SHA-512): SHA-512 produces a 512-bit (64-byte) hash.
3. Total Database Size:
Password Cracking
Exploitation: Password crackers leverage users' tendency to choose guessable
passwords.
Vulnerability: Short passwords are easier to crack.
Methods:
1. Dictionary Attacks:
Use a precompiled list of possible passwords and try each against the password
file.
2. Rainbow Table Attacks:
Utilize pre-computed tables of hash values.
Tools:
John the Ripper:
Open-source password cracker (1996).
Combines brute-force and dictionary techniques.
Countermeasures:
Use large salt values and sufficiently long hash lengths.
Each password must be hashed with each salt value and compared to stored
hashes.
Token-Based Authentication
Overview
Token: An object that a user possesses for the purpose of authentication.
Examples:
1. Memory Cards
2. Smart Tokens
Smart Cards
Electronic Identity Cards (eID)
Memory Cards
Characteristics:
Can store data but do not process it.
The most common type is the magnetic stripe card.
May include internal electronic memory.
Applications:
Can be used alone for physical access (e.g., hotel rooms).
Provides greater security when combined with a password or PIN (e.g., ATM).
Drawbacks:
Requires a special reader.
Prone to token loss.
May lead to user dissatisfaction.
Smart Tokens
Physical Characteristics:
User Interfaces:
Authentication Protocols:
Smart Cards
Importance: The most significant category of smart tokens.
Physical Characteristics: Appear similar to credit cards.
Functionality:
Can use any of the smart token protocols.
Contain a complete microprocessor:
Processor
Memory
Input/Output ports or embedded antenna
Memory Types:
1. Read-Only Memory (ROM): Stores unchanging data.
2. Electrically Erasable Programmable ROM (EEPROM): Stores application data and
programs.
3. Random Access Memory (RAM): Holds temporary data generated during
application execution.
Biometric Authentication
Overview:
1. Accuracy:
The correctness of a biometric system.
2. Performance:
The achievable speed of analysis.
The resources required to achieve the desired speed.
3. Acceptability:
The extent to which people are willing to accept the use of a particular biometric
identifier.
4. Circumvention Resistance: