S盒
2024-08-29 08:01:36
在密码学中,一个S盒(Substitution-box,置换盒)是对称密钥算法执行置换计算的基本结构。在块密码中,它们通常用于模糊密钥和密文之间的关系——香农的混淆理论。[1]
通常,S-Box接受特定数量的输入比特,m,并将其转换为特定数量的输出比特,n,其中n 不一定等于m。[1]
DES的6×4位S盒(S5)是一个很好的例子:
S5 | Middle 4 bits of input | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0000 | 0001 | 0010 | 0011 | 0100 | 0101 | 0110 | 0111 | 1000 | 1001 | 1010 | 1011 | 1100 | 1101 | 1110 | 1111 | ||
Outer bits | 00 | 0010 | 1100 | 0100 | 0001 | 0111 | 1010 | 1011 | 0110 | 1000 | 0101 | 0011 | 1111 | 1101 | 0000 | 1110 | 1001 |
01 | 1110 | 1011 | 0010 | 1100 | 0100 | 0111 | 1101 | 0001 | 0101 | 0000 | 1111 | 1010 | 0011 | 1001 | 1000 | 0110 | |
10 | 0100 | 0010 | 0001 | 1011 | 1010 | 1101 | 0111 | 1000 | 1111 | 1001 | 1100 | 0101 | 0110 | 0011 | 0000 | 1110 | |
11 | 1011 | 1000 | 1100 | 0111 | 0001 | 1110 | 0010 | 1101 | 0110 | 1111 | 0000 | 1001 | 1010 | 0100 | 0101 | 0011 |
最新文章
- Linux内核模块设计
- Git-windows安装包
- iOS开发中的内存分配(堆和栈)
- (转)2G到C-RAN网络架构的演进
- 使用jenkins构建持续集成平台
- Linux下对于inode的理解
- C#中的 序列化和反序列化
- 2016年4月TIOBE编程语言排行榜 Visual Basic正渐行渐远
- html5 meta标签属性整理
- Android开发之Toast解析
- XML DOM 节点
- 利用httpclient和多线程刷訪问量代码
- Oracle添加含有脏数据的约束
- 2019/1.7 js面向对象笔记
- mybatis mapper文件里的<;set>;<;trim>;
- html基本进阶知识【转】
- ajax跨域问题及相关解决方案
- springBoot 全局异常捕捉
- vue-awesome-swiper轮播的使用
- 遭遇sql server 2005 启动包未能正确加载需要重新安装错误,重装.NET FRAMEWORK经历分析