词汇解释区
PrivKE
全称为 Private-Key Encryption 私钥加密, 两人共享一个私钥,通过私钥进行加密和解密。
PPT
polynomial-time algorithm
Slides区
lec2-3
Outline
- Kerckhoff’s principle
- Shift Cipher
- substitution cipher
- letter frequency analysis
- Vigenère cipher
- Kasiski’s method
Kerckhoff’s principle
加密算法不一定要保密, 即便敌手知道了加密算法也无法对密钥进行破解
Shift Cipher
加密表达式为,即每个密钥向前移动至
- Improved Attack of the Shift Cipher
Substitution Cipher
introduction
- 将位移改成字符映射表格,每个字符都能映射到其他字符上
- security
- 不安全,可以通过词频来破解
Vigenère Cipher
加密算法
将明文分解成份,再取个密钥,每一份密钥的每一位对应着不同的密钥进行位移。
破译方法
- 枚举的长度
- 对于每一份的同一位,如,都是共享同一个位移的
- 我们可以枚举key的长度
- 对于,对于第位,枚举k从,出现,那么第位的位移可能是为
- 通过上面方法,我们收获了每个的情况下,如果枚举的的每一个,都有存在很接近0.65的,那么就有概率解密成功。
lec4
Outline
- perfect secrecy
- one-time pad
- perfect indistinguishability
perfect secrecy
- 定义
不管加密后的密钥是什么,都不能影响加密前
当,满足下面公式,就是完美加密
- 定理
用来证明某个scheme是完美加密
- 限制
完美加密中,密钥空间的大小必须大于等于消息空间的大小。
OTP
- 定义
把明文和等长的密钥相互亦或得到密文
- 性质
- OTP是完美加密(用定理证明,如下图所示)
- 缺点:
- 密钥太长了
- 没办法modify it at will
- 没办法重复用
Perfect Indistinguishablility
有一个敌手和挑战者,敌手给两个明文,挑战者将其中一个加密后发给敌手,敌手如果判断的出该密文是之前两个中的哪个的概率=1/2,那么就将该策略为完美不可区分性。
- 定义
- 定理1
- 例子:Vigenère Cipher
lec5
- negligible
- asymptotic approach
negligible function
a function is negligible if there exists N such that f(n) < 1/p(n) for all n > N and .
- 指数的倒数一定是可忽略的,如
- 可忽略函数加乘后依旧是可忽略函数
lec6
IND-EAV
这玩意就是,有挑战者和攻击者,攻击者给挑战者两个密钥,挑战者加密以后给攻击者,攻击者确认到底加密的是哪一个,下面这个是精确定义。注意和Perfect Indistinguishablility要区分一下,这个的1/2是可以带可忽略函数的。
Statistical Distance
统计距离,
这个很好算,是全集的变量,每个变量的概率分布不一样。把特殊点单独拿出来计算一下即可,如下图所示。
lec7
computationally indistinguishable, pseudorandom, PRG, fixed-length encryption from PRG
computationally indistinguishable
上图所示,满足定理后,计算不可区分,计算不可区分分为两种,一种是统计不可区分,一种是完美不可区分。
- 定理1:如果,那么 是统计上不可区分的,简写
- 定理2:如果,就是完美不可区分
一些计算不可区分的特性,懒得记了,打个cheat sheet算了。
Pseudo randomness
如果某个分布和均匀分布之间是计算不可区分的,那么称之为伪随机
Pseudo randomness generator (PRG)
伪随机发生器
- 多项式时间内完成
- 出来的长度一定比的长度长
- 伪随机的,即出来的东西和均匀分布之间的统计距离小于可忽略函数
lec8
One-Way Function
单项函数,知道,但是无法在多项式时间里推出。
Hard-Core Predicate
看不懂 算了
IND-CPA
注意一下这个关系
lec9
Pseudorandom Function, PRF
伪随机函数,,是输入,是密钥
- 保证输入输出的长度是相同的
- 敌手无法区分输出的内容和随机生成的内容