Complete Classification of Bilinear Hard-Core Functions
Thomas Holenstein, Ueli Maurer, and Johan Sjödin
Advances in Cryptology — CRYPTO 2004, Lecture Notes in Computer Science, Springer-Verlag, vol. 3152, pp. 73–91, Aug 2004.
Let be a one-way function. A function is called a hard-core function for if, when given for a (secret) drawn uniformly from , it is computationally infeasible to distinguish from a uniformly random -bit string. A (randomized) function is a general hard-core function if it is hard-core for every one-way function , where the second input to is a -bit uniform random string . Hard-core functions are a crucial tool in cryptography, in particular for the construction of pseudo-random generators and pseudo-random functions from any one-way function. The first general hard-core predicate, proposed by Goldreich and Levin, and several subsequently proposed hard-core functions, are bilinear functions in the two arguments and . In this paper we introduce a parameter of bilinear functions , called exponential rank loss, and prove that it characterizes exactly whether or not is a general hard-core function. The security proofs for the previously proposed bilinear hard-core functions follow as simple consequences. Our results are obtained by extending the class of list-decodable codes and by generalizing Hast's list-decoding algorithm from the Reed-Muller code to general codes.
BibTeX Citation
@inproceedings{HoMaSj04,
author = {Thomas Holenstein and Ueli Maurer and Johan Sjödin},
title = {Complete Classification of Bilinear Hard-Core Functions},
editor = {Matthew Franklin},
booktitle = {Advances in Cryptology --- CRYPTO 2004},
pages = {73--91},
series = {Lecture Notes in Computer Science},
volume = {3152},
year = {2004},
month = {8},
publisher = {Springer-Verlag},
}