fbpx
Wikipedia

Pseudorandom function family

In cryptography, a pseudorandom function family, abbreviated PRF, is a collection of efficiently-computable functions which emulate a random oracle in the following way: no efficient algorithm can distinguish (with significant advantage) between a function chosen randomly from the PRF family and a random oracle (a function whose outputs are fixed completely at random). Pseudorandom functions are vital tools in the construction of cryptographic primitives, especially secure encryption schemes.

Pseudorandom functions are not to be confused with pseudorandom generators (PRGs). The guarantee of a PRG is that a single output appears random if the input was chosen at random. On the other hand, the guarantee of a PRF is that all its outputs appear random, regardless of how the corresponding inputs were chosen, as long as the function was drawn at random from the PRF family.

A pseudorandom function family can be constructed from any pseudorandom generator, using, for example, the "GGM" construction given by Goldreich, Goldwasser, and Micali.[1] While in practice, block ciphers are used in most instances where a pseudorandom function is needed, they do not, in general, constitute a pseudorandom function family, as block ciphers such as AES are defined for only limited numbers of input and key sizes.[2]

Motivations from random functions edit

A PRF is an efficient (i.e. computable in polynomial time), deterministic function that maps two distinct sets (domain and range) and looks like a truly random function.

Essentially, a truly random function would just be composed of a lookup table filled with uniformly distributed random entries. However, in practice, a PRF is given an input string in the domain and a hidden random seed and runs multiple times with the same input string and seed, always returning the same value. Nonetheless, given an arbitrary input string, the output looks random if the seed is taken from a uniform distribution.

A PRF is considered to be good if its behavior is indistinguishable from a truly random function. Therefore, given an output from either the truly random function or a PRF, there should be no efficient method to correctly determine whether the output was produced by the truly random function or the PRF.

Formal definition edit

Pseudorandom functions take inputs  . Both the input size   and output size   depend only on the index size  .

A family of functions,

 

is pseudorandom if the following conditions are satisfied:

  • There exists a polynomial-time algorithm that computes   given any   and  .
  • Let   be the distribution of functions   where   is uniformly distributed over  , and let   denote the uniform distribution over the set of all functions from   to  . Then we require   and   are computationally indistinguishable, where n is the security parameter. That is, for any adversary that can query the oracle of a function sampled from either   or  , the advantage that she can tell apart which kind of oracle is given to her is negligible in  .[3]

Oblivious pseudorandom functions edit

In an oblivious pseudorandom function, abbreviated OPRF, information is concealed from two parties that are involved in a PRF.[4] That is, if Alice cryptographically hashes her secret value, cryptographically blinds the hash to produce the message she sends to Bob, and Bob mixes in his secret value and gives the result back to Alice, who unblinds it to get the final output, Bob is not able to see either Alice's secret value or the final output, and Alice is not able to see Bob's secret input, but Alice sees the final output which is a PRF of the two inputs -- a PRF of Alice's secret and Bob's secret.[5] This enables transactions of sensitive cryptographic information to be secure even between untrusted parties.

An OPRF is used in some implementations of password-authenticated key agreement.[5]

An OPRF is used in the Password Monitor functionality in Microsoft Edge.[6]

Application edit

PRFs can be used for:[7]

  1. dynamic perfect hashing; even if the adversary can change the key-distribution depending on the values the hashing function has assigned to the previous keys, the adversary can not force collisions.
  2. Constructing deterministic, memoryless authentication schemes (message authentication code based) which are provably secure against chosen message attack.
  3. Distributing unforgeable ID numbers, which can be locally verified by stations that contain only a small amount of storage.
  4. Constructing identification friend or foe systems.

See also edit

