Cryptography Reference
In-Depth Information
recover more words from the parts not yet decrypted. If the percentage
of the ciphertext parts decrypted in this way is a given value, then the
attempt is deemed to have been successful, and subscrack exits by out-
putting both the key and the plaintext.
5. Otherwise, the last word is discarded, and the search continues.
The program is astonishingly surefire and fast on 'normal' texts. The main
problem of this tree search is that it sometimes tests too many possibilities.
After all, it is an optimization algorithm, and as such doesn't generally work
as a black box:
A hit is probable, but not guaranteed.
The computation time can fluctuate heavily.
The result is not always unambiguous (there can be more than one solu-
tion), and it is not always correct (the program doesn't understand context,
i.e., it can't make an intelligent choice of words).
Various parameters, such as minimum and maximum lengths of search patterns,
permitted percentage of non-decipherable letters, and maximum nesting depth,
decide on the success or failure and essentially on the computation time. Let's
look at a practical example: we want to decrypt an aphorism by Christian
Morgenstern with a length of 260 characters:
cmgvgpiimhdtibvgueehxmutmqjfmuzodtvmtrptcmgfqogomubedmgc
umfqogomubimxjibkdoqxbmtfpgqdecumvqtkmcueemgmtbuqxgmzotd
tvvmjqdbuibuibqdzokdvxmuzocmgvgdtcdtigmgfubkuvmtvmcqthmt
fppebcqivqtkmouteqxxmtfdmgcmfmttfugcumqjfmuzodtvmtutmutm
glouxpiplouizomtibgmtvmtmoamtfdmgcmt
On an Athlon 1700 PC, subscrack takes about four seconds to load the 'pre-
digested' dictionary and then computes for about 1.6 seconds. The following
appears to be a clear solution:
dergrossekunstgriffkleineabweichungenvonderwahrheitfuerd
iewahrheitselbstzuhaltenworaufdieganzedifferentialrechnu
nggebautististauchzugleichdergrundunsrerwitzigengedanken
wooftdasganzehinfallenwuerdewennwirdieabweichungenineine
rphilosophischenstrengenehmenwuerden
Search WWH ::




Custom Search