hcrypto.engines
Class SubstitutionKey

java.lang.Object
  extended by hcrypto.cipher.HistoricalKey
      extended by hcrypto.engines.SubstitutionKey

public class SubstitutionKey
extends HistoricalKey

Represents a key for a Simple Substitution cipher. The key is entirely represented by a keyword, which which is inserted at the beginning of a SubstitutionAlphabet. For example, the keyword "ralph" would begin the substitution alphabet and the remaining letters would would follow in their natural progression: "ralphbcdefgijkmnoqstuvwxyz".

See also:


SubstitutionEngine
Alphabet


Field Summary
static java.lang.String DEFAULT_KEY_DESCRIPTOR_PROMPT_STRING
          A prompt for the keyword
static java.lang.String DEFAULT_KEYWORD_STRING
          A default keyword.
 
Constructor Summary
SubstitutionKey()
           
 
Method Summary
 java.lang.String getAlgorithm()
          Returns the algorithm name "Substitution".
 void init(java.lang.String keyspec)
          Creates a SubstitutionKey with the specified keyspec.
 void init(java.lang.String keyword, Alphabet alpha1, Alphabet alpha2)
          Initializes the SubstitutionKey given a keyword and one or more alphabets.
 
Methods inherited from class hcrypto.cipher.HistoricalKey
getAlphabet, getBlocksize, getCipherKey, getCTAlphabet, getInstance, getKeyDescriptorPrompt, getKeyword, getPlainKey, initKey, initKey, invertKey, printAlphabets, removeDuplicateChars
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEFAULT_KEY_DESCRIPTOR_PROMPT_STRING

public static final java.lang.String DEFAULT_KEY_DESCRIPTOR_PROMPT_STRING
A prompt for the keyword

See Also:
Constant Field Values

DEFAULT_KEYWORD_STRING

public static final java.lang.String DEFAULT_KEYWORD_STRING
A default keyword.

See Also:
Constant Field Values
Constructor Detail

SubstitutionKey

public SubstitutionKey()
Method Detail

init

public void init(java.lang.String keyspec)
          throws java.lang.Exception
Creates a SubstitutionKey with the specified keyspec.

Specified by:
init in class HistoricalKey
Parameters:
keySpec - takes the form "keyword/alphabet", i.e. "76TrombonesLEDTHEBIGPARADE/az+AZ+09" for example, which would be mapped into the instance variables keyword as a String with the value of "76TrombonesLEDTHEBIGPARADE", and alphabet as a String with the value "azAZ09".
Throws:
java.lang.Exception

init

public void init(java.lang.String keyword,
                 Alphabet alpha1,
                 Alphabet alpha2)
          throws java.lang.Exception
Initializes the SubstitutionKey given a keyword and one or more alphabets.

Specified by:
init in class HistoricalKey
Parameters:
keyword - -- a string version of the keyword
alpha1, - alpha2 -- Alphabets for plain/ciphertext respectively. May be identical.
Throws:
java.lang.Exception

getAlgorithm

public java.lang.String getAlgorithm()
Returns the algorithm name "Substitution".

Specified by:
getAlgorithm in class HistoricalKey