The Goals We Have Met
The listings of the '
programs.p' should be used in conjunction with this
index of all programs, their input/output requirements and their authors.Last edited: Friday June 25, 2004
Copyright © 1996-2014 Stuart Prescott
programs.p' should be used in conjunction with this
index of all programs, their input/output requirements and their authors.Last edited: Friday June 25, 2004
Copyright © 1996-2014 Stuart Prescott
Mono-alphabetic Substitutions
ShiftFreq.pby Brett AveryInput:
- standard input(redirected <) of
the most frequent letter
Output:infile- containing the text to be translatedoutfile- contains translated textcaesar_n.pby Stuart PrescottInput:
- standard input(keyboard) key
Output:infile- containing text to be translatedoutfile- contains text which has been translatedsubstHTML.pby Stuart PrescottInput:
- standard input(keyboard) of menu
Output:infile- containing text to be translatedsubsttable- containing the substitution table. Comments may be made in substtable using braces ({comment}). Unknown letters may be signified using a question mark ('?'). Such unknowns will be arbitrary allocated an unused letter. This is denoted in the text by a capital letter.outfile- contains text which has been translatedfreq.pby Stuart PrescottInput:
- standard input(redirected <) - menu prompts
Output:engfreq- standard English frequenciesinfile- the file to be analysedsubsttable- possible substitution table sorted by letter frequency2letter.pby Stuart PrescottInput:
Output:infile- the file to be analysednletterwords- contains each 2 lettered word in the text and (if it occurs more than once) its frequencystring.pby Michael ShuterInput:
- standard input(redirected <) user info
Output:infile- the file to be analysedoutfile- analysis detailsstringDist.pby Jack DermodyInput:
Output:infile- the length of the analysis string and the file to be analysedThe Vigenére Cipher
the quick brown fox jumpedhel lohel lohel loh ellohebmq chqhw ngwbz rdf ogyemiencipvig.pby David GroganInput:
- standard output(screen) of the user info.
-
Output:infile- the text to be encryptedoutfile- the encrypted textvigdecip.pby David GroganInput:
- standard output(screen) of the user info.
-
Output:infile- the text to be decryptedoutfile- the decrypted textvig.pby David GroganInput:
-
Output:infile- the text to be analysedfreq_var_n.pby Stuart PrescottInput:
- standard input(redirected <) - menu prompts
Output:engfreq- standard English frequenciesinfile- of the file to be analysedsubsttable- substitution table(s) sorted by letter freqsummary- a summary of each of the nth letter analyses and their ratingfreq_n.pby Stuart PrescottInput:
- standard input(redirected <) - menu prompts
Output:engfreq- standard English frequenciesinfile- of the file to be analysedsubsttable- substitution table sorted by letter freqfreq_const_n.pby Stuart PrescottInput:
- standard input(redirected <) - menu prompts
Output:infile- of the file to be analysedvigenereby Stuart PrescottInput:
- standard input(keyboard or redirected <) of menu responses
- whatever file(s) are to be analysed
Output:Rotations
The rotation (in its simplest form) is R(x) = x. This is effectively a Vigenére cipher with a keystream of
abcdefg...xyz.In more complex forms the Rotation function may be a polynomial or a Fibonacci relation. The general form of a Fibonacci relation is:
where:
x is the position of the letter within the document
a, b, m, n are constants
(Use a to encode, -a to decode)
rotation.pby Chris BoshuizenInput:
- standard input(screen or redirected <) of the Rotation coefficient
-
Output:infile- the text to be translatedoutfile- the translated textwhere: R(1) = R(2) = 1.
(Use a to encode, -a to decode)
fibonacci.pby Chris BoshuizenInput:
- standard input(keyboard) of the rotation coefficient
Output:infile- the file to be translatedoutfile- the translated text.rotations.menby Chris Boshuizen and Jack DermodyInput:
- standard input(keyboard or redirected <) of menu responses
- whatever file(s) are to be analysed
Output:AutoKey Encryption
AutoKey.pby Brett AveryInput:
- standard input (keyboard or redirected <) of the Key.
-
Output:infile- the text to be encryptedoutfile- the encrypted textSkyTail Cipher
- Definition of the SkyTail cipher
- The text is translated from columns of characters to rows
of characters and then broken up into words.
- Programs to implement a SkyTail cipher
- Encryption using the SkyTail cipher
- standard output(screen or redirected >) of the user info
-
- Decryption using the SkyTail cipher
- standard output(screen or redirected >) of the user info
-
- A script to link all these packages for SkyTail ciphers
- standard output(screen or redirected >) of menus.
- whatever file is the product of the translation
Enigma Encryptionencipsky.pby David GroganInput:
-
Output:infile- the text to be encryptedoutfile- the encrypted textdecipsky.pby David GroganInput:
-
Output:infile- the text to be decryptedoutfile- the decrypted textskytailby Jack DermodyInput:
- standard input(keyboard or redirected <) of menu responses
- whatever file(s) are to be translated
Output:- Definition of the Enigma Variations (not Elgar's . . .)
- The Enigma encryption methods were developed
during the 19th century. The German implementation of this system
in WWII consisted of an electro-mechanical machine
which allowed the user to type in the message on a keyboard and the
translated text was then written out.
- Programs to crack the Enigma encryption
- Encryption/Decryption using the Enigma Variations (without the
substitution - see Monoalphabetic Substitutions)
- standard output(screen or redirected >) of prompts
-
- Encryption/Decryption using a different Enigma Variations (without the
substitution - see Monoalphabetic Substitutions)
- standard output(screen or redirected >) of prompts
-
- Decrypting/Encrypting/Solving the unsubstituted Enigma.
- standard output(screen or redirected >) of the user info
-
- A script to implement a full Enigma Encryption (ie Substitution, Enigma, Substitution)
- standard output(screen or redirected >) of menus.
- whatever file is the product of the translation
- enigmasummary - summary log of the process
Plain-Text AttacksThe machine used 3 rotors which had the numbers 1..26 on them. These wheels turned the same way the wheels on an odometer turn (ie each time the first wheel completes a revolution, the next wheels moves round one place . . .)
A monoalphabetic substitution was also placed over the text.
This variation allows the user to set up 4 wheels (the last one is only useful on very long documents) where the numbers on the wheels are in any order and may be repeated.
Allowing the user to choose whether or not to operate on HTML tags.
enigma.pby Stuart PrescottInput:
- standard input(keyboard or redirected <) of menu
-
- enigmawheels - four rows of 26 numbers for the wheels
Output:infile- the text to be encryptedoutfile- the encrypted textAllowing the user to choose whether or not to operate on HTML tags.
enigvar.pby Michael ShuterInput:
- standard input(keyboard or redirected <) of menu
-
- wheeldata - up to 400 numbers for the wheels
Output:infile- the text to be encryptedoutfile- the encrypted textsolenig.pby Michael ShuterInput:
- standard input (keyboard) of wheel refinements.
Output:infile- the text to be decryptedwheeldata- contains the information on the contents of the wheelsoutfile- the (partially)decrypted textSESby Stuart PrescottInput:
- standard input(keyboard or redirected <) of menu responses
- enigmawheels - four rows of 26 numbers for the wheels
- substtable1 - 1st letter substitution table
- subattable2 - 2nd letter substitution table
- whatever file(s) are to be translated
Output:diffe.pby Michael ShuterInput:
- standard input (keyboard or redirected <) of menu
-
-
Output:infile1- the text to be comparedinfile2- the text to be comparedoutfile- the letter differencesWritten by Stuart Prescott for and on behalf of the group of
Brett Avery
Christopher Boshuizen
Jack Dermody
David Grogan
Stuart Prescott
Michael Shuter
Copyright © MCMXCVI Stuart Prescott