Rating: 1.0

I hope you like Java.

Have array "Base64SET" containing Base64 character set (a-z, A-Z, 0-9, +, /)
Have array "Allowed" containing the allowed character set (a-z, A-Z)
Loop 9999 times:
    - Generate two random strings with length {1, 2, 3, 4, 5, ..., 9999} from the "Allowed" array. (See below, I don't generate all 9999 pairs)
    - For the length of the generated string pair, check if the characters in each position match.
    - If matching, and are not padding (=), and are not already in the array, add them to the array "Matching"
    - Break this loop when an instance produces no matching character pairs.
For each character in the "Base64SET" array, check if that character exists in "Matching" array, if not add it to "Unused" array.
Print out the characters in the Unused array.
???.
Profit.

Source:
https://github.com/Volition21/TMCTF-Crypto500/blob/master/src/main/java/com/Volition21/Crypto500/Cry...

Original writeup (https://github.com/Volition21/TMCTF-Crypto500/blob/master/src/main/java/com/Volition21/Crypto500/Crypto500.java).