Notes edit

  1. ^ Goldreich, Oded; Goldwasser, Shafi; Micali, Silvio (October 1986). "How to Construct Random Functions" (PDF). Journal of the ACM. 33 (4): 792–807. doi:10.1145/6490.6503. web page and preprint
  2. ^ Lindell, Yehuda; Katz, Jonathan (2008). Introduction to Modern Cryptography. Chapman & Hall/CRC. p. 88. ISBN 978-1-58488-551-1.
  3. ^ Goldreich's FoC, vol. 1, def. 3.6.4. Pass's notes, def. 96.2
  4. ^ M. Bellare; S. Keelveedhi; T. Ristenpart (August 2013). Dupless: server-aided encryption for deduplicated storage (PDF). Proceedings of the 22nd USENIX Security Symposium. Washington, DC, USA: USENIX Association. pp. 1–16.
  5. ^ a b Matthew Green. "Let’s talk about PAKE". 2018.
  6. ^ Lauter, Kristin; Kannepalli, Sreekanth; Laine, Kim; Cruz Moreno, Radames (January 1, 2021). "Password Monitor: Safeguarding passwords in Microsoft Edge". Microsoft Research Blog. Retrieved January 1, 2021.
  7. ^ Goldreich, O.; Goldwasser, S.; Micali, S. (1985). "On the Cryptographic Applications of Random Functions (Extended Abstract)". Advances in Cryptology. Lecture Notes in Computer Science. Vol. 196. p. 276. doi:10.1007/3-540-39568-7_22. ISBN 978-3-540-15658-1.

References edit

  • Goldreich, Oded (2001). Foundations of Cryptography: Basic Tools. Cambridge: Cambridge University Press. ISBN 978-0-511-54689-1.
  • Pass, Rafael, A Course in Cryptography (PDF), retrieved 22 December 2015

