A cryptosystem is a means of encrypting data and decrypting data. Several of these, as well as programs to break past them, were used in Code Lyoko.
What is a Cryptosystem?
A cryptosystem is a set of means of encryption and decryption. There are two general families of this: symmetric cryptography and asymmetric cryptography.
Symmetric cryptography is the simpler one. In symmetric cryptography, there is one key. A key is the variation used on the text being encrypted. For example, in a simple caezar cypher of 1, an encrypter would take the string "PERSON" and it would become "QFSTPO", incrementing each character by one. To decrypt, we would simply subtract with the same key "1" to get the plain text. Since the same key is used for both encryption and decryption, this is symmetric.
Asymmetric cryptography is more complex to perform, but simple in concept. In Aysmmetric cryptography, the key used for encryption is not the same key that is used for decryption. This is usually accomplished by math that is simple to explain but hard to execute, such as prime factorization of absurdly high numbers. This has two keys: one used for encryption, and one used for decryption. These are also called the public and private keys. Something that is encrypted with the public key can not be easily decrypted with the public key. However, if something is encrypted with the public key, it can be relatively easily decrypted with the private key. These are always in pairs. Usually, one can not take the public key from one pair and swap it with another, and get anything even remotely usable. Here's an example of Asymmetric cryptography in action:
Ulrich and Yumi are exchanging some information about their date via text message, since they're in different classes. Sissi, being a crazed stalker, asks Herb to steal the date information to conspire against Yumi. Yumi and Ulrich both know that these are in effect. They have two options: Symmetric and Asymmetric cryptography. If they used symmetric cryptography, all Herb has to do is steal the key, and he can decrypt any of their texts that he intercepts. They know that plan is out. Yumi, being the sane one, goes to Jeremie and gets an Asymmetric key pair. She then texts Ulrich the public key. Herb intercepts this. Ulrich then uses the public key to encrypt his messages. Herb intercepts the encrypted texts, but can't make anything out from them, because he needs the other key to break the encryption. He can use the key he stole to Encrypt, but not Decrypt. Yumi gets the encrypted text, and has the private key that matches the public key, and she didn't give it to ANYONE. She then uses the private key to easily decrypt the text, and reads Ulrich's message, knowing that she's the only one who has that key. They then go on their date at the agreed time and location, knowing that their message may have been intercepted, but it's uselesss without the private key. Sissi then gets angry at Herb for what she perceives as incompetence. Ulrich and Yumi are 1 second away from a kiss, only to get interrupted by a call from Jeremie about a activated tower.
What is Hashing?
Hashing is similar to encryption. The difference between cryptosystems and hashing is that hashing is one-way. Text can be hashed, but un-hashing is impossible. For example, let's say we had a hashing algorithm that divides each character by 2. The text is "BDF". If that hashing system is used, the text would hash to "ABC". It might seem like it could be unhashed, but with the same hashed text, the original could be "CEG", which would also hash to "ABC". Hashing is one-way. Hashing is used in passwords and file verification.
How does Cryptography differ from passwords?
Cryptography is modifying the text in a reversible way so that only the authorized people can understand it. Passwords are means of saying that someone is who they say they are. The two can intersect, but they are completely different concepts.
How does Cryptography relate to Quantum Computing?
Quantum Computers are computers that take advantage of the oddities of quantum physics. For reasons that are beyond the scope of this article, they can be used to deduce asymmetric keys very quickly. At the same time, quantum computers can be used for more effective encryption, also for reasons that go beyond the scope of this article "beyond the scope meaning that it requires complex math, a knowledge of particle physics, and patience".
Cryptography was a major issue in Code Lyoko several times. When Franz Hopper's Diary was first found, it was encrypted on a set of optical disks. Jeremie commented that it would take years to decrypt it, by trying all the combinations. Since it was a matter of years, and the diary was from 1994, it was probably encrypted with the Blowfish standard. Since the Lyoko Warriors had the Supercomputer, a quantum computer, at their disposal, Jeremie put together a program to deduce the decryption key to convert the diary into plaintext in Revelation. The program to perform the decryption bugged up, and was unstoppable. X.A.N.A. tried to take control of it, since in doing so, it would gain access to the rest of the Lyoko Warriors' files. Franz himself eventually took control of the program and finished the decryption.
Later, in many occurrences in season 4, Jeremie used the supercomputer to break through the passwords on the replika's gates. This was not a matter of encryption, but of reverse-hashing.
Real world systems and applications
There are hundreds of known encryption standards and systems that use them. Since this article is merely a supplementary text to Code Lyoko, this list only covers note-worthy cases.
Analog Cryptosystems No Longer In Use
- Caezer Cypher, a very simple cryptosystem from the Roman Empire.
- Enigma, a cryptosystem used by the axis powers in WW2.
- Lucifer. This was invented by IBM, and is the basis of all modern encryption standards. It's no longer in use
- DES. Data Encryption Standard. This was invented in the 70s for the US government for encryption. It's ineffective by modern standards and has since been replaced by better ones. Some of its derivatives include Triple DES, LOKI, and ICE.
- The RC* Family. This includes RC2, RC3, RC5, RC6, and a few others. They don't have many flaws, but are infrequent.
- IDEA, Blowfish, and BassOmatic. No longer in use due to known flaws.
- GOST. A Soviet Clone based on DES. No longer in use. It also has a hash algorithm based on it.
- The CAST family. Originally popular in Canada, this one is no longer in use due to a flaw in the later versions.
- Camellia. This algorithm has never been broken with less than brute force, is popular in Japan, has comparable maximum security to AES, and has a lower minimum.
- AES. The Advanced Encryption Standard. This is the most popular modern encryption standard.
- RSA. This is an asymmetric encryption standard. It's based on the fact that prime factorization is slow.
- DSA. This is an asymmetric encryption standard. It's based on complex geometry.
- SSL. Secure Socket Layering. Similar to TLS, but weaker. No longer in use outside of old versions of Internet Explorer.
- TLS. Transmission Layer Security. Used for various network applications. It uses certificates, Symmetric Cryptography, and Asymmetric Cryptography. 99% of https traffic uses this. The algorithm itself has no known flaws, but the implementations have had problems, such as heartbleed.
- The PGP Family. Pretty Good Privacy. This is a family of standards and programs for encrypting Email. There are several inter-compatible implementations, due to patent laws.