Linux加密框架中的算法和算法模式(一)

1. 总述

本节主要包括两方面的内容,其一是Linux加密框架中支持的算法简介,其二是Linux加密框架中支持的算法工作模式简介。
本节内容主要来自于网络。

2. 算法汇总

  1. 密码算法

常见的密码算法可以分为三类,对称密码算法、非对称密码算法和哈希算法。
对称密码算法指的是加密和解密使用相同密钥的密码算法,其优点在于加解密的高速度和使用长密钥时的难破解性。
非对称密码算法指的是加密和解密使用不同密钥的加密算法,也成为公钥密码算法。假设两个用户要加密交换数据,双方交换公钥,使用时乙方用对方的公钥加密,另一方即可使用自己的私钥解密。非对称密码算法的缺点是加解密速率要远慢于对称密码算法。
哈希算法,也称杂凑算法、散列算法或Hash算法,是一种单向算法,用户可通过哈希算法对目标信息计算生成一段特定长度的杂凑值,却不能通过杂凑值重新获得目标信息,因此哈希算法主要用于信息的完整性校验。
加密框架支持的密码算法主要是对称密码算法和哈希算法,暂时不支持非对称密码算法。除密码算法外,加密框架还包括伪随机数生成算法和压缩算法等非密码算法。

  1. 对称密码算法

对称密码算法分为分组密码算法和序列密码算法两种,其中分组密码算法将是对称密码算法的发展趋势重点。分组密码算法通常由密钥扩展算法和加密(解密)算法两部分组成,其中密钥扩展算法将b字节的密钥扩展成r个子密钥。加密算法有一个密码学上的弱函数f与r个子密钥迭代r次实现。
加密框架中支持的对称密码算法基本上都是分组密码算法,但是也支持序列算法算法,只是将序列密码算法定义为分组长度为1的特殊的分组密码算法。
-DES和3DES算法
DES全称为Data Encryption Standard,即数据加密标准,是一种使用密钥加密的块算法,1977年被美国联邦政府的国家标准局确定为联邦资料处理标注(FIPS),并授权在非密级政府通信中使用。3DES(即Triple DES)是DES向AES过渡的加密算法,是DES更安全的一种变形,3DES使用2条56位的密钥对数据执行三次DES算法,加密过程是加密e-解密d-加密e,解密过程是解密e-加密d-解密e。
加密框架支持DES算法和3DES算法,记为des和3des_ede,实现源码为des_generic.c。
-AES算法
AES全称Advanced Encryption Standard,即高级加密标准,在密码学上又称为Rijndeal算法,是美国联邦政府采用的一种区块加密标准,用来替代原先的DES算法。AES的基本要求是采用对称分组密码体制,密钥的长度最少支持128、186、256位,分组长度为128位。
2000年10月2日,美国政府正式宣布选中比利时密码学家Joan Deamen和incent Rijmen提出的Rijndeal算法组为AES。严格地说,AES和Rijndeal算法并不完全一样,虽然在实际应用中二者可以互换

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值