pseudorandom, function, family, cryptography, pseudorandom, function, family, abbreviated, collection, efficiently, computable, functions, which, emulate, random, oracle, following, efficient, algorithm, distinguish, with, significant, advantage, between, func. In cryptography a pseudorandom function family abbreviated PRF is a collection of efficiently computable functions which emulate a random oracle in the following way no efficient algorithm can distinguish with significant advantage between a function chosen randomly from the PRF family and a random oracle a function whose outputs are fixed completely at random Pseudorandom functions are vital tools in the construction of cryptographic primitives especially secure encryption schemes Pseudorandom functions are not to be confused with pseudorandom generators PRGs The guarantee of a PRG is that a single output appears random if the input was chosen at random On the other hand the guarantee of a PRF is that all its outputs appear random regardless of how the corresponding inputs were chosen as long as the function was drawn at random from the PRF family A pseudorandom function family can be constructed from any pseudorandom generator using for example the GGM construction given by Goldreich Goldwasser and Micali 1 While in practice block ciphers are used in most instances where a pseudorandom function is needed they do not in general constitute a pseudorandom function family as block ciphers such as AES are defined for only limited numbers of input and key sizes 2 Contents 1 Motivations from random functions 2 Formal definition 3 Oblivious pseudorandom functions 4 Application 5 See also 6 Notes 7 ReferencesMotivations from random functions editA PRF is an efficient i e computable in polynomial time deterministic function that maps two distinct sets domain and range and looks like a truly random function Essentially a truly random function would just be composed of a lookup table filled with uniformly distributed random entries However in practice a PRF is given an input string in the domain and a hidden random seed and runs multiple times with the same input string and seed always returning the same value Nonetheless given an arbitrary input string the output looks random if the seed is taken from a uniform distribution A PRF is considered to be good if its behavior is indistinguishable from a truly random function Therefore given an output from either the truly random function or a PRF there should be no efficient method to correctly determine whether the output was produced by the truly random function or the PRF Formal definition editPseudorandom functions take inputs x 0 1 displaystyle x in 0 1 nbsp Both the input size I x displaystyle I x nbsp and output size l displaystyle lambda nbsp depend only on the index size n s displaystyle n s nbsp A family of functions f s 0 1 I n 0 1 l n displaystyle f s left 0 1 right I n rightarrow left 0 1 right lambda n nbsp is pseudorandom if the following conditions are satisfied There exists a polynomial time algorithm that computes f s x displaystyle f s x nbsp given any s displaystyle s nbsp and x displaystyle x nbsp Let F n displaystyle F n nbsp be the distribution of functions f s displaystyle f s nbsp where s displaystyle s nbsp is uniformly distributed over 0 1 n displaystyle 0 1 n nbsp and let R F n displaystyle RF n nbsp denote the uniform distribution over the set of all functions from 0 1 I n displaystyle 0 1 I n nbsp to 0 1 l n displaystyle 0 1 lambda n nbsp Then we require F n displaystyle F n nbsp and R F n displaystyle RF n nbsp are computationally indistinguishable where n is the security parameter That is for any adversary that can query the oracle of a function sampled from either F n displaystyle F n nbsp or R F n displaystyle RF n nbsp the advantage that she can tell apart which kind of oracle is given to her is negligible in n displaystyle n nbsp 3 Oblivious pseudorandom functions editIn an oblivious pseudorandom function abbreviated OPRF information is concealed from two parties that are involved in a PRF 4 That is if Alice cryptographically hashes her secret value cryptographically blinds the hash to produce the message she sends to Bob and Bob mixes in his secret value and gives the result back to Alice who unblinds it to get the final output Bob is not able to see either Alice s secret value or the final output and Alice is not able to see Bob s secret input but Alice sees the final output which is a PRF of the two inputs a PRF of Alice s secret and Bob s secret 5 This enables transactions of sensitive cryptographic information to be secure even between untrusted parties An OPRF is used in some implementations of password authenticated key agreement 5 An OPRF is used in the Password Monitor functionality in Microsoft Edge 6 Application editPRFs can be used for 7 dynamic perfect hashing even if the adversary can change the key distribution depending on the values the hashing function has assigned to the previous keys the adversary can not force collisions Constructing deterministic memoryless authentication schemes message authentication code based which are provably secure against chosen message attack Distributing unforgeable ID numbers which can be locally verified by stations that contain only a small amount of storage Constructing identification friend or foe systems See also editPseudorandom permutationNotes edit Goldreich Oded Goldwasser Shafi Micali Silvio October 1986 How to Construct Random Functions PDF Journal of the ACM 33 4 792 807 doi 10 1145 6490 6503 web page and preprint Lindell Yehuda Katz Jonathan 2008 Introduction to Modern Cryptography Chapman amp Hall CRC p 88 ISBN 978 1 58488 551 1 Goldreich s FoC vol 1 def 3 6 4 Pass s notes def 96 2 M Bellare S Keelveedhi T Ristenpart August 2013 Dupless server aided encryption for deduplicated storage PDF Proceedings of the 22nd USENIX Security Symposium Washington DC USA USENIX Association pp 1 16 a b Matthew Green Let s talk about PAKE 2018 Lauter Kristin Kannepalli Sreekanth Laine Kim Cruz Moreno Radames January 1 2021 Password Monitor Safeguarding passwords in Microsoft Edge Microsoft Research Blog Retrieved January 1 2021 Goldreich O Goldwasser S Micali S 1985 On the Cryptographic Applications of Random Functions Extended Abstract Advances in Cryptology Lecture Notes in Computer Science Vol 196 p 276 doi 10 1007 3 540 39568 7 22 ISBN 978 3 540 15658 1 References editGoldreich Oded 2001 Foundations of Cryptography Basic Tools Cambridge Cambridge University Press ISBN 978 0 511 54689 1 Pass Rafael A Course in Cryptography PDF retrieved 22 December 2015 Retrieved from https en wikipedia org w index php title Pseudorandom function family amp oldid 1182763229, wikipedia, wiki, book, books, library,

article

, read, download, free, free download, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, picture, music, song, movie, book, game, games.