打开/关闭搜索
搜索
打开/关闭菜单
29
872
230
1986
迷雾wiki
导航
首页
最近更改
随机页面
MediaWiki帮助
特殊页面
上传文件
切换首选项菜单
通知
打开/关闭个人菜单
未登录
未登录用户的IP地址会在进行任意编辑后公开展示。
user-interface-preferences
个人工具
创建账号
登录
查看“DES”的源代码
来自迷雾wiki
分享此页面
查看
阅读
查看源代码
查看历史
associated-pages
页面
讨论
更多操作
←
DES
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
== 基本定义 == DES全称为Data Encryption Standard,即数据加密标准,是一种使用密钥加密的块算法,1977年被美国联邦政府的国家标准局确定为联邦资料处理标准(FIPS),并授权在非密级政府通信中使用,随后该算法在国际上广泛流传开来。参见<nowiki/>https://csrc.nist.gov/pubs/fips/46-3/final == 加密过程 == 一开始输入64位的明文数据; 然后进行初始置换(IP); 初始置换之后,将生成的64位数据分为左右两部分,每部分为32位,命名为L0(Left0)、R0(Right0); 然后这两部分在密钥k的参与下,根据函数f进行16轮完全相同的运算,我们称为16轮迭代运算,每运算一次,左右两部分的命名就改变一次,比如第一轮运算后,L0、R0就变为L1、R1,直到16论运算完成,L0变为L16,R0变为R16; 在16轮运算完成之后,将L16和R16交换,并且合并为64位;再经过末置换(初始置换的逆置换/终止置换),输出密文。 ==== 初始置换 ==== 根据下表进行: 58 50 42 34 26 18 10 2 60 52 44 36 28 20 12 4 62 54 46 38 30 22 14 6 64 56 48 40 32 24 16 8 57 49 41 33 25 17 9 1 59 51 43 35 27 19 11 3 61 53 45 37 29 21 13 5 63 55 47 39 31 23 15 7 置换规则是以输入的第 58 位作为其第一位,第 50 位作为其第二位,依此类推,以第 7 位作为最后一位。 同时有其逆变换 40 8 48 16 56 24 64 3 39 7 47 15 55 23 63 31 38 6 46 14 54 22 62 30 37 5 45 13 53 21 61 29 36 4 44 12 52 20 60 28 35 3 43 11 51 19 59 27 34 2 42 10 50 18 58 26 33 1 41 9 49 17 57 25
返回
DES
。