0% found this document useful (0 votes)
5 views25 pages

CSProject SN

The document outlines a project titled 'Password Generator' submitted by S. Nilogini for the CBSE Class 12 requirements at Queen Mira International School. It includes sections on the project's aim, introduction to password generation, software and hardware requirements, and an overview of Python programming. The project aims to create a Python program that generates secure passwords based on user-defined criteria.

Uploaded by

Fermin Selvin
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views25 pages

CSProject SN

The document outlines a project titled 'Password Generator' submitted by S. Nilogini for the CBSE Class 12 requirements at Queen Mira International School. It includes sections on the project's aim, introduction to password generation, software and hardware requirements, and an overview of Python programming. The project aims to create a Python program that generates secure passwords based on user-defined criteria.

Uploaded by

Fermin Selvin
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 25

PASSWORD GENERATOR

NAME : S. NILOGINI

Roll NO :

SUBJECT : COMPUTER SCIENCE

GRADE : XII

SESSION : 2024-2025

Submitted in partial fulfillment of the requirement of CBSE, Delhi

UNDER THE GUIDANCE OF


Ms. K G Sathya Priya MCA, MPhil
(PGT COMPUTER SCIENCE)

1
CERTIFICATE

This is to certify that the project entitled “Password Generator” submitted


by Nilogini S partial fulfillment of the requirement for the Central Board of
Secondary Education of Class 12, Queen Mira International School, Madurai is
done by her during the academic year 2024-2025, under my supervision and
guidance and this project or any part thereof has not been submitted elsewhere
for any classes.

Principal Internal Examiner

This project is submitted for the project evaluation and viva voce held on

______________ at Queen Mira International School, Madurai.

External Examiner

2
ACKNOWLEDGEMENT

"Surround yourself with individuals who inspire growth—those who


strive for more, seek knowledge, and aim for higher aspirations in life."

I firmly believe that it is through the grace and blessings of the Lord
that I have been able to accomplish this endeavor.

I express my faithfulness and thanks to our beloved and respectful


Director – Academics Ms. Sujatha Guptan for having rendered me an
opportunity to do this project. I extend my heartfelt gratitude to the Principal
Ms. Anita Rajesh for her unwavering support and guidance throughout the
completion of my project. Your leadership and encouragement have been
instrumental in our success.

I would also like to thank my beloved Senior Secondary Coordinator


Mr. Joe Daniel Bernad for his consistent support in completing our task on
time.

I am highly indebted to my Teacher In-charge Ms. Sathya Priya K G


for her guidance and constant supervision as well as for providing necessary
information regarding the project and also for his support in completing the
project.

Last, but not the least, my sincere thanks, from the depth of my heart
goes to my Friends and family, for their continuous moral strength, support
and encouragement throughout the journey of this project.

3
TABLE OF CONTENTS

Page
Sl no Chapter
1 Aim of the Project
1
2 Introduction
2
3 Software and Hardware Requirements
3
4 Python
4
5 Modules and their purposes
9
6 Design Work (Data Formats, Context Level Programs)
11
7 Algorithm
12
8 Source Code
14
9 Input and Output Screens
17
10 Advantages of the Project
18
11 Conclusion
19
12 Further Development Areas
20
13 Bibliography
21

4
‭PASSWORD GENERATOR‬

‭AIM‬

‭To‬‭design‬‭and‬‭implement‬‭a‬‭Python‬‭program‬‭that‬‭generates‬‭a‬‭random,‬‭secure‬‭password‬‭based‬‭on‬
‭user-defined requirements (such as length, use of special characters, numbers, and letters).‬

‭Melakkal Road, Kochadai, Madurai 625 019, India +91 96557 77000‬ ‭[email protected]‬ ‭www.queenmira.com‬
‭- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -‬

‭1‬
‭INTRODUCTION‬

‭INTRODUCTION TO ELECTROMAGNETIC WAVES‬

