Thank you for an interesting trip.
The logic of the work is as follows: the application asks you to enter a nickname, and then generates a password from it.
The logic of key generation: The application takes the entered nickname, converts the characters to a Unicode numeric value, and then adds the ordinal number of the character in the string. (It does not change the first character). BUT our key must contain 16 characters, after generating the key from the nickname, it adds the missing characters from the string - !\"#$%&'()*+,-./
My version of keygen is https://pastebin.com/QbcUzn2c |
==> |
It was interesting, although I didn't get to the bottom of the key.
According to my observations, only numbers should be used instead of N, and the format "12345-TOM-1234567-12345" is incorrect.
Next, I found the string "0D0A0C0F1C1A0A171C170C17160F191E", with it I collected the first working key: "17171-TOM-1717171-17171", then I started experimenting with the key, came to the conclusion that the maximum allowable key value: "17171-TOM-2222222-22222", changing the first 5 digits leads to the wrong key.
Perhaps he performs operations only with the first 5 digits, and then checks them.
Correct! Here is your flag: WPVUF@PMFMVMLUCD
My keygen version: https://pastebin.com/WQs3UVB0 |
==> |