Hello there!
I've just joined this Group, after having recently decided to try
solve again S. Singh's Cipher Challenge... (I know its quite dated now...)
I was blocked at Stage 7 few years ago (at my first attempt), but for
my second run I've finally been able to solve it, using home-made
tools (Excel VBA), dirty methods and a bit of luck...
Thus I'm now trying to solve Stage 8.
I've read many papers concerning the Enigma Cryptanalysis, including
Jim Gillogly paper (amazingly interesting for a novice like me!), and
I've found the corrected source code of Fauzan Mirza's enigma.c
program - I didn't feel able to write an Enigma simulator from scratch.
So my question (at last ! :o) concerns this enigma.c program.
I'm not sure to understand the use of the different initial parameters
used in it:
char notch[6]="QEVJZ";
char rings[3]={ 'A','A','A' };
char pos[3]= { 'A','A','A' };
I guess that pos[] give the current position of rotors, but I'm not
sure to understand the difference between the notch[] and rings[]
variables...
Is notch[] used to detail the notches of rotors, such as "after rotor
1 reaches the Q letter, step rotor 2" ?
If so, what's the use of the rings[] variable?
I'll continue to investigate this point, but any help would be
welcome! Well, if any of you remember this old Challenge! :o)
Regards,
Stéphane
PS : please excuse my poor English / mistakes, as English isn't my
native language...
Which one is used to