Se Final Report1 PDF
Se Final Report1 PDF
INTRODUCTION
With growing technology, everything has relied on data and securing these data is the main
concern. Passwords are meant to keep the data safe that we upload on the Internet. An easy
password can be hacked easily and all the personal information can be misused. In order to
prevent such things and keep the data safe, it is quite necessary to keep our passwords very
strong.
The Password generator tool creates a random and customized password for users that helps
them to create a strong password which provides greater security. While there are many
examples of "random" password generator programs available on the Internet, generating
randomness can be tricky and many programs do not generate random characters in a way that
ensures strong security. A common recommendation is to use open source security tools where
possible since they allow independent checks on the quality of the methods used. Note that
simply generating a password at random does not ensure the password is a strong password,
because it is possible, although highly unlikely, to generate an easily guessed or cracked
password. In fact, there is no need at all for a password to have been produced by a perfectly
random process: it just needs to be sufficiently difficult to guess.
Random passwords can be generated manually, using simple sources of randomness such
as dice or coins, or they can be generated using a computer.
1
While there are many examples of "random" password generator programs available on the
Internet, generating randomness can be tricky and many programs do not generate random
characters in a way that ensures strong security. A common recommendation is to use open
source security tools where possible since they allow independent checks on the quality of the
methods used. Note that simply generating a password at random does not ensure the password
is a strong password, because it is possible, although highly unlikely, to generate an easily
guessed or cracked password. In fact, there is no need at all for a password to have been
produced by a perfectly random process: it just needs to be sufficiently difficult to guess.
A password generator can be part of a password manager. When a password policy enforces
complex rules, it can be easier to use a password generator based on that set of rules than
to manually create passwords. Long strings of random characters are difficult for most people
to memorize. Mnemonic hashes, which reversibly convert random strings improve into more
memorable passwords, can substantially the ease of memorization. As the hash can be
processed by a computer to recover the original 60-bit string, it has at least as much information
content as the original string.
2
Chapter 2
LITERATURE REVIEW
• The 2005 Password Multiplier scheme of Halder man, Waters and Fel-ten, computes a
site-specific password as a function of a long-term user master password, the web site
name, and the user name for the user at the web site concerned.
• Wolf and Schneider’s 2006 Password Sitter [22] scheme generates a site-specific
password as a function of a long-term user master password, the user identity, the
application/service name, and some configurable parameters.
• Passpet, due to Yee and Sitaker and also published in 2006, takes a very similar
approach to SSP, i.e. the site-specific password is a function of a long-term user master
password and a user-chosen name for the web site known as a pet name.
3
• Each pet name has an associated icon, which is automatically displayed to the user and
is intended to reduce the risk of phishing attacks.
• ObPwd, due to Mannan et al. , first surfaced in 2008. It takes a somewhat different
approach by generating a site-specific password as a function of a user-selected (site-
specific) object (e.g. a file), together with a number of optional parameters, including
along-term user password (referred to as a salt), and the web site URL.
4
2.2 FUTURE OF PASSWORDS
Passwords are currently integral to security measures. That has been true for many years now.
However, passwords cause many problems. They are hard to remember, and we are required
to know too many of them—sometimes even hundreds. In addition, they can be stolen and
leaked on the dark web. Those two sentences combined cause even more trouble.
When you need to know many hard-to-remember passwords—after all, the simple ones are
easy to crack via brute force attacks you might be inclined to take shortcuts. That might
be password reuse or relying on risk storage methods to keep track of all your credentials.
Indeed, passwords have become the single biggest threat to online security. The increasing
complexity of passwords leads to people reusing them, hackers are becoming more adept at
stealing them, and the data found online makes it increasingly profitable to commit
cybercrimes. This is a recipe for disaster, and something needs to be done for there to be a
secure future of passwords.
If all of this weren’t worrisome enough, companies are using more and more cloud and online
services, which require their employees to share login credentials across a greater ecosystem
of software, all of which is vulnerable to attacks.
Despite all this, usernames are now often just your email address, meaning hackers only need
to find your password since the username is intrinsically linked to you. So what is the future of
passwords? Well, different experts have different opinions, and it is hard to say who will be
proven right. Our guess is that it will be a combination of some or all of the solutions described
in this article, as well as some truly unexpected technological breakthroughs.
In our quest to become more secure, passwords become less and less easy to remember.
Let team password take care of securely remembering your passwords while you focus on
growing a successful business!
5
2.3 CHALLENGES TO RANDOM PASSWORD GENERATOR
Concerned about your online privacy? Use the TextMagic Secure Password Generator to
instantly generate personalized and strong passwords for your online accounts. Here’s how you
can use our random password generator:
Do you want to make a URL shorter? Well, don’t worry because we’ve got you covered! Here’s
how you can use our link shortener:
Step #1: In order to generate your random password you must first select your criteria for
generation. You must first choose the length of your password (between 5 and 16 characters).
Next you can choose to include symbols, numbers, lowercase characters, or uppercase
characters.
6
Step #2: The complex password generator will show you the security level of your password
as you add or remove options. To ensure the privacy of your online accounts it is recommended
that you create a very strong password. This can be done by increasing the length of the
passphrase or by including special symbols and numbers.
Step #3: Click on the ‘Generate password’ button to create your random password. You can
edit options or click on the button again to generate a new password. Click on the ‘copy
password’ button to save it to your clipboard. We also recommend creating a master list with
all your passwords in a plain text file and encrypting it with GPG, disk encryption or 7-Zip.
A strong password is essential for protecting your personal and professional assets online.
Security experts recommend users generate secure passwords for every website and account.
Sadly, most online users choose bad passwords (e.g. their name, birthday, child’s name, or a
predictable sequence of numbers) for all their accounts. These types of passwords are extremely
easy to crack and once an account is compromised, there’s nothing the user can do about it. On
the other hand, manually generating strong passwords can be a tedious task. This is exactly
why you should use a random password generator online!
We created the online password generator because we care about your online privacy. We also
know how painful it is to lose precious information or, worse, your assets, to hackers. To ensure
that this never happens to you, we built this simple, yet extremely powerful, passphrase
generator.
7
A strong password generated online can help you protect the security of your personal and
professional email accounts, social network accounts, WiFi encryption, banking and financial
and savings accounts.
A passphrase generator will save you the trouble of having to think about a strong password
yourself.
Strong password generation is done client-side. You select your criteria for generating the
password, and the generation process happens on your computer, with JavaScript. This means
that your passwords are never shared with us or other users.
A strong password should be at least 15 characters long and contain the following elements:
8
How can I keep my account secure?
‘Free Internet’ is a concept that we usually take for granted. The Internet is teeming with
dangerous things like cyber-crime, hackers, Trojans, phishing, scams, online threats and
viruses. Here are a few suggestions that will help you improve the security of your accounts
and systems:
3. Don’t let your browsers store passwords because they can be revealed easily.
10. Bookmark websites such as PayPal or bank account portals to avoid scams.
11. Don’t simply close your browser when you finish an operation. Also log out of your online
accounts.
No. We never store passwords generated by our customers. In any case, they are generated
directly on your computer using JavaScript, not on the internet.
9
Chapter 3
PROPOSED SYSTEM
To build this project we will use the basic concept of python and libraries –
• Tkinter is a standard GUI library and is one of the easiest ways to build a GUI
application.
• pyperclip module allows us to copy and paste text to and from the clipboard to your
computer.
• The random module can generate random numbers
• string module contains a number of functions to process the standard python string.
To install the libraries we can use pip installer from the command line
10
pip install random
PSEUDO CODE
password=uppercaseLetter1+uppercaseLetter2+lowercaseLetter1+lowercaseLetter2+digit1+d
igit2+punctuationsign1+punctuationsign2
shuffle (password)
11
3.1 TYPES AND STRENGTH OF PASSWORD GENERATED
12
Desired Arabic Hexadec Case Case Case Case ASCII All Dicew
passwor numer imal insensitive insensitive sensit sensit printab extended are
d als Latin alphanum ive ive le ASCII Word
entropy alphabet eric Latin alpha charact Printable list
H alpha nume ers character
bet ric s
32 bits 10 8 7 7 6 6 5 5 3
40 bits 13 10 9 8 8 7 7 6 4
64 bits 20 16 14 13 12 11 10 9 5
80 bits 25 20 18 16 15 14 13 11 7
96 bits 29 24 21 19 17 17 15 13 8
128 bits 39 32 28 25 23 22 20 17 10
160 bits 49 40 35 31 29 27 25 21 13
192 bits 58 48 41 38 34 33 30 25 15
224 bits 68 56 48 44 40 38 35 29 18
256 bits 78 64 55 50 45 43 39 33 20
1024 bits 309 256 218 199 180 172 156 132 80
13
1 2 3 4 5 6
1 a b c d e f
2 g h i j k l
3 m n o p q r
4 s t u v w x
5 y z 0 1 2 3
6 4 5 6 7 8 9
14
3.2 Reasons Why You Should Code a Password Generator in Python
Random-Password-Generator
On a typical day in your life, you’ll visit numerous websites – from e-commerce websites to
learning and coding platforms. Most of the websites require you to log in with credentials. This
is a repetitive task that you can automate using a Python script.
Coming up with strong passwords that meet security constraints can be challenging; trivial
passwords that are not strong are susceptible to security attacks.
You can use Python to programmatically generate secure passwords. This lets you run the script
to generate passwords as needed—without worrying about the password being secure.
If you’re a beginner Python programmer, you should build projects to hone your skills and
showcase your programming expertise through a portfolio.
In addition to a simple Python script, you can customize it further, and publish it as a PyPI
package. You can also add a graphical user interface using libraries such as Tkinter,
and much more!
15
3.3 How to Code a Password Generator in Python
As a first step, let’s import the secrets module. This module is built into the Python standard
library, so you can import it
The next step is to define the alphabet. Alphabet denotes the set of all characters that we’ll
consider for password generation. Here, we want it to contain the following: lowercase and
uppercase letters and special characters.
You can customize the password generation by checking if it meets certain constraints.
A random password generator is a software program, hardware device, or online tool that
automatically generates a password using parameters that a user sets, including mixed-case
letters, numbers, symbols, pronounceability, length, and strength.
There are three kinds of random number generators that help make your new passwords:
16
3.5 Use of random password generator
To prevent sophisticated hackers from getting into your accounts, you need to use a random
password generator to keep your accounts safe. The password generator will create dozens of
random passwords consisting of numbers, letters, and symbols that even the most skilled
hackers cannot guess. Safe password generators make use of cryptographic entropy or
randomness. Avoid using the most common security questions and answers to make a password
strong. It would be best to never use the same password for various important accounts.
Random password generators use passwords that contain at least 16 characters, one uppercase
letter, one number, one special symbol, and one lowercase letter. When creating passwords,
people often use phone numbers, social security numbers, postcodes, ID card numbers, house
numbers, and birthdays -- all of which are easy to guess.
If using a free password generator, do not grant permissions to any web browser to save your
passwords, because they often are breached quickly.
Avast random password generator makes securing your account a breeze. You can generate
random strong passwords instantly on this page. That’s how it works:
• It lets you choose password length and present a checklist of characters options to create
unbreakable random passwords. You can set Avast's predefined or selected metrics to
generate a random password and copy it to your clipboard to improve the security of
any online account.
• Its diverse pool of lowercase characters, upper case characters, numbers and special
characters allows Avast's auto password generator to create unpredictable random
passwords.
• Whether you are creating a password for games, social media accounts, personal emails,
or bank accounts, Avast's user-friendly design and ability to create random passwords
in no time combine to make the best random password generator available.
• Each random password generated occurs due to robust cryptographic algorithms that
render locally in your browser -- using your computer's own processor -- and without
transmitting anything over the internet.
17
Fig 3.5.1: Automated password generator
18
3.6 Implementation
Import modules
Initialized Window
Define FunctionsSteps
1. Import Libraries
import pyperclip
2. Initialize Window
root = Tk()
root.geometry("400x400")
root.resizable(0,0)
19
Label() widget use to display one or more than one line of text that users can’t able to
modify.
pass_len = IntVar()
Spinbox() widget is used to select from a fixed number of values. Here the value from 8 to
32
def Copy_password():
pyperclip.copy(pass_str.get())
20
3.7 Data flow diagram(DFD):-
A data flow diagram (DFD) maps out the flow of information for any process or system. It uses
defined symbols like rectangles, circles and arrows, plus short text labels, to show data inputs,
outputs, storage points and the routes between each destination. Data flowcharts can range from
simple, even hand-drawn process overviews, to in-depth, multi-level DFDs that dig
progressively deeper into how the data is handled. They can be used to analyze an existing
system or model a new one. Like all the best diagrams and charts, a DFD can often visually
“say” things that would be hard to explain in words, and they work for both technical and
nontechnical audiences, from developer to CEO. That’s why DFDs remain so popular after all
these years. While they work well for data flow software and systems, they are less applicable
nowadays to visualizing interactive, real-time or database-oriented software or systems.
Random password generator, which will be highly flexible in terms of length of the password
and the used characters set. The algorithm will be implemented in Scilab and also as an in-page
application.Passwords are critical for cyber security. A good password must have at least 8
random characters in length and should contain lower case letters, upper case letters, numbers
and at least one special character.
For a greater understanding on how the random password generator works, let’s start from its
logical diagram.
21
Fig 3.7.1: DFD Diagram
22
3.8 Use case diagram(UCD):- In the Unified Modeling Language (UML), a use case
diagram can summarize the details of your system's users (also known as actors) and their
interactions with the system. To build one, you'll use a set of specialized symbols and
connectors. An effective use case diagram can help your team discuss and represent:
• Goals that your system or application helps those entities (known as actors) achieve
23
CONCLUSION
Here we are completed with our project using Python. With these steps, we have successfully
created a random password generator project using python. We used popular tkinter library to
rendering graphics in our display window and we also learned about pyperclip and random
library.
To generate cryptographically secure passwords, you should use the secrets module and not
the random module.A strong password should be sufficiently long and should be random in
that it cannot be easily predicted or generated. It should be a combination of uppercase and
lowercase letters, digits, and special characters.
Python ships with a built-in string module that provides all letters, digits, and special characters
in the constants ascii_letters, digits, and punctuation, respectively. Use the syntax:
string.constant to access these string constants. We can use the above constants to define an
alphabet (a set of all characters) for password generation.
Once you’ve defined an alphabet, you can use secrets.choice() to sample a random character
from it. To repeat this for the length of the password, you can use a for loop. We learned how
to create buttons, input textfield, labels, and spinbox. In this way, we successfully created our
password generator python project.
24
REFERENCES
Websites:
https://www.python.org/
https://www.geeksforgeeks.org/
https://www.wikipedia.org/
https://github.com/
IEEE papers:
https://ieeexplore.ieee.org/
25
26