I’m creating a program with key access for determined term. I’ve made a code which will generate a key (password) with 16 characters length. The following information is encoded:
– initial date 6 characters, ex. 010120;
– term up to 3 characters length, ex. 1 or 10 or 365 days;
– term length identificator, ex. 1 or 2 or 3, depending on term number length;
– 6 randomly generated symbols: lower/uppercase letters and numbers.
These characters are scattered in the password string using some logic (to be decoded by password verification code).
Encoding is simply based on ASCII codes of symbols.
Example of coding letters: a b c d e f = ascii codes 126 127 128 129 130 131 = 771 = 7 7 1 = 15. 15 is the control sum. Thus generating a key my code loops through random codes ascii until control sum will be equal 15 – this is the generated letter part of password. This control sum is after used to verify is the password is correct. Digits for date are encoded simply by adding constant value to ascii number code (48 to 57) to get letter.
Here are examples of keys (used another control sum):
3Y6CEecb0MYc1e1c, oPFjeefcAD8m2dmd, bF5bGfdb4dud2ejd, ClEigfdbydcd2ezd
My question is about the “strength” of this password: how easily it could be hacked, or date and term part discovered?