完善保密性(perfect secrecy)是資訊理論安全性的一个特例,为香农提出的信息学观点,具有该性质的密文不应该透露任何明文的信息。在該觀點中達成這項性質的方法,是使用與明文空間相等或更大的密鑰空間。
在密钥空间
内任取一个密钥
,加密方式为
,
为随机明文,
为随机密文则概率关系有
![{\displaystyle P(E(m,k_{i})=c)=P(E(m,k_{j})=c)}](https://wikimedia.org/api/rest_v1/media/math/render/svg/703addf9041bfb9d97098f212504fe9b0b6b3145)
该处
为相同文段。
也可定义为:
- 任意
,有
。 - 即通过观察密文无法得到关于明文的任何信息。
或是: 一組在
上的密碼系統
滿足
且 ![{\displaystyle \forall c\in C}](https://wikimedia.org/api/rest_v1/media/math/render/svg/57530bb41f997a3014253ce483f99b96a3c1dd83)
![{\displaystyle Pr[E(k_{0},m_{0})=c]=Pr[E(k_{1},m_{1})=c]}](https://wikimedia.org/api/rest_v1/media/math/render/svg/8656669d87d7406805d60944056e247ba3f7cdee)
- 其中
是由 K 當中以完全均等的機率隨機取樣
(註:
某事件
表示該事件發生的機率,
各為密鑰、明文及密文空間,
為解密與加密函數)
由於密鑰空間等於或大於明文空間,所以對同一個密文以窮舉法破解時,將會獲得所有可能的明文,使得無法分辨何者為真正的訊息。因此若沒有密鑰,即使敌手拥有无穷的计算时间和存储空间,密文仍然不可能破解。
具有完善保密性的密钥长度不可短于被加密的密文。此性质造成实际应用的不便。[1]
为了消除这种不便,一般使用两种方法:
- 流加密:使用种子(Seed),即初始密钥,和密钥生成器(Generator)生成和明文一样长的密钥,对明文字符进行对应加密。
- 分组加密:将明文分割为固定长度的段,每一段使用一个密钥加密(密钥长度不定)。
只是這樣的改變會縮小密鑰空間,因而失去完善保密性。
- ^ "Cryptography Theory and Practice" Stinson. (2ed)