0% found this document useful (0 votes)
97 views

Password Checker

The document discusses the author's research on password security. It includes a timeline showing their research from November 14th to December 4th exploring topics like password entropy, brute forcing, hashing, and what makes a good password. Code snippets and diagrams are provided explaining how the author calculated entropy and structured their password checking loop to validate passwords meet various criteria before being accepted.

Uploaded by

api-607048551
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)
97 views

Password Checker

The document discusses the author's research on password security. It includes a timeline showing their research from November 14th to December 4th exploring topics like password entropy, brute forcing, hashing, and what makes a good password. Code snippets and diagrams are provided explaining how the author calculated entropy and structured their password checking loop to validate passwords meet various criteria before being accepted.

Uploaded by

api-607048551
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/ 56

I hate Java, I really do

//Password
Checker
Where I suffer day and night
to make this work

Luaisbetter.com
I hate Java, I really do

System.out.println(“Work Log”);

Timeline(Days);
November
14/11/2022 - Research (What makes a good password)
16/11/2022 - Research (What is encryption)
17/11/2022 - Research (Password Entropy)
22/11/2022 - First Draft
23/11/2022 - Research (Brute Forcing)
29/11/2022 - Research (Hash coding)

December
1/12/2022 - Research (Hash Coding) + Draft 2
2/12/2022 - Peer Review
4/12/2022 - Draft 3 + Finalization + Powerpoint

Luaisbetter.com
I hate Java, I really do

<Research>
A certain and definite article of which is a culmination
relating to a part that which is more whole between to the
individual of which you are listening to has researched
throughout a certain and definite article of which is days

Luaisbetter.com
I hate Java, I really do

String researchContent = new String();

/01 /Entropy /02 /Brute Forcing


(Every possible
(Randomness)
Combination)

/03 /Code Hashing /04 /Implementation


(Turning one String What makes a good
into another) password?

Luaisbetter.com
I hate Java, I really do

/01
/Password
Entropy
Aka. Password Randomness

Luaisbetter.com
I hate Java, I really do

/Password Entropy
- (Noun) A measurement of a password’s randomness

E = log2(RL)

E stands for password entropy.


R stands for possible characters within the password.
L stands for the number of characters in your password.

E > 72 is good 👍

// Reference: (OBE, Password entropy 2021)

Luaisbetter.com
I hate Java, I really do

/02
/Brute
Forcing
Aka. Every Possible Combination

Luaisbetter.com
I hate Java, I really do

/Brute Forcing

/Using AI /Each AI /Avoid this


Trying every Has different By making your
possible efficiency when password longer
combinations brute forcing with more entropy

// Reference: (Blocking brute force attacks N.D.)


Luaisbetter.com
I hate Java, I really do

/03
/Code Hashing
Aka. Converting Strings

Luaisbetter.com
I hate Java, I really do

/Code Hashing

/Idk what is code Hashing /I kind of get it, in a way


I tried to research but it
was too hard. When you take a string and
turn it into another value
I didn’t use code hashing for easier sorting
in my work lol.

// Reference: (freeCodeCamp.org, What is hashing? how hash codes work - with examples 2021) Luaisbetter.com
I hate Java, I really do

/04
/Implementation
How to make a good password :)

Luaisbetter.com
I hate Java, I really do

/What makes a good password (according to me)

/Have high entropy /Length


High entropy makes Longer Password makes it
the code harder to harder to brute force
guess (the time increases
exponentially)

/Variety in character /Not Common


Increases Entropy Not common lol

Luaisbetter.com
I hate Java, I really do

/My Brain Efficiency Chart


0 25 50 75 100

/Entropy /Code Hashing


I kind of Idk what it is.
understand it Don’t ask me

/Brute Force /Implementation


Here’s how much I understand each of my
research topic (out of 100%) I understand it I kinda
very well understand it

Luaisbetter.com
I hate Java, I really do

/How I
Implement codes

Luaisbetter.com
I hate Java, I really do

<Entropy>
How I use Entropy

Luaisbetter.com
I hate Java, I really do

/The most basic methods to calculate Entropy

//Use int for ease of calculation

Luaisbetter.com
I hate Java, I really do

/“A good entropy can shrink and grow” - Mozart

4 types of characters:
1. Lowercase Characters 26 letters
2. Uppercase Characters 26 letters Other initialized variables
3. Symbols 34 symbols
4. Numbers 10 numbers

// Reference: https://medium.com/asecuritysite-when-bob-met-alice/password-entropy-826b3be47261
Luaisbetter.com
I hate Java, I really do
“A good entropy can shrink and grow” - Mozart

Sort through the password one by one for each of the boolean variables

Luaisbetter.com
I hate Java, I really do
“A good entropy can shrink and grow” - Mozart

Where the magic happens

Luaisbetter.com
I hate Java, I really do
“A good entropy can shrink and grow” - Mozart

Where the magic happens

Luaisbetter.com
I hate Java, I really do

<MY LOOP>
Luaisbetter.com
I hate Java, I really do

/How I structured my loop

I:
- Set up a while (true) loop
- Break the loop whenever the password doesn’t
meet one of my requirements

Luaisbetter.com
I hate Java, I really do

/How I structured my loop

Why?

- This will prevent the program to check for other


criteria if one of the previous ones isn’t valid

Luaisbetter.com
I hate Java, I really do

/My Criterias

My “Good Password” Conditions

Luaisbetter.com
I hate Java, I really do

/My Good Password


//This picture is captured straight from my microsoft onenote

