2

In the "Introduction to Cryptography: With Coding Theory" by Trappe and Washington, in the chapter about OFB (Output Feedback) mode the authors say that:

The OFB mode produces a bit stream and it encrypts similarly to the LFSR(Linear-feedback shift register) method. The differences are that LFSR is faster, but OFB is more secure.

I don't understand why OFB operates as a LFSR. The author does not mention it. Can you explain to me ?

AleWolf
  • 461
  • 3
  • 10

2 Answers2

2

Both OFB and LFSR use the output of one iteration of the function as input for a new iteration. Furthermore, both OFB and LFSR generate a pseudo random stream of bits / bytes. This stream can be used as key stream to encrypt/decrypt data, turning the algorithm into a stream cipher.

There is a difference if the output of the last iteration is used to to perform another shift or to perform a full block encryption. Generally an LFSR is not considered cryptographically secure. So an LFSR would, by itself, not qualify as a secure stream cipher or Cryptographically Secure Pseudo Random Number Generator (CSPRNG).

The authors probably assume that you know LFSRs and try to explain that OFB is similar in how it operates. If you don't know the properties of LFSRs beforehand the comparison is probably lost on you.

Maarten Bodewes
  • 96,351
  • 14
  • 169
  • 323
0

Presumably they mean that in both cases, the output has the form $$f(\mathit{iv}) \mathbin\| f(f(\mathit{iv})) \mathbin\| f(f(f(\mathit{iv}))) \mathbin\| \dotsb,$$ where $f$ is a secret function—the LFSR update function or a block cipher $E_k$ with secret key $k$.

Squeamish Ossifrage
  • 49,816
  • 3
  • 122
  • 230