斯坦福大学密码学公开课——Block Ciphers (1)

What is Block Cipher

下面抛出Block Cipher的具体定义:
In cryptography, a block cipher is a deterministic algorithm operating on fixed-length groups of bits, called a block, with an unvarying transformation that is specified by a symmetric key.
其中,block cipher具有以下几条性质:

  • 输入和输出的空间是一致的 \{0,1\}^{n}
  • 算法是确定的( deterministic )
  • 对于每一个加密算法 E(k,m)来说,都存在一个逆过程 D(k,m)

这里有两个经典的例子

  • 3DES: n = 64 bits, k = 168 bits;
  • AES: n = 128 bits, k = 128,192,256 bits;

系统框图如下:


Architecture of Block Cipher

在这里,原来的伪随机函数(PRF)就变成了伪随机排列(Pseudo Random Permutation,PRP)。它定义在 (K, X)空间中,E : K \times X \rightarrow X,并且满足条件:

  • 算法是确定的( deterministic );
  • 函数E(k,)是一对一的;
  • 对于每一个加密算法 E(k,m)来说,都存在一个逆过程 D(k,m)

观察PRP和PRG不难得出,PRP是伪随机函数的一种特殊的形式,其中满足X=Y和能够做逆变换。

直观的来讲,如果伪随机函数(PRF)是安全的,那么它就应该和真正随机函数是不可分辨的。按照现在攻击者的算力,大概率无法辨认这两种函数,便称为不可辨认性。同理,PRP也是如此。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容