# Tag Info

2

The condition is that: $$g(0, x_2, x_3, ..., x_n) \ne g(1, x_2, x_3, ..., x_n)$$ for all $x_2, x_3, ..., x_n$ This can easily be derived from the condition that implies bijectivity of $f$; that is, $f(x_1, x_2, ..., x_n) = f(y_1, y_2, ..., y_n)$ implies that $x_1 = y_1$, $x_2 = y_2$, ..., $x_n = y_n$

0

For any fixed $x_2, \ldots, x_n$, $g$ must be a surjective function of $x_1$ (i.e. onto).

4

There is a known distinguisher on SEAL presented here that works with about $2^{43}$ bytes of known plaintext. As breaks go, this is on the academic side of things; it requires almost as much known plaintext as you can possibly encrypt with a single key, and all it does is distinguish; it tells you nothing about what the key might be (and very little about ...

1

Say you have the value $n$ which is the size of the alphabet (i.e. the range of characters that make up your plaintext and ciphertext). And say $m = x \times n$ is the largest value you have that is not higher than $y$ where $y$ is the largest size produced by your random number generator. For each character: Take values from the random number generator ...

2

The biggest reason is performance. Stream ciphers are generally faster than block ciphers and perform fewer operations. Stream ciphers only need to generate a pseudorandom output while block ciphers need to be pseudorandom permutations. So when you create a steam cipher out of a block cipher, you are doing a lot more work to get the same effect. To get an ...

2

There are two answers, really depending on your specifications and how your generator will be evaluated. If all you need is to have a PRNG with statistically excellent random, but really don't care about predictability or cryptographic considerations, go for something simple like a Mersenne Twister. If you actually need some effective stream-cipher, look ...

Top 50 recent answers are included