Quantcast
Channel: CodeSection,代码区,网络安全 - CodeSec
Viewing all articles
Browse latest Browse all 12749

加密算法系列――对称加密算法

0
0
前言

在平时工作的时候,经常用到一些加解密算法,刚好近来比较有时间,就简单小结了下。

注:转载请附上本文链接: http://linianjian.cn/2016/03/07/symmetric-cryptography/ .

本文将对常用的对称加密算法进行一些简单的整理,也算是知识的简单积累,

对称加密算法简介

对称加密算法,属于加解密算法中的一种,它使用同一组密钥进行加密和解密,如下图所示:


加密算法系列――对称加密算法

对称加密算法的有点在于:计算速度较快,可以用于大数据的加解密。

由于对称加密算法使用的同一组密钥进行加密、解密,因此如何保证密钥的安全性(不被第三方获取),这就是个问题。

常见的对称加密算法

比较常用的对称加解密算法有:DES、3DES、AES等。

DES算法

DES(Data Encryption Standard),它是IBM公司于1975年研究成功并公开发表的。

DES算法的入口参数有三个:Key、Data、Mode。

Key: 8个字节共64bit,其中56bit有效位和8bit校验位,是DES算法的工作密钥; Data: 8个字节64位,是要被加密或被解密的数据, 如果加密数据长度大于8字节,则可以选用 ECB/CBC 组合模式进行加解密; Mode为DES的工作方式,有两种:加密或解密。

DES算法的原理,可以参考文尾的链接。

通常使用DES算法进行加密的数据都大于8个字节,需要使用有一些常用的DES加密组合模式:ECB、CBC

ECB模式

最简单的加密模式即为电子密码本(Electronic codebook,ECB)模式,需要加密的消息按照块密码的块大小被分为数个块,并对每个块进行独立加密。

ECB模式应该是最简单的加密组合。

CBC模式 3DES算法 AES 算法 参考链接 维基百科: Symmetric-key algorithm Cryptography : Symmetric Encryption by Symmetric Algorithm Classes Part 1 常用加密算法的Java实现总结(二)――对称加密算法DES、3DES和AES DES加密算法原理简析 维基百科:块密码的工作模式

Viewing all articles
Browse latest Browse all 12749