MATLAB 实现DES加解密

您所在的位置:网站首页 des算法加密解密代码 MATLAB 实现DES加解密

MATLAB 实现DES加解密

2024-07-13 14:24| 来源: 网络整理| 查看: 265

五、总结

DES加密属于对称密码体系中的分组加密算法

DES加解密针对64bit的明文以及密钥,在实验过程中,为了方便用户输入,使用16进制的输入。获取输入后,将其转换为2进制的明文以及密钥串

实验过程中,限制了用户的输入必须为16位16进制数字,位数不够时,会输出提示信息

DES加密过程复杂,且加密与解密过程高度对称,因此在实验过程中,将整个DES加解密函数编写在了同一个函数中,即DES()函数

在加密过程中,DES()函数的最后一个参数为1,表示加密。解密过程中,DES()函数的最后一个参数为0,表示解密

DES加密的主要过程为中间的16轮循环,该部分在处理时,为了加快速度,实验中将S盒以及P盒全部写进了DES()函数中,直接在加解密的过程中初始化并加以使用

DES加解密的过程中轮函数比较重要,首先进行IP置换。置换结束后进行E扩展,将32bit的R0扩展为48bit的R0,随后进行异或,即将48bit的R0与K1进行异或。结束后再进行S盒的压缩处理,6bit进4bit出,将48bit的输入转为32bit输出。此外,还需要进行IP逆置换

除了轮函数外,16轮的轮密钥生成也非常重要。密钥本身为64bit的输入,但是需要去除8bit的校验位,剩余的56bit参与运算。每轮中经过置换操作,生成48bit的轮密钥



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3