A soup of characters. 🍅🌽🍲🍰
- JavaScript
- TypeScript
- Python
- C#
- Java
- C++
// Set the maximum text length:
const MAX_LENGTH = 4;
// Set the characters to be used:
const CHARACTERS = "0123456789";
// Create an array of all combinations,
// Total of c^(n!), c = |CHARACTERS|, n = |MAX_LENGTH|
// For example: ["0", "1", "2", ... , "9997", "9998", "9999"];
Originally, this was one of the earlies pieces of software I wrote, in Visual Basic. To illustrate how quickly it is to run through all 4-digit PIN codes. :no_entry_sign: :lock: :key: :unlock: :heavy_check_mark:
Now, password systems are properly protected with reCAPTCHA, multi-factor authentication, password-entry limits and more. It is still interesting to show how quickly a password can be brute-forced.
Hive Systems have a great cybersecurity infographic for this system.
In 2022:
In 2023:
In 2023 using dedicated AI hardware:
Remember to celebrate World Password Day on the first Thursday of May. 📆
- 🔒 Your passwords are unique across all services.
- 🔒 Your passwords aren't all "password".
- 🔒 You are using multi-factor authentication where possible.
- 🔐 Avoid publishing API credentials, especially keys, to public repositories.