‭A‬‭password‬‭generator‬‭is‬‭a‬‭software‬‭tool‬‭that‬‭creates‬‭random‬‭or‬‭customized‬‭passwords‬‭for‬
‭users.‬ ‭It‬ ‭helps‬ ‭users‬ ‭create‬ ‭stronger‬ ‭passwords‬ ‭that‬ ‭provide‬‭greater‬‭security‬‭for‬‭a‬‭given‬‭type‬‭of‬
‭access,‬‭Some‬‭password‬‭generators‬‭are‬‭simply‬‭random.‬‭These‬‭programs‬‭produce‬‭complex/strong‬
‭passwords‬ ‭with‬ ‭combinations‬ ‭of‬ ‭numbers,‬ ‭uppercase‬ ‭and‬ ‭lowercase‬ ‭letters,‬ ‭and‬ ‭special‬
‭characters such as braces, asterisks, slashes, etc.‬

‭Other‬ ‭types‬ ‭of‬ ‭password‬ ‭generators‬ ‭are‬ ‭made‬ ‭to‬ ‭generate‬‭more‬‭recognizable‬‭passwords‬


‭rather‬‭than‬‭a‬‭completely‬‭random‬‭set‬‭of‬‭characters.‬‭There‬‭are‬‭tools‬‭for‬‭generating‬‭pronounceable‬
‭passwords,‬ ‭as‬ ‭well‬ ‭as‬ ‭custom‬ ‭tools‬ ‭that‬‭allow‬‭users‬‭to‬‭set‬‭detailed‬‭criteria.‬‭For‬‭instance,‬‭a‬‭user‬
‭could‬ ‭set‬ ‭a‬ ‭request‬ ‭for‬ ‭a‬ ‭certain‬ ‭number‬ ‭of‬ ‭characters,‬ ‭a‬ ‭certain‬ ‭mix‬ ‭of‬ ‭letters‬‭and‬‭numbers,‬‭a‬
‭certain number of special characters, or any other criteria for generating a new password.‬

‭Password‬‭generators‬‭help‬‭those‬‭who‬‭have‬‭to‬‭constantly‬‭come‬‭up‬‭with‬‭new‬‭passwords‬‭to‬
‭ensure‬ ‭authorized‬ ‭access‬ ‭to‬ ‭programs‬ ‭and‬ ‭to‬ ‭manage‬ ‭a‬ ‭large‬ ‭number‬‭of‬‭passwords‬‭for‬‭identity‬
‭and access management.‬

‭Melakkal Road, Kochadai, Madurai 625 019, India +91 96557 77000‬ ‭[email protected]‬ ‭www.queenmira.com‬
‭- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -‬

‭2‬
‭SOFTWARE AND HARDWARE REQUIREMENTS‬

‭SOFTWARE REQUIREMENTS:‬

‭Operating System‬ ‭: Windows XP‬

‭Software‬ ‭: Python‬

‭HARDWARE REQUIREMENTS:‬

‭Any x86 Class Processors‬

‭4GB RAM‬

‭100GB Hard Disk Space‬

‭Speaker connected to the computer‬

‭Melakkal Road, Kochadai, Madurai 625 019, India +91 96557 77000‬ ‭[email protected]‬ ‭www.queenmira.com‬
‭- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -‬

‭3‬
‭PYTHON‬

‭WHAT IS PYTHON?‬

‭Python‬ ‭is‬ ‭a‬ ‭popular‬ ‭programming‬ ‭language.‬ ‭It‬ ‭was‬ ‭created‬ ‭by‬ ‭Guido‬ ‭van‬‭Rossum,‬‭and‬
‭released in 1991. It is used for:‬

‭●‬ ‭Web development (server-side)‬


‭●‬ ‭Software development‬
‭●‬ ‭Mathematics‬
‭●‬ ‭System scripting‬

‭Python is a high-level, interpreted, and general-purpose programming language that is‬


‭widely used for various types of software development. It was created by‬‭Guido van Rossum‬
‭and first released in‬‭1991‬‭. Python is known for its‬‭simplicity‬‭and‬‭readability‬‭, which makes it an‬
‭excellent choice for both beginners and experienced developers.‬

‭Key Features of Python:‬

‭1.‬ ‭Simple and Readable Syntax‬‭:‬


‭Python's syntax is designed to be intuitive and easy to read, which makes it more‬
‭accessible for new programmers compared to other languages.‬

‭2.‬ ‭Interpreted Language‬‭:‬


‭Python code is executed line-by-line by the interpreter, which means it doesn't need to be‬
‭compiled before running. This makes development faster and more flexible.‬

‭3.‬ ‭High-Level Language‬‭:‬


