# Power encryption

A **stream cipher** , **stream cipher** or **flow cipher** ( English *stream cipher* ) is a cryptographic algorithm for symmetric encryption , in which individual characters of the plain text with the characters of a key stream ( XOR in bits ) are linked. The keystream is usually a pseudorandom string derived from the key. With self-synchronizing stream ciphers, not only the key but also parts of the message are included in the calculation of the keystream.

## application

In contrast to the block cipher, stream encryption does not depend on the fact that enough data to be encrypted has accumulated until it has reached the size for an input block of a block cipher, but can immediately translate every plaintext character into an encrypted output character.

This character or bit can then immediately be transmitted to the recipient via the *insecure channel* (insecure in the sense of being interceptable).

Stream ciphers are therefore particularly suitable for real-time transmissions (e.g. mobile communications).

## Working method

### Synchronous

A synchronous stream encryption generates the key stream independently of the plain or ciphertext. The Output Feedback Mode (OFB) of block ciphers is an example of a synchronous stream cipher. For a more efficient design, the key stream generator of synchronous stream ciphers is often designed as a linear feedback shift register (LFSR). LFSR can be easily implemented in hardware, are fast, and produce pseudorandom sequences with good statistical properties.

### Self-synchronizing

In contrast to synchronous stream ciphers, with a self-synchronizing stream cipher, the keystream depends on the previous encrypted bits. An example of this is the Cipher Feedback Mode (CFB) of block ciphers.

## Attacks on power encryption

If an attacker has both the plaintext and the ciphertext, he can reconstruct the keystream. Further messages that are encrypted with this key stream can therefore be decrypted at least as long as there are bits in the key stream. Exactly this gap occurs when encrypting wireless networks using WEP .

The most important cryptanalytic attacks against LFSR are the correlation attack and the algebraic attack. The correlation attack forms linear approximations to the nonlinear function. The algebraic attack exploits the properties of sparse polynomials.

## Examples

Stream ciphers that can be efficiently implemented in software are, on the one hand, the OFB and the CFB modes of block ciphers. In addition to these, there are proprietary stream ciphers such as RC4 , SEAL , A5 / 1 or the Bluetooth standard E0.

Also, the scrambling for 1000BASE-T is achieved by a flow cipher.

## eSTREAM

The eSTREAM project identified new stream encryption methods for future standards in three phases between October 2004 and May 2008. It distinguishes between two profiles: Profile 1 are stream ciphers for software applications, Profile 2 are procedures for hardware with limited resources.

The final portfolio is composed as follows:

- Profile 1: HC-128 , Rabbit , Salsa20 / 12 and SOSEMANUK ;
- Profile 2: F-FCSR-H v2, Grain v1, MICKEY v2 and Trivium .

In the revision of September 2008, F-FCSR-H was removed from the portfolio due to security deficiencies.

## literature

- Alfred J. Menezes, Paul C. van Oorschot, Scott A. Vanstone:
*Handbook of Applied Cryptography.*CRC Press, Boca Raton FL et al. a. 1996, ISBN 0-8493-8523-7 , pp. 181-222. -
Bruce Schneier :
*Applied Cryptography. Protocols, algorithms and source code in C.*Addison-Wesley, Bonn a. a. 1996, ISBN 3-89319-854-7 , pp. 425-482 (*information security*).

## Web links

- eSTREAM project
- Solitaire algorithm by Bruce Schneier
- Klaus Pommerening:
*Bitstream Encryption*, Department of Mathematics at Johannes Gutenberg University (PDF, 590 kB)