1
$\begingroup$

I am wondering why people are using RSA keys when some types of double substitution ciphers seem to be just as secure if not better off.

By some types of double substitution ciphers I mean one Which expands the plaintext message like so:

A: aaa B: aab C: aac D: aba E: abb F: abc G: aca H: acb ect.

(And if there is an odd length the add a d to the ciphertext.)

Then collapses the newly made ciphertext into a new ciphertext like so:

aa: A ab: B ac: C ad: D ba: E bb: F bc: G bd: H ca: I cb: J cc: K cd: L

This method would render any method I know for deciphering codes useless, and I was wondering if there is a method I am missing or if this is actually a very strong method of encryption.

$\endgroup$
  • $\begingroup$ Without a key this is obfuscation, not encryption. $\endgroup$ – MickLH May 30 '16 at 3:47
  • $\begingroup$ @MickLH Ok, so this method would work as some communicable code but is useless when it comes to securing data. Right? $\endgroup$ – Peter Dwyer May 30 '16 at 3:54
  • $\begingroup$ I'm not sure what you mean by "communicable code", but this "double substitution" can be analyzed as a normal substitution. Every 2 characters in gives 3 out. (AA => aaa, aaa => aa, aa, aa => AAA... AB => aaa, aab => aa, aa, ab => AAB... etc) $\endgroup$ – MickLH May 30 '16 at 4:04
1
$\begingroup$

I am wondering why people are using RSA keys when some types of double substitution ciphers seem to be just as secure if not better off.

First of all, RSA is an asymmetric cipher while a substitution cipher is a symmetric cipher. Asymmetric ciphers are used to achieve different security needs, e.g. TLS authentication or non-repudiation of documents. Or, more closely related, the encryption for one specific person without that person having to hand you their private key.

So no matter how secure your cipher would be, it would still be a symmetric cipher and could therefore not replace RSA.

This method would render any method I know for deciphering codes useless, and I was wondering if there is a method I am missing or if this is actually a very strong method of encryption.

Bruce Schneiers law: "Anyone can invent a security system that he himself cannot break"

As already indicated, a cipher requires a key because of Kerckhoffs principle. An algorithm that doesn't require a key will be broken as somebody will likely leak the algorithm itself in time.

Even if there was a key, I don't think your scheme would even survive the most basic of attacks such as frequency analysis. More advanced algorithms would require multiple rounds, transposition etc.

As you don't include a nonce or random input to your cipher, your cipher would already be considered broken because identical plaintext would lead to identical ciphertext. This means you are leaking information about the plaintext. This is why stream ciphers or block cipher modes of operations require either a different key for each encryption process (notably RC4) or a unique/unpredictable nonce or IV.

To get any idea of the complexity you could take a look at the book that describes The Design of Rijndael (by the authors of Rijndael, which became AES).

| improve this answer | |
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.