‭Python abstracts many of the complex details of the computer’s operation, making it‬
‭easier for developers to focus on solving problems rather than managing low-level‬
‭aspects.‬

‭Melakkal Road, Kochadai, Madurai 625 019, India +91 96557 77000‬ ‭[email protected]‬ ‭www.queenmira.com‬
‭- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -‬

‭4‬
‭4.‬ ‭Object-Oriented and Functional‬‭:‬
‭Python supports both object-oriented and functional programming paradigms. This‬
‭allows developers to choose the most suitable approach for their specific needs.‬

‭5.‬ ‭Cross-Platform‬‭:‬
‭Python can run on various platforms like Windows, macOS, and Linux without needing‬
‭to change the code.‬

‭6.‬ ‭Extensive Standard Library‬‭:‬


‭Python comes with a vast standard library that provides modules and functions for‬
‭common tasks like file I/O, data manipulation, and network communication.‬

‭7.‬ ‭Dynamically Typed‬‭:‬


‭Variables do not need to be explicitly declared with a type. Python automatically‬
‭determines the type of a variable at runtime based on the value assigned to it.‬

‭8.‬ ‭Large Community and Ecosystem‬‭:‬


‭Python has a massive community of developers who contribute to its ecosystem, making‬
‭it one of the most popular languages for web development, data science, machine‬
‭learning, automation, and more.‬

‭Common Uses of Python:‬

‭1.‬ ‭Web Development‬‭:‬


‭Python is widely used in web development frameworks like‬‭Django‬‭and‬‭Flask‬‭to create‬
‭scalable and secure websites and web applications.‬

‭2.‬ ‭Data Science and Machine Learning‬‭:‬


‭Python is a dominant language in data science, with libraries like‬‭Pandas‬‭,‬‭NumPy‬‭,‬
‭Matplotlib‬‭,‬‭TensorFlow‬‭, and‬‭Scikit-learn‬‭helping developers perform data analysis,‬

‭Melakkal Road, Kochadai, Madurai 625 019, India +91 96557 77000‬ ‭[email protected]‬ ‭www.queenmira.com‬
‭- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -‬

‭5‬
‭create data visualizations, and build machine learning models.‬

‭3.‬ ‭Automation and Scripting‬‭:‬


‭Python is frequently used to automate repetitive tasks, process files, or manage system‬
‭operations due to its simple syntax and powerful libraries.‬

‭4.‬ ‭Software Development‬‭:‬


‭Python can be used to develop both small scripts and large-scale software applications.‬
‭Libraries like‬‭Tkinter‬‭are used for building graphical‬‭user interfaces (GUIs).‬

‭5.‬ ‭Game Development‬‭:‬


‭Python has frameworks like‬‭Pygame‬‭that make it possible‬‭to create simple games.‬

‭6.‬ ‭Cybersecurity‬‭:‬
‭Python is often used for writing scripts for penetration testing, creating security tools,‬
‭and automating tasks in the cybersecurity field.‬

‭Example Python Code:‬

‭# A simple Python program to add two numbers‬

‭def add_numbers(a, b):‬

‭return a + b‬

‭# Input from the user‬

‭num1 = int(input("Enter first number: "))‬

‭num2 = int(input("Enter second number: "))‬

‭Melakkal Road, Kochadai, Madurai 625 019, India +91 96557 77000‬ ‭[email protected]‬ ‭www.queenmira.com‬
‭- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -‬

‭6‬
‭# Adding the numbers‬

‭result = add_numbers(num1, num2)‬

‭# Output the result‬

‭print("The sum is:", result)‬

‭Advantages of Python:‬

‭●‬ ‭Ease of Learning‬‭: Python's syntax is clear and straightforward,‬‭making it a great‬


‭language for beginners.‬
‭●‬ ‭Versatility‬‭: Python is suitable for a wide range of‬‭applications, from simple scripts to‬
‭complex machine learning systems.‬
‭●‬ ‭Productivity‬‭: Python allows for quick development,‬‭making it ideal for projects with‬
‭tight deadlines or rapid prototyping.‬

‭WHAT CAN PYTHON DO?‬

‭●‬ ‭Python can be used on a server to create web applications.‬


‭●‬ ‭Python can be used alongside software to create workflows.‬
‭●‬ ‭Python can connect to database systems. It can also read and modify files.‬
‭●‬ ‭Python can be used to handle big data and perform complex mathematics.‬
‭●‬ ‭Python can be used for rapid prototyping or production-ready software development.‬

