How to construct random functions
- 10 August 1986
- journal article
- Published by Association for Computing Machinery (ACM) in Journal of the ACM
- Vol. 33 (4) , 792-807
- https://doi.org/10.1145/6490.6503
Abstract
A constructive theory of randomness for functions, based on computational complexity, is developed, and a pseudorandom function generator is presented. This generator is a deterministic polynomial-time algorithm that transforms pairs ( g , r ), where g is any one-way function and r is a random k -bit string, to polynomial-time computable functions ƒ r : {1, … , 2 k } → {1, … , 2 k }. These ƒ r 's cannot be distinguished from random functions by any probabilistic polynomial-time algorithm that asks and receives the value of a function at arguments of its choice. The result has applications in cryptography, random constructions, and complexity theory.Keywords
This publication has 21 references indexed in Scilit:
- A Simple Unpredictable Pseudo-Random Number GeneratorSIAM Journal on Computing, 1986
- A fair protocol for signing contractsPublished by Springer Nature ,1985
- How to Generate Cryptographically Strong Sequences of Pseudorandom BitsSIAM Journal on Computing, 1984
- Randomness conservation inequalities; information and independence in mathematical theoriesInformation and Control, 1984
- On the generation of cryptographically strong pseudorandom sequencesACM Transactions on Computer Systems, 1983
- On Computationally Secure Authentication Tags Requiring Short Secret Shared KeysPublished by Springer Nature ,1983
- A method for obtaining digital signatures and public-key cryptosystemsCommunications of the ACM, 1978
- New directions in cryptographyIEEE Transactions on Information Theory, 1976
- The definition of random sequencesInformation and Control, 1966
- On the Length of Programs for Computing Finite Binary SequencesJournal of the ACM, 1966