Project Title:
Password
Generator in C
Team Members
1. Dev Kant
2. Junaid
3. Anuj
4. Siddhanth Jain
5. Vansh
6. Sawan
Contents
01 02 03
Introduction Project Req. Features
04 05 06
Functions Demonstration Conclusion
Introduction
Introduction to Password Generator in C
A password generator is a tool that creates random,
secure passwords, ensuring data safety by using a mix of
uppercase and lowercase letters, numbers, and special
characters. In this C program, we leverage the `rand()`
function to randomly select characters, creating a unique
password every time. By specifying the password length,
users can generate secure passwords quickly and easily,
protecting accounts and sensitive information from
unauthorized access.
Project
Requirements
Software :
C Compiler (e.g., GCC)
IDE or Text Editor (e.g., Visual Studio Code)
Project
Requirements
Libraries :
<stdio.h> for input and output functions
<stdlib.h> for rand() and srand() functions
<time.h> for seeding the random number
generator with time(0)
Project
Requirements
Functionality :
Ability to specify password length
Randomly select characters (uppercase,
lowercase, digits, special characters)
Display the generated password)
Key Concepts Used
1. Random Number Generation : Uses `rand()` and
`srand(time(0))` to produce unique characters each time.
2. Character Arrays : Stores allowed characters (letters,
digits, symbols) for password creation.
3. Loops : Iterates to build the password character by
character based on specified length.
4. Modulus Operation : Ensures random selection within the
bounds of available characters.
5. Functions : Uses a custom `generatePassword()` function
for modular code structure.
Code
Demonstration
1. Run the Program : Compile and run the C
code.
2. Input Password Length : The program
prompts for the desired password length (e.g., 8
characters).
3. Generate Password : The program randomly
selects characters based on the input length
and displays the password.
Demonstration
For example:
- **Input**: `8`
- **Output**: `Generated Password: A3z@B7q!`
Each run produces a unique password, meeting
the specified length and containing a mix of
letters, digits, and symbols for security.
Challenges Faced
1.Ensuring True Randomness: Achieving unique
password outputs requires properly seeding rand()
with srand(time(0)) to avoid repetition.
2. Character Selection: Balancing uppercase,
lowercase, digits, and symbols for a secure, varied
password.
3.Length Validation: Ensuring user-entered length is
valid and prevents overly short passwords that
compromise security.
Conclusion
This project demonstrates how to generate secure,
random passwords in C using basic programming
concepts. By applying random number generation
and arrays, we can create robust passwords for safe
authentication. This simple password generator
emphasizes security and efficiency, making it
suitable for protecting user accounts and data in
real-world applications.
Future Improvements
1. Character Type Customization : Allow users to choose
specific characters (letters, numbers, symbols).
2. Password Strength Check : Add a strength indicator for
generated passwords.
3. User Interface : Implement a more user-friendly
interface (GUI or CLI).
4. Multiple Passwords : Option to generate multiple
passwords at once.
5. Minimum Character Requirement : Ensure a mix of
character types for stronger passwords.
Thank you
Group