加密解密的原理是个很麻烦的问题,我之前上过一门课叫密码学,最后也没怎么学懂,所以这里我们只是使用java代码实现加密解密的功能,而不是讨论他的原理。
DES简单介绍
- DES(Data Encryption Standard)即数据加密标准,使用56bit密钥,将64bit的明文数据块加密为64bit密文。
- DES使用56bit密钥加密,秘钥要求8个字节64bit,每个字节有一位是奇偶校验位。
- DES加密强度小,容易被破解
DES加密代码实现
1 | /** |
AES简单介绍
- AES(Advanced Encryption Standard),即为高级加密标准。在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。AES的区块长度固定为128 比特,密钥长度则可以是128,192或256比特;
低强度加密代码实现
1 | /** |
高强度加密,使用iv参数
1 | /** |