The
E-Cipher (E: optimized for Efficiency) is a balance between too easy and too
difficult an algorithm. It is just right,
maximizing the product of the ease of implementation and the security achieved.
If an algorithm is 20% easier but 50% less secure or 20% more secure
while being 50% more difficult to implement, you get less bang for your buck and
a lower efficiency. Also with
greater complexity comes a greater possibility for mistakes (in a hand performed
technique), tending toward failure to successfully communicate to the intended
recipient and unsuitability to wearing a crown for efficiency.
Easy
E-Cipher (EE-Cipher)
The E-Cipher done without a second ‘Pre’ key.
This version may be acceptable for most private communications, such as a letter or email where privacy or confidentiality is the issue but high security from professional attack is not a must.
Extra
Easy E-Cipher (E3-Cipher)
The E-Cipher done without Pre-key or doing the
Re-Keying operations.
This version may be well suited for personal
communication at work, school, or public places, as well as short letters, and
perhaps IR beamed messages where minimal security is needed and the information
being transmitted is not of great significance.
Too
hard, Extended for Greater Security
If
you reuse your keys and there is a possibility of the plain-text from a message
being compromised or predicted then a cryptanalyst could perform a plain text
attack on your messages and possibly effectively determine the set of keys you
are using; and thus any message sent using that key pair. For security against
this you would use one of the variations which thwart plain-text attacks.
Double
message Encryption E-Cipher (DE E-Cipher)
To do this one would start by encrypting the plain
text message.
Then treat the obtained cipher text as if it were
plain text, which had been connected to the end of the original text. So you
continue using the current Cipher-Alphabet in its current state applying the
encryption process to this appended text as if it had been the second half of
the message in the first place. You then transmit only the second length of
cipher text generated. Obviously this process will take twice as long.
To decrypt, you duplicate the provided cipher text on
to the end of itself; decrypt as usual; take the resulting second half and start
anew with it acting as the input cipher text to be decrypted.
Double
character Substitution E-Cipher (DS E-Cipher)
To perform this addition substitution step: You line up the prekey alphabet, alone with the regular current cipher-alphabet, at the same position relative to an a-z alphabet. For letter substitution you first find a substitute letter in the prekey-alphabet which is aligned with the letter from the plain text which you are encoding, take that letter and continue as if it had been the plain text letter, finding what would be the proper cipher-alphabet substitution letter for it. This then becomes part of the cipher text output of the algorithm. Note there are no other operations (like shifting) between finding these two letter substitutions. [an example]
Further, to circumvent a minor weakness, if any keyed alphabet would begin with the letter ‘A’ move the ‘A’ to the end of that alphabet.
Combined
Double Substitution and Double Encryption (Quad E-Cipher or QEC)
Here we do the combined operations of the DE and DS
variations on the E-Cipher. This cipher algorithm would have the greatest
security by compounding the complexity faced by the would-be cryptanalyst, yet it can
still be done with just pencil and paper, although it will take more than an
hour per 100 characters (perhaps two; for with more steps extra care is needed).
If my life depended on it, and all I could use was pencil and paper or a
text terminal, this is the cipher algorithm I would use, being extra careful and
double checking my work. Don’t forget that long peculiar keys are needed to
thwart a brute force attack.
| E-Cipher Overview | The E-Cipher | Beyond E-Cipher |
| Site Home | email: Site Administrator | Ras - Pi.com ©2000
Examples:
Starting
with the a-z and current substitution alphabet lined up as usual,
additionally
line up the prekey Alphabet at the same position relative to the a-z.
Now
to encode plaintext to cipher text, do two substitution operations
a-z
-> PreKey Alphabet and
then a-z -> current
Substitution Alphabet.
This
should be easy enough and not too error prone.
Pre-Key: sparklet
-> XEJKQLABWPURCTMNIVGDOFYZSH
Key:
bluesauce ->
SJRQCTLBEFUOVXKYZNHWGAMPID
+---------------------------------------------------------+
|
|
| Double
Substitution encrypting "hello":
|
|
|
| abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz
|
|
XEJKQLABWPURCTMNIVGDOFYZSH
|
| abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz
|
|
SJRQCTLBEFUOVXKYZNHWGAMPID
|
| h->N,n->A
|
|
|
| abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz
|
|
XEJKQLABWPURCTMNIVGDOFYZSH
|
| abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz
|
|
SJRQCTLBEFUOVXKYZNHWGAMPID
|
| e->F,f->M
|
|
|
| abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz
|
|
XEJKQLABWPURCTMNIVGDOFYZSH
|
| abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz
|
|
SJRQCTLBEFUOVXKYZNHWGAMPID
|
| l->O,o->P
|
|
|
| abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz
|
|
XEJKQLABWPURCTMNIVGDOFYZSH
|
| abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz
|
|
SJRQCTLBEFUOVXKYZNHWGAMPID
|
| l->F,f->Y
|
|
|
| abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz
|
|
XEJKQLABWPURCTMNIVGDOFYZSH
|
| abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz
|
|
SJRQCTLBEFUOVXKYZNHWGAMPID
|
| o->C,c->S
|
|
|
| hello
|
| AMPYS
|
|
|
+---------------------------------------------------------+
| E-Cipher Overview | The E-Cipher | Beyond E-Cipher |
| Site Home | email: Site Administrator | RonMiller ©1999-2013