//Reference: (R/youshouldknow - YSK: Password best practices N.D)

Luaisbetter.com
I hate Java, I really do

Public static void Checklist(){ //chronological order

1. Common? 2. Common 2.0? 3. Complete?


Is it a common Does it include
Is the password
password with all the
a common one? special characters? characters?

4. Entropy? 5. Repetition? 6. No Spaces


Is it Are there any
randomized repeating NO SPACES
enough? letters?

Luaisbetter.com
I hate Java, I really do

<NO SPACES>
Luaisbetter.com
I hate Java, I really do

/No Spaces
I want to make my life easier (no space bar in password)

Luaisbetter.com
I hate Java, I really do

Mr. Task

/Is it a common
password?
Thank you Mr.Task for the code :D

Luaisbetter.com
I hate Java, I really do

/Common Password

I just borrow Mr.Task’s code


(with some change tho)

Changes:
- Return boolean (for ease of use)
- Name Change
- Longer List (999,999 words)

Luaisbetter.com
I hate Java, I really do

Opal

/Is it a common
password 2.0?
No substitutions

Luaisbetter.com
I hate Java, I really do

/Common Password 2.0

Some people substitute symbols for letters.

Example/
- p@ssw0rd
- $uperun!dentifi@ble
- Etc.

//We don’t want this

Luaisbetter.com
I hate Java, I really do

/Common Password 2.0


Here’s how I handled that

/*
I made another string that substitutes any
special characters (I only included a few tho)
*/

Luaisbetter.com
I hate Java, I really do

Opal

/All Characters?

Does it contains every type of


characters?

Luaisbetter.com
I hate Java, I really do

/Include all characters


Must have AT LEAST

Character Symbol Number


1 Uppercase 1 Symbol (Any) 1 Number (Any)
1 Lowercase

Luaisbetter.com
I hate Java, I really do

/Include all characters

Luaisbetter.com
I hate Java, I really do

/Include all characters

Luaisbetter.com
I hate Java, I really do

Opal

/Entropy

High enough?

Luaisbetter.com
I hate Java, I really do
We already went through this

Since you get disqualified for not having every type of character, only
length affects the entropy.

Luaisbetter.com
I hate Java, I really do

/Entropy

Luaisbetter.com
I hate Java, I really do

Opal

/Repetition

Repeat no more than 2 times

Luaisbetter.com
I hate Java, I really do

/Repetition

/First Time /Second Time /Third Time /NO MORE


The second time You failed of
The first time Third time’s
might be a it repeats 3
is okay the charm
coincidence times

Luaisbetter.com
I hate Java, I really do

/Repetition

The index starts at 2 because it I want to check 3 letters (starts at 0)

Luaisbetter.com
I hate Java, I really do

Opal

/That’s it

If you pass all that, you win!

Luaisbetter.com
I hate Java, I really do

/That’s it

Your password strength is determined by the entropy and


the qualifications

Luaisbetter.com
I hate Java, I really do

<Draft 1>
Experimenting with types of characters

<Draft 2>
Working with common passwords and entropy

<Draft 3>
Add specialized characters as substitution
and more

Luaisbetter.com
I hate Java, I really do

/Draft 1

Checks for every type of characters


- Uses points to grade points/4
- Check for repeating characters types (deduct points
for repeating)
- Use String to grade character types

Luaisbetter.com
I hate Java, I really do

/Draft 1
Use passConst to capture
character types (My first
hashcode implementation)

Ex/
Password = Mypass@123
passConst = ulllllsnnn

//Grade points based on


passconst

Luaisbetter.com
I hate Java, I really do

/Draft 1
Before: use types + After: Use specific
passConst characters

Luaisbetter.com
I hate Java, I really do

/Draft 2

- Can’t contain space

Luaisbetter.com
I hate Java, I really do

/Draft 2
First Entropy Calc Prototype
- Entropy is dynamic (doesn’t change with character types)
- Every possible character is 171 (fixed number)

Luaisbetter.com
I hate Java, I really do

/Draft 3
Specialized Characters

Luaisbetter.com
I hate Java, I really do

/Draft 3
Repeated Characters (Draft 2)

- Uses another index for the loop


- Multiple char variables

Luaisbetter.com
I hate Java, I really do

/Sources
Entropy
OBE, P. B. B. (2021, November 14). Password entropy. Medium.
Retrieved December 4, 2022, from
https://medium.com/asecuritysite-when-bob-met-alice/password-entr
opy-826b3be47261

Brute Forcing
Blocking brute force attacks. Blocking Brute Force Attacks |
OWASP Foundation. (n.d.). Retrieved December 4, 2022, from
https://owasp.org/www-community/controls/Blocking_Brute_Force_Att
acks#:~:text=A%20brute%2Dforce%20attack%20is,for%20a%20brute%2Dfo
rce%20attack

Luaisbetter.com
I hate Java, I really do

/Sources
Code Hashing
freeCodeCamp.org. (2021, April 28). What is hashing? how hash
codes work - with examples. freeCodeCamp.org. Retrieved December
4, 2022, from https://www.freecodecamp.org/news/what-is-hashing/

Implementation
R/youshouldknow - YSK: Password best practices. reddit. (n.d.).
Retrieved December 4, 2022, from
https://www.reddit.com/r/YouShouldKnow/comments/gzq3bq/ysk_passwo
rd_best_practices/

Luaisbetter.com
I hate Java, I really do

<THE END>
Questions?
Go to IHATEJAVA.COM

Luaisbetter.com

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy