Using Linear Congruential Generators for Cryptographic Purposes

We try to provide an alternative attitude toward the use of a Linear Congruential Generator (LCG here after) in generating pseudo-random numbers for some cryptographic purpose. In particular, we choose email encryption as our cryptographic application. Our encryption will be considered secure if the attacker cannot infer the pseudo-random numbers without knowing the parameters of the LCG. We implement Plumstead’s inference algorithm [2] for an unknown LCG and our experimental results show that simply increasing the size of the modulus of the LCG does not significantly increase the difficulty of breaking the system. The only way to circumvent the weakness of the LCG, as we conclude, is to hide the generated numbers from the attacker. We suggest a practical attack on the method proposed in [11] and then introduce a much stronger version to patch the loophole without compromising the simplicity of the LCG. Moreover, we speculate that our new version of using the LCG in email encryption may resist the known plaintext attack and, therefore, there is no need to distribute a new set of parameters for the LCG for each encryption.