#kryptos #morse #aivirai
I would like to share some information about #Kryptos that I haven`t seen anywhere yet, and I strongly believe will lead someone to final solution (as always):)
First one that I wanted to share is connected to the idea that Mr. Sanborn could easily deceive us and make decryption a bit more difficult, even without the knowledge of any advanced math or crypto algorithms by himself.
The idea is following (in pseudo-code):
Input:
1) zeros_and_ones: string of 0 and 1
2) plain_text: plain text to encrypt
2) key: key
3) basic_algorithm: selected cryptography algorithm which uses key. algorithm has two methods:
3.1) basic_algorithm.encrypt(position, letter, key)
3.2) basic_algorithm.decrypt(position, letter, key)
The idea for new_algorithm is following:
new_algorithm.encrypt(zeros_and_ones, position, plain_text, key):
letter = plain_text[position]
if (zeros_and_ones[position] == 0):
return basic_algorithm.encrypt(position, letter, key)
else:
return basic_algorithm.decrypt(position, letter, key)
similar approach to decryption:
new_algorithm.decrypt(zeros_and_ones, position, encrypted_text, key):
letter = encrypted_text[position]
if (zeros_and_ones[position] == 1):
return basic_algorithm.encrypt(position, letter, key)
else:
return basic_algorithm.decrypt(position, letter, key)
To sum up in one sentence: it says that in order to produce encrypted letter you either must encrypt it or decrypt – which approach to use is based on the zeros_and_ones string
Why did I write about this idea?
If you get the top rows from morse code:
E DIGETAL EEE
T IS YOUR
EE VIRTUALLY E
EE SHADOW EE
LUCID EEE
remove the debris (Es)DIGETAL
T IS YOUR
VIRTUALLY
SHADOW
LUCID
correct the mistake (DIGETAL -> DIGITAL) and you have exactly 97 zeros and ones (dashes and dots in morse code).
This leads us to Part II (soon).
Greg.