Skip to main content

Questions tagged [stream-cipher]

A stream cipher is an encryption algorithm which encrypts arbitrary length plaintext, using a key. Some stream ciphers generate a keystream from only the key, which is then XOR-combined with the plain text, others feed back plaintext or ciphertext into the algorithm to create the keystream.

Filter by
Sorted by
Tagged with
24 votes
4 answers
6k views

Is it feasible to build a stream cipher from a cryptographic hash function?

A few years ago I devised a symmetric-key system that worked like so: ...
John Gietzen's user avatar
  • 1,505
21 votes
1 answer
35k views

How to attack a "many-time pad" based on what happens when an ASCII space is XORed with a letter?

I've already sent my correct solution to a homework exercise from Dan Boneh's Introduction to Cryptography class on Coursera: "Let us see what goes wrong when a stream cipher key is used more ...
sunrise's user avatar
  • 321
61 votes
4 answers
126k views

Difference between stream cipher and block cipher

I read that A typical stream cipher encrypts plaintext one byte at a time, although a stream cipher may be designed to operate on one bit at a time or on units larger than a byte at a time. (...
Ravindra Bagale's user avatar
20 votes
2 answers
2k views

Can I use HMAC-SHA1 in counter mode to make a stream cipher?

Say I have an embedded device which is only capable of doing HMAC-SHA1 transformations (that device is, in fact, a YubiKey). Would it be secure to feed it like a block cipher in counter mode to get a ...
xxxxxxxxx's user avatar
  • 558
5 votes
1 answer
3k views

Decrypting Ciphertext with partial Key Fragment using LFSR and Berlekamp-Massey

Edit Does the state register (the LFSR) always have to remain with 16 bits (I'm assuming yes). If so, are we shifting the register right by one (lfsr>>1) ...
Juxhin's user avatar
  • 53
86 votes
11 answers
11k views

Is modern encryption needlessly complicated?

RSA, DES, AES, etc., all use (relatively) complicated mathematics to encrypt some message with some key. For each of these methods, there have been several documented vulnerabilities found over the ...
Ozzah's user avatar
  • 977
18 votes
4 answers
3k views

Can you make a hash out of a stream cipher?

A comment on another question made me wonder about something: Assume you're on a rather constrained platform — say, a low-end embedded device — with no built-in crypto capabilities, but ...
Ilmari Karonen's user avatar
11 votes
2 answers
1k views

Definition of a CSPRNG

I am interested in what conditions are necessary and sufficient to define a cryptographically secure pseudo-random number generator (CSPRNG). Wikipedia lists two defining characteristics: It ...
Dave White's user avatar
14 votes
3 answers
5k views

Converting a stream cipher into a block cipher

The well-known Counter-Mode (CTR) mode of operation for a block cipher essentially converts any block cipher into a stream cipher. Is there a way to do the reverse? In other words, given a "good" ...
Fixee's user avatar
  • 4,168
6 votes
1 answer
1k views

What is the significance of IV in stream ciphers like Trivium?

In Trivium cipher, an 80-bit key and 80-bit IV (initialization vector) are used initially to set up the initial state. I would like to know, Role of IV in stream cipher? Can we make IV a secret ...
Ans's user avatar
  • 73
-2 votes
2 answers
953 views

Relationship between a key stream having a high entropy and whether it is cryptically secure in a stream cipher

Hi i am trying to build a key stream generator for my homemade stream cipher.The key stream output has a close to maximum entropy value and a large periodicity. What does it take for this generator to ...
Christian Shelton's user avatar
22 votes
7 answers
19k views

What is the difference between a stream cipher and a one-time-pad?

A (synchronous) stream cipher is an algorithm which maps some fixed-length key to an arbitrary-length key-stream (i.e. a sequence of bits): $C : \{0,1\}^k \to \{0,1\}^{\infty}$. This key-stream is ...
Paŭlo Ebermann's user avatar
13 votes
3 answers
4k views

What is the PRG period of stream ciphers such as RC4 or Salsa20?

I am confused about how long a stream cipher can be used before you should change the key. To be concrete, let me use the stream cipher based on RC4 as an example. Let's say I want to encrypt a very ...
rlandster's user avatar
  • 317
5 votes
1 answer
790 views

Building a stream-cipher out of a hash function?

I've already read this: Is it feasible to build a stream cipher from a cryptographic hash function? However, my proposed construction differs… Suppose the hash generates N bits. These bits are split ...
petschy's user avatar
  • 59
5 votes
2 answers
2k views

Why are stream ciphers based on linear-feedback shift registers so popular?

I was conducting research on stream ciphers and LFSRs was a subtopic of my research and I was wondering why are LFSRs so popular?
Learner's user avatar
  • 61
10 votes
1 answer
1k views

How distinct are the meanings of the terms "CSPRNG," "DRBG" and "stream cipher"?

Are there universal, consensus definitions for the following terms? Cryptographically secure pseudo-random number generator ("CSPRNG") Deterministic random bit generator ("DRBG") Stream cipher This ...
Luis Casillas's user avatar
6 votes
1 answer
687 views

Security of GCM if Implemented with Stream Cipher instead of Block Cipher

Can GCM be implemented with a stream cipher instead of a block cipher? If no, then what security flaw does it have? If yes, then which possibility from below two is better in terms of security? In ...
crypt's user avatar
  • 2,449
6 votes
1 answer
284 views

Is there a library that output LFSR images given parameters?

I'm looking for a library that given parameters; feedback polynomial, initial values then it will produce $\LaTeX$ / Tikz codes to include in Latex documents or LFSR images. Is there such a library? ...
kelalaka's user avatar
  • 49k
3 votes
1 answer
2k views

Nonce role on stream ciphers

Modern stream ciphers usually predicts the usage of a nonce (also termed as IV) in the cryptosystem. The cost of initializing the cipher with the nonce varies from algorithm to algorithm (for instance,...
lvella's user avatar
  • 277
25 votes
5 answers
6k views

With sufficient randomness, is XOR an acceptable mechanism for encrypting?

I have heard criticism of various cryptosystems saying that "at their heart, they were just XOR." Is this just ignorance, or is there something inherently wrong with XOR based ciphers?
John Gietzen's user avatar
  • 1,505
13 votes
1 answer
6k views

Security considerations on "expand 32-byte k"-magic number in the Salsa20 family of stream ciphers?

I'm currently examining the NaCl library written by Daniel J. Bernstein and I noticed that the library hard codes the sigma: ...
Pascal's user avatar
  • 233
12 votes
1 answer
3k views

Why do stream ciphers use a nonce?

My question maybe will be stupid, but my problem is that I do not understand why stream ciphers need a key and also a nonce. As far as I understand, the keystream is generated with the nonce. The same ...
robert's user avatar
  • 263
11 votes
4 answers
4k views

Theoretical pi-based stream cipher

Let's pretend that all digits of pi are known and arbitrarily long sequences of digits are trivial to get. Further, some mathematician proves that there are no patterns in pi. We could create a stream ...
Joshua Galecki's user avatar
9 votes
2 answers
3k views

What does a stream cipher provide that cannot be obtained with AES CTR mode operation?

I can precompute the key stream for the CTR mode operation and the encryption at that point is similar to a stream cipher. So why are there stream ciphers still used and proposed after RC4? Recently ...
user220201's user avatar
8 votes
2 answers
3k views

Are CFB and OFB really meant for streaming?

CFB, OFB and other modes are meant for streaming and don't require padding. Are there still limitations such as the text needs to be greater than key length?
m33lky's user avatar
  • 255
7 votes
2 answers
679 views

Is there any quantum resistant pen-and-paper or mind cipher?

I know about VIC and Solitare but as I understand they are not quantum resistant ciphers. Is there any quantum resistant pen-and-paper or mind cipher?
vasili111's user avatar
  • 199
7 votes
1 answer
1k views

Are there secure stream ciphers that cannot be parallelized?

Are there any stream ciphers (or a deterministic random number generators, that should work as well I guess?) that cannot be parallelized? For example, if I seed it with a specific value, and then &...
Cray's user avatar
  • 173
6 votes
1 answer
662 views

Non-cryptographic hash function as MAC for stream ciphers

I understand that for a stream cipher to be useful, there must be a way to verify that the message was not tampered with (bits were flipped by an attacker). So, instead of using some cryptographic ...
lvella's user avatar
  • 277
6 votes
1 answer
2k views

LFSR Jump Ahead Algorithm

A related question has been asked and answered here. My question is specifically about figuring out C for very large J. I have searched the web and found many scholarly articles on "jump ahead" and ...
Les's user avatar
  • 205
6 votes
1 answer
1k views

Is ISAAC Cipher Cryptographically Secure?

http://en.wikipedia.org/wiki/ISAAC_(cipher) This question was asked before but the answers seem vague, and I want to know about ISAAC specifically, not ISAAC+. It seems some cryptanalysis was ...
user3100783's user avatar
6 votes
1 answer
601 views

Can you use SHAKE256_XOF with XOR to make a stream cipher?

SHAKE256_XOF is an extendable output function based on SHA3-512. SHAKE256_XOF can be used to create an infinite length bit string with 256-bits of security. For example: ...
Brandon's user avatar
  • 175
5 votes
2 answers
1k views

Can I construct a feasible stream cipher out of HMAC and a secure hash algorithm?

I have constructed a stream cipher from a secure hash algorithm and a HMAC. Here is a brief description of the algorithm: Let: (Actually Objective-C styled pseudo code) ...
Maxthon Chan's user avatar
5 votes
2 answers
1k views

Number of states in a LFSR

Do all $2^{\ell}$ (where $\ell$ is the bit length of the shift register) states always occur in a LFSR or can I choose my taps badly so some states are skipped and the period is shortened? If so is ...
nist's user avatar
  • 153
5 votes
2 answers
2k views

Calculating cycles per byte

Cycles per byte seems to be a critical concern in designing and choosing stream ciphers. For example, from Wikipedia, RC4 has 7 cycles/byte on original Pentium chips. How is this calculated? Do they ...
0xFE's user avatar
  • 406
4 votes
1 answer
1k views

chacha20-poly1305 padding and length encoding

The AEAD construction for chacha20-poly1305 described in the IETF proposal encodes message lengths into the text that is to be hashed. The newer proposal goes further and pads associated data and ...
dietr's user avatar
  • 143
4 votes
1 answer
396 views

Stream Ciphers and cycling questions

For all PRNGs (including CSPRNGs) lets say there is a sequence x, y, z, then when the PRNG cycles back to x, then the sequence following it will be exactly the same as before. Is this true for all ...
user93353's user avatar
  • 2,245
3 votes
1 answer
5k views

Is XChacha20 - Poly1305 Quantum resistant?

This is a question just out of curiosity, as I am a newbie to Post Quantum Cryptography. I have read several articles where they emphasize that current standardised symmetric encryption algorithms (...
Aravind A's user avatar
  • 1,030
3 votes
1 answer
919 views

How to find out the block size of Xchacha20 in Libsodium?

I heard that Xchacha20 works like a block cipher so that even if it wants to encrypt one byte, it will do the work of at least one block. So technically it works similar to a block cipher in counter ...
caveman's user avatar
  • 573
2 votes
3 answers
2k views

Using a PRNG for a stream cipher instead of a dedicated algorithm

I am aware, that it is possible to build a stream cipher using some deterministic PRNG (like HASH_DRBG or CTR_DRBG) with good key material as the seed. What are the advantages of using a purpose ...
mat's user avatar
  • 2,528
0 votes
2 answers
724 views

How to calculate the key size of a redesign of Enigma

I have a 'for fun' project, which is a pure software based redesign of the Enigma I. I'd like to compute the key length of my design, but I need some help with that. I have a write-up here (see ...
Adrian K's user avatar
  • 187
-2 votes
2 answers
242 views

Why are there so many stream ciphers out there and even ongoing research?

What make them better than OTP using a CSPRNG initialized with a secret key?
daruma's user avatar
  • 385
11 votes
2 answers
4k views

Combining LFSRs for Stream Ciphers: Why do we need high non-linearity?

Linear Feedback Shift Registers (LFSRs) can be excellent (efficient, fast, and with good statistial properties) pseudo-random generators. Many stream ciphers are based on LFSRs and one of the possible ...
geo909's user avatar
  • 387
10 votes
2 answers
3k views

Authenticated encryption mode for stream cipher?

Block ciphers have modes like GCM or OCB that combine primitives to provide both authentication and encryption. Are there similar constructs for stream ciphers, which provide both authentication and ...
evgeniuz's user avatar
  • 231
9 votes
1 answer
3k views

Which cipher is used in the new 5G network?

I think that the stream ciphers SNOW 3G and AES are used in 4G (LTE). But I can't find which cipher is used in 5G networks and how encryption is done. Is there any official documentation?
František Štrba's user avatar
8 votes
3 answers
3k views

Can I safely replace XOR with ADD in a stream cipher?

In a stream cipher, the bytes of the plaintext are usually XORed with the keystream to produce the ciphertext. Would there be anything wrong with adding the bytes instead (with overflow), if adding ...
user605592's user avatar
8 votes
1 answer
212 views

AES vs. SHA2 in key-stream generation

A KDF in Counter Mode (e.g., see NIST SP 800-108r1, Section 4.1, similar to HKDF) produces the output as what AES-CTR would do if one replaces AES with SHA2 (or, to be exact, with HMAC). However, NIST,...
uk-ny's user avatar
  • 128
7 votes
3 answers
1k views

CBC - a canonical mode, even though there are streaming modes

Why is CBC considered the canonical mode when there are streaming modes available such as CFB and OFB? One thing that I can think of is that in CBC you can easliy do range-based decryption. All you ...
m33lky's user avatar
  • 255
7 votes
1 answer
891 views

Can somebody help me understand RC4 Spritz? (Three Questions)

So ever since I first took a stab at understanding stream Ciphers, not one stood out more than RC4, because it's so fantastically simple. As most people reading this will know, with its fantastic ...
Iam Nick's user avatar
  • 540
7 votes
2 answers
2k views

Security analysis of Spritz?

Recently, a new cipher called Spritz has been released by Ronald L. Rivest and Jacob Schuldt. It should be a "drop-in replacement" for RC4. There are many differences to RC4, Spritz is "spongy" and ...
ralph's user avatar
  • 81
7 votes
2 answers
420 views

Advantages of making streamcipher stream depend on plaintext?

Most descriptions that explain how streamciphers work (like the one on Wikipedia), tend to describe a model that boils down to a simple “$ciphertext = plaintext \oplus stream$”, where the stream is ...
e-sushi's user avatar
  • 18k