现代密码学2.2、2.3--由“一次一密/One-Time Pad”引出具有完美安全的密码方案共同缺点
博主正在学习INTRODUCTION TO MODERN CRYPTOGRAPHY (Second Edition) --Jonathan Katz, Yehuda Lindell,做一些笔记供自己回忆,如有错误请指正。整理成一个系列现代密码学,方便检索。
《现代密码学》第一章所介绍的古典密码,全都已经被破解了,而2.1节介绍了具有完美隐藏性的密码方案的定义。了解完美隐藏性后,《现代密码学》在2.2、2.3节向我们介绍了一种具有完美隐藏性的密码方案One-Time Pad,进而引出这样的密码方案不可避免的缺点,并严格证明这些缺点是所有具有完美隐藏性的密码方案不可避免的。
One-Time Pad密码方案
定义
给定一个正整数 l l l,明文空间、密钥空间、密文空间都是 { 0 , 1 } l \{0,1\}^l {
0,1}l,长度为 l l l的01串。
G e n Gen Gen:从密钥空间 K = { 0 , 1 } l \mathcal{K}=\{0,1\}^l K={
0,1}l中均匀随机取出一个字符串作为密钥 k k k,每一个的概率都是 2 − l 2^{-l} 2−l
E n c Enc Enc:对于明文 m ∈ { 0 , 1 } l m\in \{0,1\}^l m∈{
0,1}l,用密钥 k ∈ { 0 , 1 } l k\in \{0,1\}^l k∈{
0,1}l加密,得到密文 c : = k ⨁ m c:=k\bigoplus m c:=k⨁m
D e c Dec Dec:对于密文 c ∈ { 0 , 1 } l c\in \{0,1\}^l c∈{
0,1}l,用密钥 k ∈ { 0 , 1 } l k\in \{0,1\}^l k∈{
0,1}l解密,得到明文 m : = k ⨁ c m:=k\bigoplus c m:=k⨁c
正确性/correctness
易证: D e c ( E n c k ( m ) )