An Algebraic Framework for Pseudorandom Functions and Applications to Related-Key Security Michel Abdalla, Fabrice Benhamouda, Alain Passelègue
Pseudorandom functions [GGM86] - efficiently computable function πΊ: πΏ Γ πΈ β π - indistinguishable from a random function π: πΈ β π π β πΏ π¦ π¦ β π πΊ π πΊ(π, π¦) π(π¦) 1/22
Number-theoretic PRF [NR97] DDH-based (Naor-Reingold) PRF π Γ 0,1 π β πΏ ππ: β€ π π¦π π π π=1 π π π , π¦ β¦ 2/22
Number-theoretic PRF [NR97] DDH-based (Naor-Reingold) PRF π Γ 0,1 π β πΏ ππ: β€ π π¦ π π π=1 π , π¦ β¦ π π 2/22
Number-theoretic PRF [NR97] DDH-based (Naor-Reingold) PRF π Γ 0,1 π β πΏ ππ: β€ π π¦ π with π π π = π=1 π , π¦ β¦ π π¦ ( π) π¦ π 1 , β¦ , π π π 2/22
Number-theoretic PRF [NR97] DDH-based (Naor-Reingold) PRF π Γ 0,1 π β πΏ ππ: β€ π π¦ π with π π π = π=1 π , π¦ β¦ π π¦ ( π) π¦ π 1 , β¦ , π π π fact 1: π¦ π¦β 0,1 π linearly independent π -variate polynomials π fact 2: other constructions with the same form (πΆππ, ππ, β¦ ) 2/22
Main question π Γ πΈ β¦ π PRF πΊ: π, π¦ β β€ π π¦ π ? π¦ π¦βπΈ linearly independent π -variate polynomials over β€ π π 3/22
Main question π Γ πΈ β¦ π PRF πΊ: π, π¦ β β€ π π¦ π ? π¦ π¦βπΈ linearly independent π -variate polynomials over β€ π π (standard assumption?) 3/22
Outline - motivation for such an equivalence and proof - applications to (RKA) PRF - new algebraic framework for related-key security 4/22
Motivation 1 π Γ πΈ β¦ π PRF πΊ: π, π¦ β β€ π π¦ π β πΏ π¦ π¦βπΈ lin. ind. π -variate polynomials π 5/22
Motivation 1 π Γ πΈ β¦ π PRF πΊ: π, π¦ β β€ π π¦ π β πΏ π¦ π¦βπΈ lin. ind. π -variate polynomials π toy example: π Γ 0,1 π β¦ π=1 π¦ π β πΏ is a PRF π ππ: π, π¦ β β€ π π π proof: π¦ β 0,1 π are linearly independent π¦ π π { π=1 π π 5/22
Motivation 2 Def: Ξ¦ -RKA-PRF [BK03] - Ξ¦ β πΊπ£π(πΏ, πΏ) a class of functions - efficiently computable function πΊ: πΏ Γ πΈ β π - indistinguishable from a random function π: πΏ Γ πΈ β π π β πΏ π β πΏ π, π¦ π, π¦ β π πΊ π πΊ(π π , π¦) π(π π , π¦) 6/22
Motivation 2 Def: Ξ¦ -RKA-PRF [BK03] - Ξ¦ β πΊπ£π(πΏ, πΏ) a class of functions - efficiently computable function πΊ: πΏ Γ πΈ β π - indistinguishable from a random function π: πΏ Γ πΈ β π π β πΏ π β πΏ π, π¦ π, π¦ β π πΊ π πΊ(π π , π¦) π(π π , π¦) [BK03]: impossibility results for certain classes 6/22
Motivation 2 Def: Ξ¦ -RKA-PRF [BK03] - Ξ¦ β πΊπ£π(πΏ, πΏ) a class of functions - efficiently computable function πΊ: πΏ Γ πΈ β π - indistinguishable from a random function π: πΏ Γ πΈ β π π β πΏ π β πΏ π, π¦ π, π¦ β π πΊ π πΊ(π π , π¦) π(π π , π¦) [BK03]: impossibility results for certain classes goal: Ξ¦ -RKA-security for largest possible classes 6/22
π Γ πΈ β¦ π πΊ: π, π¦ β β€ π π¦ π β πΏ π contains only π -variate polynomials Ξ¦ β β€ π π 1 , β¦ , π 7/22
π Γ πΈ β¦ π πΊ: π, π¦ β β€ π π¦ π β πΏ π contains only π -variate polynomials Ξ¦ β β€ π π 1 , β¦ , π then πΊ π π , π¦ = π π¦ π π = π π¦ β π π 7/22
π Γ πΈ β¦ π πΊ: π, π¦ β β€ π π¦ π β πΏ π contains only π -variate polynomials Ξ¦ β β€ π π 1 , β¦ , π then πΊ π π , π¦ = π π¦ π π = π π¦ β π π π π β β€ π π π β β€ π π, π¦ π, π¦ β π πΊ π π π¦ β π π $ 7/22
π Γ πΈ β¦ π πΊ: π, π¦ β β€ π π¦ π β πΏ π contains only π -variate polynomials Ξ¦ β β€ π π 1 , β¦ , π then πΊ π π , π¦ = π π¦ π π = π π¦ β π π π π β β€ π π π β β€ π π, π¦ π, π¦ β π πΊ π π π¦ β π π $ lin. ind. π -variate polynomials π π¦ β π π¦βπΈ πβΞ¦ 7/22
Summary of our (RKA) PRF results PRFs: simple proofs for ππ, πΆππ, ππ, ππππ and their extensions π π β¦ π π(π) π π β¦ πΈ(π π(π) ) πΎ π π β¦ π π + π π π π β¦ π π β π π π π β¦ πΈ(π π ) [BC10] ππ β ππ β , ππ ? ? ? (exp. time) [ABPP14] ππ β ππ β ππ β ? ? this paper ππ, ππ β , ππ, ππ β , ππ, ππ β , ππ πππ , ππ πππ ππ, ππππ, β¦ ππ, ππππ, β¦ ππ, ππππ, β¦ πΆππ 8/22
π¦ π¦βπΈ lin. ind. π -variate polynomials over β€ π π ? π Γ πΈ β¦ π PRF πΊ: π, π¦ β β€ π π¦ π 9/22
π¦ π¦βπΈ lin. ind. π -variate polynomials over β€ π π ? π Γ πΈ β¦ π PRF πΊ: π, π¦ β β€ π π¦ π 10/22
π¦ π¦βπΈ lin. ind. π -variate polynomials over β€ π π ? π Γ πΈ β¦ π PRF πΊ: π, π¦ β β€ π π¦ π assume π π¦ 0 = π 1 π π¦ 1 + β¦ + π π π π¦ π 10/22
π¦ π¦βπΈ lin. ind. π -variate polynomials over β€ π π π Γ πΈ β¦ π PRF πΊ: π, π¦ β β€ π π¦ π assume π π¦ 0 = π 1 π π¦ 1 + β¦ + π π π π¦ π π π β β€ π π¦ 0 , π¦ 1 , β¦ , π¦ π π¦ 0 , π¦ 1 , β¦ , π¦ π β π πΊ π π π¦ 0 , β¦ , π(π¦ π ) [π π¦ 0 ( π)], β¦ , [π π¦ π ( π)] π π π π¦ 0 β π π¦ 1 π 1 β β¦ β π π¦ π π π¦ 0 ( π) = π 1 π π¦ 1 π + β¦ + π π π π¦ π π π π π 1 β β¦ β π = π π¦ 1 π π¦ π π 10/22
π¦ π¦βπΈ lin. ind. π -variate polynomials over β€ π π ? π Γ πΈ β¦ π PRF πΊ: π, π¦ β β€ π π¦ π 11/22
π¦ π¦βπΈ lin. ind. π -variate polynomials over β€ π π ? π Γ πΈ β¦ π PRF πΊ: π, π¦ β β€ π π¦ π π π β β€ π π π Real Rand [π( π)] $ where the polynomials queried are lin. ind. 11/22
π¦ π¦βπΈ lin. ind. π -variate polynomials over β€ π π π Γ πΈ β¦ π PRF πΊ: π, π¦ β β€ π π¦ π thm: linearly independent polynomial (lip) security π π β β€ π standard assumption π π β π Real Rand [π( π)] $ where the polynomials queried are lin. ind. 11/22
This talk thm: linearly independent polynomial (lip) security π π β β€ π DDH π π β π Real Rand [π( π)] $ where the polynomials queried are lin. ind. + multilinear 12/22
simple case: - π = 3 π¦ 3 | π¦ β 0,1 3 } π¦ 1 π π¦ 2 π - only monomials queried: π β {π 1 2 3 ο computation of π as a path through a binary tree π 13/22
simple case: - π = 3 π¦ 3 | π¦ β 0,1 3 } π¦ 1 π π¦ 2 π - only monomials queried: π β {π 1 2 3 ο computation of π as a path through a binary tree π [1] 13/22
simple case: - π = 3 π¦ 3 | π¦ β 0,1 3 } π¦ 1 π π¦ 2 π - only monomials queried: π β {π 1 2 3 ο computation of π as a path through a binary tree π [1] [1] [π 1 ] 13/22
simple case: - π = 3 π¦ 3 | π¦ β 0,1 3 } π¦ 1 π π¦ 2 π - only monomials queried: π β {π 1 2 3 ο computation of π as a path through a binary tree π [1] [1] [π 1 ] [1] π 2 [π 1 ] π 1 π 2 13/22
simple case: - π = 3 π¦ 3 | π¦ β 0,1 3 } π¦ 1 π π¦ 2 π - only monomials queried: π β {π 1 2 3 ο computation of π as a path through a binary tree π [1] [1] [π 1 ] [1] π 2 [π 1 ] π 1 π 2 [1] [π 3 ] [π 2 ] [π 2 π 3 ] [π 1 ] [π 1 π 3 ] [π 1 π 2 ] [π 1 π 2 π 3 ] 13/22
simple case: - π = 3 π¦ 3 | π¦ β 0,1 3 } π¦ 1 π π¦ 2 π - only monomials queried: π β {π 1 2 3 ο computation of π as a path through a binary tree π [1] [1] [π 1 ] [1] π 2 [π 1 ] π 1 π 2 [1] [π 3 ] [π 2 ] [π 2 π 3 ] [π 1 ] [π 1 π 3 ] [π 1 π 2 ] [π 1 π 2 π 3 ] π 1 π 3 13/22
Recommend
More recommend