现代密码学3.5--伪随机函数/PRF

本文是博主对《INTRODUCTION TO MODERN CRYPTOGRAPHY》的学习笔记,重点讲解了伪随机函数(PRF)和伪随机置换(PRP)的概念,并探讨了如何基于PRF构建满足计算安全性的密码方案。PRF是PRG的扩展,通过定义展示了PRF和PRP的不可区分性,以及如何利用它们构建CPA安全的加密方案。
摘要由CSDN通过智能技术生成

博主正在学习INTRODUCTION TO MODERN CRYPTOGRAPHY (Second Edition) --Jonathan Katz, Yehuda Lindell,做一些笔记供自己回忆,如有错误请指正。整理成一个系列现代密码学,方便检索。

第二章定义了完美安全及其对应的密码方案“一次一密”,第三章前三节定义了计算安全,介绍了PRG和基于PRG构造的满足计算安全的密码方案;3.4节定义了CPA安全,3.5节将介绍PRF和基于PRF构造的满足CPA安全的密码方案。

伪随机函数/pseudorandom function/PRF

  • PRF和PRG:PRG s : { 0 , 1 } n → G ( s ) : { 0 , 1 } l ( n ) s:\{0,1\}^n \rightarrow G(s):\{0,1\}^{l(n)} s:{ 0,1}nG(s):{ 0,1}l(n),讨论的是字符串 G ( s ) G(s) G(s)分布的伪随机性。PRF: F k : { 0 , 1 } n → { 0 , 1 } n F_k:\{0,1\}^n\rightarrow \{0,1\}^n Fk:{ 0,1}n{ 0,1}n,讨论的是函数 F k F_k Fk分布的伪随机性,是PRG的扩展。

  • 真随机函数 f ∈ f\in f Func n _n n

    • 函数族Func n _n n:所有 n n n比特字符串到 n n n比特字符串的函数
    • 函数族大小:对于一个函数,输入 x ∈ { 0 , 1 } n x\in \{0,1\}^n x{ 0,1}n,有 2 n 2^n 2n种;对于每一种输入,有一个 n n n长的输出;有 2 n 2^n 2n行, n n n列,这个矩阵大小为 n ⋅ 2 n n\cdot 2^n n2n,这表示了一个函数;这个函数族大小为 ∣ | Func n ∣ = 2 n ⋅ 2 n _n|=2^{n\cdot 2^n} n=2n2n
    • 如何取真随机函数 f f f:由于一个真随机函数要用 n ⋅ 2 n n\cdot 2^n n2n位表示,是一个指数的输入,多项式时间区分者 D D D没有足够的时间得到完整输入,需要询问 o r a c l e oracle oracle O O O。oracle O O O是一个确定性函数,执行伪随机函数 F k ( k F_k(k Fk(k随机 ) ) )或真随机函数 f f f D D D可以询问多项式次。
  • 定义: F : { 0 , 1 } ∗ × { 0 , 1 } ∗ → { 0 , 1 } ∗ F:\{0,1\}^*\times \{0,1\}^*\rightarrow \{0,1\}^* F{ 0,1}

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值