雏鹰部落

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2700|回复: 8

转:DES/3DES/AES 简介

[复制链接]
发表于 2011-6-22 22:20:26 | 显示全部楼层 |阅读模式
网上看到的简明介绍(5分钟普及),发表时间可能远了些。它们都属于对称加密算法(做过VPN实验的童鞋该听说过吧),介绍给大家。下划线部分是俺自己加上的,
————————————————————————————————————————————————
公元前400年,古希腊人发明了置换密码。1881年世界上的第一个电话保密专利出现。在第二次世界大战期间,德国军方启用“恩尼格玛”密码机,密码学在战争中起着非常重要的作用。(对军事感兴趣的童鞋肯定了解啦,非常著名的密码机

DES
  1977年1月,美国政府颁布:采纳IBM公司设计的方案作为非机密数据的正式数据加密标准(DES Data Encryption Standard) 。
  目前在国内,随着三金工程尤其是金卡工程的启动,DES算法在POS、ATM、磁卡及智能卡(IC卡)、加油站、高速公路收费站等领域被广泛应用,以此来实现关键数据的保密,如信用卡持卡人的PIN的加密传输,IC卡与POS间的双向认证、金融交易数据包的MAC校验等,均用到DES算法。

  DES算法的入口参数有三个:Key、Data、Mode。
  其中Key为8个字节共64位,是DES算法的工作密钥;
  Data也为8个字节64位,是要被加密或被解密的数据;
  Mode为DES的工作方式,有两种:加密或解密。

  DES算法是这样工作的:
  如Mode为加密,则用Key 去把数据Data进行加密, 生成Data的密码形式(64位)作为DES的输出结果;
  如Mode为解密,则用Key去把密码形式的数据Data解密,还原为Data的明码形式(64位)作为DES的输出结果。
  在通信网络的两端,双方约定一致的Key,在通信的源点用Key对核心数据进行DES加密,然后以密码形式在公共通信网(如电话网)中传输到通信网络的终点,数据到达目的地后,用同样的Key对密码数据进行解密,便再现了明码形式的核心数据。这样,便保证了核心数据(如PIN、MAC等)在公共通信网中传输的安全性和可靠性。
  通过定期在通信网络的源端和目的端同时改用新的Key,便能更进一步提高数据的保密性,这正是现在金融交易网络的流行做法。


3DES
  3DES是DES加密算法的一种模式,它使用3条64位的密钥对数据进行三次加密。数据加密标准(DES)是美国的一种由来已久的加密标准,它使用对称密钥加密法。
  3DES(即Triple DES)是DES向AES过渡的加密算法(1999年,NIST将3-DES指定为过渡的加密标准),是DES的一个更安全的变形。它以DES为基本模块,通过组合分组方法设计出分组加密算法。

  设Ek()和Dk()代表DES算法的加密和解密过程,K代表DES算法使用的密钥,P代表明文,C代表密表,这样,
  3DES加密过程为:C=Ek3(Ek2(Ek1(P)))
  3DES解密过程为:P=Dk1((DK2(Dk3(C)))
  K1、K2、K3决定了算法的安全性,若三个密钥互不相同,本质上就相当于用一个长为168位的密钥进行加密。多年来,它在对付强力攻击时是比较安全的。若数据对安全性要求不那么高,K1可以等于K3。在这种情况下,密钥的有效长度为112位。


AES
  AES(Advanced Encryption Standard):高级加密标准,是下一代(作者写作时间关系,直接理解为“这一代”吧)的加密算法标准,速度快,安全级别高。
  用AES加密2000年10月,NIST(美国国家标准和技术协会)宣布通过从15种候选算法中选出的一项新的密匙加密标准。Rijndael被选中成为将来的 AES。Rijndael是在1999年下半年,由研究员Joan Daemen 和 Vincent Rijmen 创建的。AES正日益成为加密各种形式的电子数据的实际标准。
  美国标准与技术研究院(NIST)于2002年5月26日制定了新的高级加密标准(AES)规范。

  AES算法基于排列和置换运算。排列是对数据重新进行安排,置换是将一个数据单元替换为另一个。
  AES使用几种不同的方法来执行排列和置换运算。AES是一个迭代的、对称密钥分组的密码,它可以使用128、192和256位密钥,并且用128位(16字节)分组加密和解密数据。

  注:与公共密钥加密使用密钥对不同,对称密钥密码使用相同的密钥加密和解密数据。通过分组密码返回的加密数据的位数与输入数据相同。迭代加密使用一个循环结构,在该循环中重复置换和替换输入数据。

发表于 2011-6-23 07:57:12 | 显示全部楼层
简洁明了~!非常好的帖子~感谢楼主分享!学习了~嘿嘿~
发表于 2011-6-23 08:41:43 | 显示全部楼层
谢谢分享~
知行合一~
知道怎么回事?还是知道如何使用?
谢谢LZ强劲的帖子~
发表于 2011-6-23 14:54:41 | 显示全部楼层
谢谢分享,希望更多的网络爱好者可以加入到银座部落。
发表于 2011-6-23 16:47:43 | 显示全部楼层
好帖, 顶楼主
发表于 2011-6-23 17:06:17 | 显示全部楼层
感谢分享
发表于 2011-6-23 23:02:03 | 显示全部楼层
谢谢楼主的分享@!
发表于 2011-6-24 14:47:02 | 显示全部楼层
果断学习之~~~很棒的分享!
发表于 2011-7-4 14:32:55 | 显示全部楼层
看了之后相当的有感觉啊,谢谢分享。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|熊猫同学技术论坛|小黑屋| 网络工程师论坛 ( 沪ICP备09076391 )

GMT+8, 2024-11-26 00:02 , Processed in 0.081939 second(s), 20 queries , Gzip On.

快速回复 返回顶部 返回列表