3
$\begingroup$

Codes are not to be confused with ciphers. It is known that all known ciphers are theoretically breakable except the one-time pad and this isn't what the question is about.

Some cryptographic codes are akin to inventing one's own secret language, along with new words, new expressions, and new grammar. I'll refer to these strong codes as "secret languages". Note that when all speakers of an ancient language dies, it becomes a secret language.

It seems to me that cracking secret languages is beyond the realms of cryptanalysis. After extensive search, I haven't found a single secret language that was ever cracked without any known plaintexts such as finding available translations. Are there any ways to crack or even crypto-analyze secret languages only using raw text written in that secret language? It is obviously possible with ciphers because they operate on the syntax level, but secret languages operate on abstractions and high-level meanings.

If the answer is yes, then why is cracking some ancient secret languages is a really hard thing to do unless one finds a translation? I challenge you to crack the The Na'vi language only by reading excerpts written in Na'vi. Also, can you point to one example of a secret language that was cracked only by looking at the text of that language?

If the answer is no, why isn't this used in modern computer cryptography? I presume it's because computers have a hard time manipulating meanings, abstractions and grammar and are better suited for manipulating syntax, letters and bits, and hence only ciphers are practical. But any more info would be appreciated.

A similar question was asked here but the two answers were contradictory, and it was closed, probably because it was focused on ancient languages and was considered a history question.

$\endgroup$
5
  • $\begingroup$ It is used in modern cryptography, see Code talkers, although in this case the language isn't completely secret because a few people know of it. But then, a code is completely useless if noone knows how to translate and from it. $\endgroup$ Apr 30, 2015 at 8:50
  • 1
    $\begingroup$ In some sense, ciphers are secret codes: A block cipher may be interpreted as a (huge) family of bijections on blocks, from which communicating parties select one by agreeing on a secret key. Hence, there are definitely secret codes which aren't easily breakable. Besides this, your question is slightly ill-formed: Of course, all codes are theoretically breakable (since there exists a decoding method); but whether humans can effectively find this method without knowing it beforehand is a whole different question (which I feel to be more about history and/of linguistics than cryptography). $\endgroup$
    – yyyyyyy
    Apr 30, 2015 at 11:08
  • $\begingroup$ @DaanBakker, Is it completely secure from those who do not know it? $\endgroup$ Apr 30, 2015 at 15:22
  • $\begingroup$ @HelloWorld, given enough samples of it I think eventually you could find patterns in any secret language. Imagine that before you get bombed you always intercept a cryptic message with béésh łóó in it somewhere. It wouldn't be much of a stretch to assume it meant something like "do a bomber run", essentially making the code useless. That said, during World War 2 for example the Navajo code was never cracked, so it was secure in a practical way. $\endgroup$ Apr 30, 2015 at 16:29
  • $\begingroup$ @DaanBakker That's a good point, but the question assumes no other info is available, only text. $\endgroup$ May 1, 2015 at 14:08

1 Answer 1

4
$\begingroup$

The answer is "irrelevant", because of a wrong assumption about security.

Today, ciphertext only attacks are not considered any more for real security, because it is much too weak. Known plaintext attacks are the very least to be considered, and that breaks any construction of codes or obscure languages. The reason for this is simple: Laymen might only see the ciphertext/encoded text. But specialists will find ways to get additional information to enable known plaintext or chosen plaintext attacks (for symmetric encryption. Asymmetric has a different playing field)

This is very similar to the argument "security through obscurity", as it is still practiced quite often. Sure, on the first glance it seems a good idea not to give an attacker information about your system. And then later you realize: If that is the only security mechanism, you're screwed when he finds out anyway.

Edit:

In order to avoid further discussions, the answer to

Are there any ways to crack or even crypto-analyze secret languages only using raw text written in that secret language?

is "No". Under these assumptions (no knowledge about the code), you can't break a single encoded message.

Second question:

If the answer is no, why isn't this used in modern computer cryptography?

Because your reasoning stops being valid after the first message send or if your assumption is no longer true. Multiple messages start showing correlations, which make single words translatable, then often used statements, then sentences, ...

Additionally, today's cryptography does not consider "ciphertext only" attacks to be a useful argument any more. If you present a new symmetric cipher which is only secure against such attacks, it gets labeled "not secure". Today at the very least, security must hold against known plaintext attacks. And at that point, no classical code can withstand.

Finally, you said in the comments "Codes are just ciphers with a very large key that always gets reused.". This is just wrong. Codes are not ciphers. The two are quite distinct and have their own properties. If anything, you could argue that ciphers are codes, extended with real security. Surely not the other way around.

$\endgroup$
7
  • 1
    $\begingroup$ Codes are just ciphers with a very large key that always gets reused. The same message transmitted twice will encode to the same result. Portions of the message will do the same. Decoding ancient languages tends to be difficult due to the very small amount of surviving text. For example, Linear A has so little surviving writing that all of it could fit on a standard piece of paper. Most of what does survive is small fragments, single letters or words. Cryptanalysis techniques need large amounts of text, so they don't easily apply. $\endgroup$ Apr 30, 2015 at 14:10
  • 1
    $\begingroup$ Unfortunately, you make the wrong conclusions there. While it is true, that for old languages there are problems translating them, this has no relevance to anything we want to actually use. The fact that we know very little about a language makes its usage impossible. No one can use that language. And there is a fundamental difference between codes and ciphers: Security. It is nonexistent in codes. They do not posses that property on their own. They rely only on the fact that the codebook is unknown, and nothing else. Using any code often automatically makes it unsafe to use. $\endgroup$
    – tylo
    Apr 30, 2015 at 14:23
  • $\begingroup$ And therefore, the argument still stands: If you consider ciphertext only and very few samples, codes are fine. But that is a fundamentally wrong definition of security in today's world, where we AT LEAST need security against known plaintext attacks. $\endgroup$
    – tylo
    Apr 30, 2015 at 14:26
  • $\begingroup$ This answer is useful but is lacking a bit: What if the attacker never knows the secret language? You're just saying "oh, he will know it anyways". $\endgroup$ Apr 30, 2015 at 15:25
  • $\begingroup$ Also, the answer to what? the main question is are there any ways to crack or even crypto-analyze secret languages only using raw text written in that secret language?, "irrelevant" doesn't seem to fit in here. $\endgroup$ Apr 30, 2015 at 15:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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