‭WHY PYTHON?‬

‭●‬ ‭Python works on different platforms (Windows, Mac, Linux, Raspberry Pi, etc).‬
‭●‬ ‭Python has a simple syntax similar to the English language.‬
‭●‬ ‭Python has a syntax that allows developers to write programs with fewer lines than some‬
‭other programming languages.‬
‭●‬ ‭Python runs on an interpreter system, meaning that code can be executed as soon as it is‬
‭written. This means that prototyping can be very quick.‬
‭●‬ ‭Python can be treated procedurally, in an object-oriented way, or in a functional way.‬

‭Melakkal Road, Kochadai, Madurai 625 019, India +91 96557 77000‬ ‭[email protected]‬ ‭www.queenmira.com‬
‭- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -‬

‭7‬
‭PYTHON SYNTAX COMPARED WITH OTHER LANGUAGES‬

‭●‬ ‭Python was designed for readability and has some similarities to the English language‬
‭with influence from mathematics.‬
‭●‬ ‭Python uses new lines to complete a command, as opposed to other programming‬
‭languages which often use semicolons or parentheses.‬
‭●‬ ‭Python relies on indentation, using whitespace, to define scope; such as the scope of‬
‭loops, functions, and classes. Other programming languages often use curly brackets for‬
‭this purpose.‬

‭Melakkal Road, Kochadai, Madurai 625 019, India +91 96557 77000‬ ‭[email protected]‬ ‭www.queenmira.com‬
‭- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -‬

‭8‬
‭MODULES AND ITS PURPOSE‬

‭The‬‭modules‬‭that‬‭are‬‭used‬‭in‬‭this‬‭program‬‭to‬‭generate‬‭a‬‭random‬‭password‬‭are‬‭as‬‭follows:‬
‭CSV,‬ ‭Tkinter,‬ ‭paperclip,‬ ‭random,‬ ‭and‬‭string.‬‭To‬‭install‬‭the‬‭libraries‬‭we‬‭can‬‭use‬‭the‬‭pip‬‭installer‬
‭from the command line‬

‭Csv MODULE:‬

‭CSV‬‭is‬‭the‬‭most‬‭common‬‭import‬‭and‬‭export‬‭format‬‭for‬‭spreadsheets‬‭and‬‭databases.‬‭A‬‭csv‬
‭file‬‭stores‬‭tabular‬‭data‬‭(numbers‬‭and‬‭text)‬‭in‬‭plain‬‭text.‬‭Each‬‭line‬‭of‬‭the‬‭file‬‭is‬‭a‬‭data‬‭record.‬‭Each‬
‭record consists of one or more fields, separated by commas.‬

‭Tkinter MODULE:‬

‭Tkinter‬ ‭is‬ ‭a‬ ‭standard‬ ‭GUI‬ ‭library‬ ‭and‬ ‭is‬ ‭one‬ ‭of‬ ‭the‬ ‭easiest‬ ‭ways‬ ‭to‬ ‭build‬ ‭a‬ ‭GUI‬
‭application. Tkinter provides a powerful object-oriented interface to the TK GUI toolkit.‬

‭Pyperclip MODULE:‬

‭pyperclip‬ ‭module‬ ‭allows‬ ‭us‬ ‭to‬ ‭copy‬ ‭and‬ ‭paste‬ ‭text‬ ‭to‬ ‭and‬ ‭from‬ ‭the‬ ‭clipboard‬ ‭to‬ ‭your‬
‭computer.‬ ‭The‬ ‭pyperclip‬ ‭module‬ ‭has‬ ‭copy()‬ ‭and‬ ‭paste()‬ ‭functions‬ ‭that‬ ‭can‬ ‭send‬ ‭text‬ ‭to‬ ‭and‬
‭receive‬‭text‬‭from‬‭your‬‭computer's‬‭clipboard.‬‭Sending‬‭the‬‭output‬‭of‬‭your‬‭program‬‭to‬‭the‬‭clipboard‬
‭will make it easy to paste it on an email, word processor, or some other software.‬

‭Random MODULE:‬

