8、密码学基础:对称与非对称加密算法解析

密码学基础:对称与非对称加密算法解析

1. 对称分组密码结构

对称加密算法各有设计,但多数对称分组密码基于两种基本结构:Feistel结构和替换 - 置换(S - P)结构。

  • Feistel结构 :由Horst Feistel设计,其特点是在每一轮加密过程中对消息的一半进行加密,一个完整的加密过程包含多轮加密。基于Feistel结构最成功的密码算法是DES(数据加密标准),其加密过程由16轮加密组成。

    • 轮函数$F(K, R)$以轮加密密钥$K$和上一轮消息块的右半部分为输入,生成一个32位字符串,该字符串与上一轮消息块的左半部分进行异或运算,输出当前轮消息块的右半部分,而上一轮消息块的右半部分直接复制为当前轮消息块的左半部分。轮函数$F(K, R)$设计精巧,轮密钥的生成是一个独立过程。
    • Feistel结构加密(如DES)的解密过程与加密过程相同,只是轮密钥以相反顺序使用。例如,DES加密算法使用轮密钥$K_1, K_2, \cdots, K_{16}$,将其顺序反转成$K_{16}, K_{15}, \cdots, K_1$,加密算法就变成了相应的解密算法。这一特性在同时需要加密和解密算法时可节省硬件资源。
  • S - P结构 :在加密过程中使用替换和置换作为两个基本操作。S - P结构的加密算法在一个完整的加密过程中也有多个处理轮。AES(高级加密标准)是典型的具有S - P结构的加密算法。

    • 在S - P结构中,解密过程由解密轮组成,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值