ESTREAM facts for kids
The eSTREAM project was like a big contest organized by the EU to find the best new secret codes, called stream ciphers. These special codes are used to keep information safe when it's sent over the internet or stored on devices. The project started in November 2004 and finished in April 2008. Its main goal was to find strong and fast stream ciphers that could be used widely in different ways.
Contents
What Kind of Secret Codes Were They Looking For?
The eSTREAM project looked for secret codes that fit into two main groups, called "profiles":
- Profile 1: These were codes designed for software. Think of apps on your computer or phone. These codes needed to be super fast at encrypting (making secret) and decrypting (unmaking secret) lots of data.
- Profile 2: These were codes for hardware. Imagine tiny computer chips inside devices like smart cards or sensors. These codes had to be very small and use little power, because those devices have limited space and battery.
Some codes also offered "authentication," which means they could prove that the message hadn't been changed. But later in the project, they focused only on the encryption part to make the codes even faster.
The Best Secret Codes (eSTREAM Portfolio)
After a lot of testing and analysis, the eSTREAM project chose a group of top-performing secret codes. This group is called the "eSTREAM portfolio." These codes are free for anyone to use!
Here are the codes chosen for each profile:
Profile 1 (for software) | Profile 2 (for hardware) |
---|---|
HC-128 | Grain |
Rabbit | MICKEY |
Salsa20/12 | Trivium |
SOSEMANUK |
One of the codes, Rabbit, used to have a patent, which is like a special right that limits who can use it. But in October 2008, it was made free for everyone. Another code, F-FCSR, was first chosen for Profile 2, but later removed because experts found ways to break its code.
How the Project Worked (Phases)
The eSTREAM project had different stages, called "phases," to carefully test all the submitted secret codes.
Phase 1: Initial Checks
This first phase was all about looking at every secret code that was submitted. Experts checked them based on:
- Security: How hard was it to break the code?
- Performance: How fast did it work compared to other codes?
- Simplicity: Was the code easy to understand and use?
- Flexibility: Could it be used in different situations?
They also made sure the codes for software (Profile 1) were faster than a well-known standard code called AES. This phase ended in March 2006.
Phase 2: Deeper Dive
In August 2006, Phase 2 began. In this phase, some codes were chosen as "Focus Phase 2 algorithms." This meant they were extra interesting, and experts were encouraged to study them even more closely to find any weaknesses or ways to make them better. Other codes were still considered valid candidates.
Phase 3: Final Selection
Phase 3 started in April 2007. Many codes were still being considered for both profiles. For Profile 1 (software), some of the candidates included:
- CryptMT
- Dragon
- HC
- LEX
- NLS
- Rabbit
- Salsa20/12
- SOSEMANUK
For Profile 2 (hardware), some candidates were:
- DECIM
- F-FCSR
- Grain
- MICKEY
- Moustique, Pomaranch
- Trivium
Phase 3 ended in April 2008 with the announcement of the final chosen codes for the eSTREAM portfolio, which are the ones listed above.
All the Submitted Codes
Many different secret codes were submitted to the eSTREAM project. Here's a quick guide to understand their status:
Key | |
---|---|
P | In the eSTREAM portfolio (the final chosen ones) |
Was in the portfolio, but later removed | |
3 | Made it to Phase 3 |
F | Was a "Focus Phase 2" code (got extra attention) |
2 | Made it to Phase 2 |
A | An "archived" code (not actively considered anymore) |
M | Included a way to check if the message was changed (authentication) |
pat | Had a patent (might need a license to use) |
Used to have a patent, but now it's free to use |
Codes in the eSTREAM Portfolio
These are the secret codes that were officially chosen as the best ones:
Profile 1 (software) |
Profile 2 (hardware) |
---|---|
128-bit key | 80-bit key |
HC-128 | Grain v1 |
Rabbit | MICKEY 2.0 |
Salsa20/12 | Trivium |
SOSEMANUK | - |
Some of these codes also have versions that use longer "keys" (the secret part of the code) for even stronger security:
Profile 1 (software) |
Profile 2 (hardware) |
---|---|
256-bit key | 128-bit key |
HC-256 | - |
- | MICKEY-128 2.0 |
Salsa20/12 | - |
- | - |
Keep in mind that a newer version of Grain (Grain-128a) exists, but it's not part of the official eSTREAM portfolio.
Here's a list of the codes in the eSTREAM portfolio, along with their creators:
Cipher | Profile 1 (software) |
Profile 2 (hardware) |
Properties | Submitters |
---|---|---|---|---|
Grain | PF | Martin Hell, Thomas Johansson and Willi Meier | ||
HC-256 (HC-128, HC-256) | PF | Hongjun Wu | ||
MICKEY (MICKEY 2.0, MICKEY-128 2.0) | PF | Steve Babbage and Matthew Dodd | ||
Rabbit | P | 2 | Martin Boesgaard, Mette Vesterager, Thomas Christensen and Erik Zenner | |
Salsa20 | PF | 2 | Daniel J. Bernstein | |
SOSEMANUK | P | Come Berbain, Olivier Billet, Anne Canteaut, Nicolas Courtois, Henri Gilbert, Louis Goubin, Aline Gouget, Louis Granboulan, Cédric Lauradoux, Marine Minier, Thomas Pornin and Hervé Sibert |
||
Trivium | PF | Christophe De Cannière and Bart Preneel |
Codes No Longer in the Portfolio
One code, F-FCSR, was initially chosen but later removed because experts found ways to break it.
Cipher | Profile 1 (software) |
Profile 2 (hardware) |
Properties | Submitters |
---|---|---|---|---|
F-FCSR (F-FCSR-H v2, F-FCSR-16) | Thierry Berger, François Arnault and Cédric Lauradoux |
See also
- AES process
- CAESAR Competition – Another competition for designing secure encryption methods
- NESSIE
- CRYPTREC