‭The‬‭random‬‭module‬‭is‬‭a‬‭built-in‬‭module‬‭to‬‭generate‬‭the‬‭pseudo-random‬‭variables.‬‭It‬‭can‬
‭be‬ ‭used‬ ‭to‬ ‭perform‬ ‭some‬‭actions‬‭randomly‬‭such‬‭as‬‭getting‬‭a‬‭random‬‭number,‬‭selecting‬‭random‬
‭elements from a list, shuffling elements randomly, etc.‬

‭Melakkal Road, Kochadai, Madurai 625 019, India +91 96557 77000‬ ‭[email protected]‬ ‭www.queenmira.com‬
‭- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -‬

‭9‬
‭String MODULE:‬

‭The‬ ‭string‬ ‭module‬ ‭contains‬‭several‬‭functions‬‭to‬‭process‬‭the‬‭standard‬‭Python‬‭string.‬‭The‬


‭string‬‭module‬‭contains‬‭some‬‭constants,‬‭utility‬‭functions,‬‭and‬‭classes‬‭for‬‭string‬‭manipulation,‬‭The‬
‭string module contains two classes Formatter and Template.‬

‭Melakkal Road, Kochadai, Madurai 625 019, India +91 96557 77000‬ ‭[email protected]‬ ‭www.queenmira.com‬
‭- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -‬

‭10‬
‭DESIGN WORK (DATA FORMAT, CONTEXT LEVEL‬
‭DIAGRAMS)‬

‭Melakkal Road, Kochadai, Madurai 625 019, India +91 96557 77000‬ ‭[email protected]‬ ‭www.queenmira.com‬
‭- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -‬

‭11‬
‭ALGORITHM‬

‭1. IMPORTS LIBRARIES‬

‭It‬ ‭imports‬ ‭the‬ ‭required‬ ‭libraries‬ ‭tkinter,‬ ‭CSV,‬ ‭string,‬ ‭pyperclip,‬ ‭and‬ ‭random‬ ‭in‬ ‭Python‬ ‭for‬ ‭the‬
‭program to function.‬

‭2. INITIALISES WINDOWS‬

‭●‬ ‭Tk() initialized tkinter which means the window created‬


‭●‬ ‭geometry() sets the width and height of the window‬
‭●‬ ‭resizable(0,0) sets the fixed size of the window‬
‭●‬ ‭title() set the title of the window‬
‭●‬ ‭Label()‬‭widget‬‭is‬‭used‬‭to‬‭display‬‭one‬‭or‬‭more‬‭than‬‭one‬‭line‬‭of‬‭text‬‭that‬‭users‬‭can't‬‭able‬‭to‬
‭modify.‬
‭●‬ ‭Root is the name which we refer to our window‬
‭●‬ ‭Text that we display on the label‬
‭●‬ ‭Font in which the text is written‬
‭●‬ ‭Pack organized widget in block‬

‭3. SELECT PASSWORD LENGTH‬

‭●‬ ‭Pass_len is an integer type variable that stores the length of a password.‬
‭●‬ ‭To select the password length we use Spinbox() widget.‬
‭●‬ ‭Spinbox()‬‭widget‬‭is‬‭used‬‭to‬‭select‬‭from‬‭a‬‭fixed‬‭number‬‭of‬‭values.‬‭Here‬‭the‬‭value‬‭from‬‭8‬
‭to 32‬

‭4. FUNCTION TO GENERATE PASSWORD‬

‭Pass_str is a string type variable that stores the generated password‬

‭Password is the empty string‬

‭Melakkal Road, Kochadai, Madurai 625 019, India +91 96557 77000‬ ‭[email protected]‬ ‭www.queenmira.com‬
‭- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -‬

‭12‬
‭●‬ ‭First‬‭loop‬‭will‬‭generate‬‭a‬‭string‬‭of‬‭length‬‭4‬‭which‬‭is‬‭a‬‭combination‬‭of‬‭an‬‭uppercase‬‭letter,‬
‭a‬ ‭lowercase‬ ‭letter,‬ ‭digits,‬ ‭and‬ ‭a‬ ‭special‬ ‭symbol‬ ‭and‬ ‭that‬ ‭string‬ ‭will‬ ‭store‬ ‭in‬ ‭password‬
‭variable.‬
‭●‬ ‭The‬‭second‬‭loop‬‭will‬‭generate‬‭a‬‭random‬‭string‬‭of‬‭length‬‭entered‬‭by‬‭the‬‭user-4‬‭and‬‭add‬‭to‬
‭the‬ ‭password‬ ‭variable.‬ ‭Here‬ ‭we‬ ‭minus‬ ‭4‬ ‭to‬ ‭the‬ ‭length‬ ‭of‬ ‭the‬ ‭user‬ ‭because‬ ‭we‬ ‭already‬
‭generate the string of length 4.‬

