如何在 C 中为简单的 XOR 密码创建密钥流生成器?

How to create a keystream generator in C for simple XOR cipher?

我正在尝试在 C 中创建一个 密钥流生成器 以便使用生成的密钥加密一些数据。这是出于教育目的。

In cryptography, a keystream is a stream of random or pseudorandom characters that are combined with a plaintext message to produce an encrypted message

网上很少或根本没有解释密钥流生成器内部功能的信息。那么,创建密钥流生成器的正确方法是什么?

NIST 在 NIST SP 800-38A.

中描述了基于 AES(在 counter/CTR 中)的密钥流生成器

编写好的密钥流生成器很难,纯流密码已被废弃,因为它们不能充分保护消息完整性。