- This is a password generator and manager.
- Generate strong password by simple string.
- Generate different passwords by the same string.
- Choose a simple password as Main Password.
- Click the Add button in the top left corner.
- Fill in the form. User Name is account name, Platform is the platform of the account, for example, gmail.
- Click Save button in the top right corner.
- You can see your account info in main page. Click Detail button.
- Input your Main Password and click Gen, you will see a string show up. It is the generated password and you can use it as the password for your account.
- The generated password is related to the User Name, Platform, Nonce Offset and Main Password.
- Remember your Main Password. Main Password will not be saved.
- You can backup and restore data in settings page.
flowchart TD
A["(UserName+Platform+MainPwd).UTF8"];
B[Hash Value];
C[Random Number Sequence];
D[Generated password];
A -- SHA256 --> B;
B -- ChaCha20 (Key = Hash Value, Nonce = Slice of Hash Value) --> C;
C -- Some Algorithm * --> D;
- Pick a byte from Random Number Sequence, mod 4, to decide character set (up letters, low letters, numbers, special character)
- Pick a byte from Random Number Sequence, mod the length of character set, get a character. (But if the byte is too big, it will be discarded.)
- All characters join, get generated password.
Related code files: rust/src/api/calculate_password.rs