‭We‬ ‭have‬ ‭done‬ ‭this‬‭because‬‭we‬‭want‬‭a‬‭password‬‭that‬‭must‬‭contain‬‭an‬‭uppercase,‬‭a‬‭lowercase,‬‭a‬


‭digit, and a special symbol.‬

‭Now the password is set to the pass_str() variable.‬

‭●‬ ‭Button() widget used to display button on our window‬


‭●‬ ‭Command is called when the button is click‬
‭●‬ ‭Entry() widget used to create an input text field‬
‭●‬ ‭Textvariable used to retrieve the current text to the entry widget‬

‭Melakkal Road, Kochadai, Madurai 625 019, India +91 96557 77000‬ ‭[email protected]‬ ‭www.queenmira.com‬
‭- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -‬

‭13‬
‭SOURCE CODE‬

‭#importing Libraries‬

‭import csv‬

‭from tkinter import‬

‭import random, string‬

‭import pyperclip‬

‭###initialize window‬

‭root-Tk()‬

‭root geometry("400x400")‬

‭root.resizable(0,0)‬

‭root.title("QMIS-PASSWORD GENERATOR")‬

‭#heading‬

‭heading‬‭Label(root,‬‭text‬‭'PASSWORD‬‭GENERATOR',‬‭font‬‭'arial‬‭15‬‭bold).pack()‬‭Label(root,‬‭text‬
‭-QMIS", font='arial 15 bold').pack(side-BOTTOM)‬

‭###select password length‬

‭pass_label Label(root, text 'PASSWORD LENGTH', font='arial 10 bold).pack()‬

‭pass_len IntVar()‬

‭length Spinbox(root, from 8, to32, textvariable pass_len, width 15).pack()‬

‭#####define function‬

‭pass_str= StringVar()‬

‭with open("E:\\esv files\passl.csv",mode "w", newline="\n") as file2:‬

‭Melakkal Road, Kochadai, Madurai 625 019, India +91 96557 77000‬ ‭[email protected]‬ ‭www.queenmira.com‬
‭- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -‬

‭14‬
‭def Generator():‬

‭wtrcsv.writer(file2, delimiter','")‬

‭for x in range(100):‬

‭for x in range (0,4):‬

‭password-‬

‭random.choice(string.ascii_uppercase)+random.choice(string.ascii_lowercase)+random.choice(st‬

‭ring.digits)+random.choice(string.punctuation)‬

‭for y in range(pass_len.get()-4):‬

‭password password+random.choice(string.ascii_uppercase + string ascii_lowercase +‬

‭string digits + string.punctuation)‬

‭wtr.writerow([password])‬

‭###button‬

‭Button(root, text="GENERATE PASSWORD", command Generator) pack(pady-5)‬

‭Entry(root, textvariable pass_str).pack()‬

‭def Generator():‬

‭password="‬

‭for x in range (0,4):‬

‭password =‬

‭random.choice(string.ascii_uppercase)+random.choice(string.ascii_lowercase)+random.choice(st‬

‭ring.digits)+random.choice(string.punctuation)‬

‭for y in range(pass_len.get()-4):‬

‭Melakkal Road, Kochadai, Madurai 625 019, India +91 96557 77000‬ ‭[email protected]‬ ‭www.queenmira.com‬
‭- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -‬

‭15‬
‭password‬ ‭password+random.choice(string.ascii_uppercase‬ ‭+‬ ‭string‬ ‭ascii_lowercase‬ ‭+‬
‭string.digits + string.punctuation)‬

‭pass_str.set(password)‬

‭###button‬

‭Button(root, text="GENERATE PASSWORD", command Generator).pack(pady-5)‬

‭Entry(root, textvariable pass_str).pack()‬

‭########function to copy‬

‭def Copy_password():‬

‭pyperclip.copy(pass_str.get())‬

‭Button(root, text = 'COPY TO CLIPBOARD', command Copy_password).pack(pady-5)‬

‭#loop to run program‬

‭root.main loop()‬

‭Melakkal Road, Kochadai, Madurai 625 019, India +91 96557 77000‬ ‭[email protected]‬ ‭www.queenmira.com‬
‭- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -‬

‭16‬
‭INPUT & OUTPUT‬

‭Melakkal Road, Kochadai, Madurai 625 019, India +91 96557 77000‬ ‭[email protected]‬ ‭www.queenmira.com‬
‭- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -‬

‭17‬
‭ADVANTAGES OF PROJECT‬

‭1. PASSWORD SECURITY:‬

‭Having‬ ‭a‬ ‭weak‬ ‭password‬ ‭is‬ ‭not‬ ‭good‬ ‭for‬ ‭a‬ ‭system‬ ‭which‬ ‭demands‬‭high‬‭confidentiality‬
‭and‬ ‭security‬ ‭of‬ ‭user‬ ‭credentials.‬ ‭It‬ ‭turns‬ ‭out‬ ‭that‬ ‭people‬ ‭find‬ ‭it‬ ‭difficult‬ ‭making‬ ‭up‬ ‭a‬ ‭strong‬
‭password‬ ‭which‬ ‭is‬ ‭strong‬ ‭enough‬ ‭to‬ ‭prevent‬ ‭unauthorized‬ ‭users‬ ‭from‬ ‭memorizing‬ ‭it.‬ ‭Thus,‬ ‭a‬
‭password‬‭generator‬‭helps‬‭to‬‭generate‬‭a‬‭standard‬‭password‬‭which‬‭comes‬‭to‬‭meets‬‭all‬‭the‬‭criteria‬
‭of a strong password.‬

‭2. STRONG PASSWORD:‬

‭It saves the trouble of having to think of a strong password.‬

‭Melakkal Road, Kochadai, Madurai 625 019, India +91 96557 77000‬ ‭[email protected]‬ ‭www.queenmira.com‬
‭- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -‬

‭18‬
‭CONCLUSION‬

‭We‬ ‭have‬ ‭successfully‬ ‭developed‬ ‭the‬ ‭password‬ ‭generator‬ ‭python‬ ‭project.‬ ‭We‬ ‭used‬ ‭the‬
‭popular‬ ‭tkinter‬ ‭library‬ ‭for‬ ‭rendering‬ ‭graphics‬ ‭on‬ ‭a‬ ‭display‬ ‭window‬ ‭and‬ ‭we‬ ‭also‬ ‭learned‬ ‭about‬
‭pyperclip,‬ ‭string,‬ ‭csv‬ ‭and‬ ‭random‬ ‭library.‬ ‭We‬ ‭learned‬ ‭how‬ ‭to‬ ‭create‬ ‭buttons,‬ ‭input‬ ‭text‬ ‭field,‬
‭labels, and spinbox.‬

‭Melakkal Road, Kochadai, Madurai 625 019, India +91 96557 77000‬ ‭[email protected]‬ ‭www.queenmira.com‬
‭- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -‬

‭19‬
‭FURTHER DEVELOPMENT AREAS‬

‭●‬ ‭Taking‬ ‭opinions‬ ‭from‬ ‭the‬ ‭user‬ ‭or‬ ‭hints‬ ‭for‬ ‭getting‬ ‭a‬ ‭further‬ ‭stronger‬ ‭password‬ ‭with‬
‭desired characters,‬
‭●‬ ‭The strength checker displays the strength of the generated password to assure the user.‬

‭Melakkal Road, Kochadai, Madurai 625 019, India +91 96557 77000‬ ‭[email protected]‬ ‭www.queenmira.com‬
‭- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -‬

‭20‬
‭BIBLIOGRAPHY‬

‭●‬ ‭https://betterprogramming.pub/how-to-create-a-random-password- generator-in-python‬


‭●‬ ‭https://www.geeksforgeeks.org/generating-strong-password-using-python/‬
‭●‬ ‭https://dev.to/spaceofmiah/generating-random-password-in-python- practical-guide-amd‬

‭Melakkal Road, Kochadai, Madurai 625 019, India +91 96557 77000‬ ‭[email protected]‬ ‭www.queenmira.com‬
‭- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -‬

‭21‬

You might also like