[密码学]DES

先声明两个基本概念

代换(substitution),用别的元素代替当前元素。des的s-box遵循这一设计。

abc-->def

置换(permutation),只改变元素的排列顺序。des的p-box遵循这一设计。

abc-->bac

DES最核心的算法就是feistel结构的16轮加密 。

该结构以工作在IBM的德国密码研究员Horst Feistel的名字命名。其中涉及轮函数F,和每一轮的子密钥K。

F函数内部:

依次经过带<扩展属性>的p-box(会产生重复的元素),(与每一轮对应的子密钥K)异或,带<压缩属性>s-box,正常的p-box。

子密钥K的生成方法:

标准的DES要求密钥为64bit,但是每8位中最后一位为奇偶校验位,不参与真正的加密。

pc--permutation choice,也是带<压缩属性>的p-box

经过pc1盒----舍弃奇偶校验位(共8bit,剩下56bit)并置换。

记56bit的左28bit为C0,右28bit为D0。C0,D0进行循环左移,左移的位数根据当前的加密轮次不同。

再经过pc2盒,即可生成当前轮次的子密钥。

相关推荐
数据知道10 小时前
密钥管理(KMS)——轮换、分级、HSM 硬件安全模块
网络安全·密码学·哈希算法
老王熬夜敲代码20 小时前
BLAKE3:最快的密码学哈希函数
算法·密码学·哈希算法
无小道1 天前
对称加密和非对称加密(小记)
网络·密码学
数据知道1 天前
国密算法实战——SM2/SM3/SM4 在国产系统中的应用
网络·算法·安全·网络安全·密码学·哈希算法
数据知道1 天前
量子计算威胁——后量子密码(PQC)迁移实战
安全·网络安全·密码学·量子计算
keven-wang2 天前
密码学-对称加密和非对称加密
网络·密码学
keven-wang2 天前
密码学-数字证书及其他相关概念
网络·密码学
数据知道2 天前
哈希与密码存储——bcrypt、Argon2、盐值与彩虹表
网络·算法·安全·网络安全·密码学·哈希算法
hansang_IR3 天前
【题解】P4454 [CQOI2018] 破解D-H协议
c++·算法·密码学·数论
keven-wang3 天前
密码学-6个密码学核心概念
密码学