Skip to content

sultaniman/pwc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

83 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PWC

Tests CodeQL

If you need to remember dozens of passwords without having to remember all of them then with password cards you can have it. Each password card is a set of grids with random letters and digits on it has 8 rows which have different colors, columns mapped to different symbols. Everything needed is to remember a combination of a symbol and a color or an index of row, then compose the letters and digits of your passwords from there.

🔨 Build

$ go build -o pwc

💾 Installation

$ go get -u github.com/sultaniman/pwc

🖥️ CLI Use

$ ./pwc classic -h

Example card

❓ How it works

$ ./pwc explain
Alphabet

               Header symbols: ■□▲△○●★☂☀☁☹☺♠♣♥♦♫€¥£$!?¡¿⊙◐◩�
                      Numbers: 0123456789
                 Alphanumeric: 0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
     Alphanumeric and symbols: 0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ@#$%!&(MISSING)*<>?€+{}[]()/\

Algorithm

1. Render the first row with shuffled "■□▲△○●★☂☀☁☹☺♠♣♥♦♫€¥£$!?¡¿⊙◐◩�",
2. Iterate over the rest of the rows and for each randomly selected letter we shuffle the entire alphabet
    a. If the card should include symbols then
       use the alphanumeric and symbols alphabet for every even character
       and use the alphanumeric alphabet for the odd columns,
    b. If the card should have a digits area then
       use the numeric alphabet for the lower half of the rows 5-8.

Row colors

White #ffffff, Gray #c0c0c0, Red #ffc0c0, Green #c0ffc0, Yellow #ffffc0, Blue #c0c0ff, Magenta #ffc0ff, Cyan #c0ffff

Row colors

  1. White #ffffff,
  2. Gray #c0c0c0,
  3. Red #ffc0c0,
  4. Green #c0ffc0,
  5. Yellow #ffffc0,
  6. Blue #c0c0ff,
  7. Magenta #ffc0ff,
  8. Cyan #c0ffff.

P.S. it was inspired by https://www.passwordcard.org/en.

✨ 🚀 ✨