Oggi il nostro professore di programmazione ci ha sfidato a creare un programma di crittografia testuale: gli consegneremo un programma che codifica solo (non il codice sorgente), oltre a un testo cifrato generato da esso. Vinciamo se non può decodificare il testo cifrato dato. Se il programma utilizza una chiave o qualche altro parametro necessario per la decodifica del testo cifrato, dobbiamo fornirglielo.
Mi chiedo quali opzioni debba decifrare il mio ciphertext.
Prima di tutto, immagino che potrebbe decompilare il programma e scoprire il processo. Così ho deciso di farlo con PHP nel mio webserver.
La seconda cosa è, ovviamente, non dovrei usare metodi di crittografia conosciuti / popolari. Tutto quello che dovrebbe fare è provare ogni metodo (usando la chiave fornita).
Quindi si riduce a fare qualcosa di originale credo ... o no. Niente mi impedisce di utilizzare diversi algoritmi di crittografia popolari. Forse posso persino mutare la chiave ogni volta che applico uno degli algoritmi.
Ho visto questa domanda: La crittografia multipla è una buona idea? - e sembra che usare algoritmi di crittografia diversi non sia utile - ma nel mio caso mi sembra una buona idea: come potrebbe conoscere ho usato AES e poi BlowFish quindi qualcos'altro ecc. anche se ha la chiave necessaria? La mia idea è fattibile per questa sfida?