TrueCrypt所支持的3种加密算法AES、Twofish、Serpent的简单介绍

转载 2016年06月02日 11:59:40
  TrueCrypt所支持的3种加密算法AES、Twofish、Serpent,其中AES名气比较大,而Twofish、Serpent则不太出名。其实这3种算法还是颇具渊源的。 
  70年代以来DES是美国政府所采用的加密标准,但DES使用的56位密钥过短,随着电脑计算能力的不断提高,已经越来越不安全了,以现代计算能力,24小时内即可能破解DES。在90年代中期,美国国家标准与技术研究院(NIST)开始考虑用高级加密标准(Advanced Encryption Standard 即AES)替代DES。 
  AES是采用公开竞标的,NIST的要求是:候选算法使用128bit的区块;候选算法必须使用最小128bit长度的密钥,并且可以向上扩大,且可以使用128、192、256bit密钥;候选算法要足够快,最好和DES算法差不多快;候选算法必须免费,没有知识产权约束。可以提名专利算法,但是如果被选,必须成为免费使用许可。 
  最初有约15种算法被提交作为AES的候选算法,经过长时间筛选,NIST测试的算法减少到5个,分别为Rijndael、Serpent、 Twofish、MARS 和RC6。再次筛选后还剩Rijndael、Serpent、Twofish,这三种算法各有长短:Serpent被认为最安全,而Rijndael速度最快,Twofish则居中。
  最后NIST选择了Rijndael作为AES的算法。
  TrueCrypt的测试也显示Rijndael的速度领先竞争对手很多。 TrueCrypt的哈希算法   哈希加密包括 RIPEMD-160、SHA-512 和 Whirlpool,而且可以在卷的创建、密码更改 以及文件产生时使用。但是SHA-512 和Whirlpool 符合NESSIE (New Euro-pean Schemes for Signatures, Integrity and Encryp-tion)标准,因为他们可以抵抗冲突,而 RIPEMD-160 不符合 NESSIE 标准,因为它的输出只有 160bit。 
TrueCrypt 简介  TrueCrypt 是一个免费、开源的加密软件,支持 Windows Vista/Windows XP、Mac OS 和Linux 操作系统。它加密解密功能十分强大,提供了 AES、Serpent、Twofish 三种基本加密算法以及由三种基本算法组合产生的另外 AES-Twofish AES-Twofish-Serpent Serpent-AES Serpent-Twofish-AES Twofish-Serpent 级联的加密算法,也提供了 HMAC-SHA-512、
HMAC-RIPEMD-160、HMAC-Whirlpool 三种哈希算法。 
  1) TrueCrypt 是基于虚拟磁盘驱动的 普通的加密软件都是基于应用层的。需要加密的文件在应用层加密,然后存放在磁盘上。解密时也是从磁盘读出在应用层软件中解密。 而TrueCrypt 把加密解密模块放到虚拟磁盘驱动里,虚拟磁盘驱动注册为系统服务。当 TrueCrypt 创建、加载加密卷,实时加密解密文件时,TrueCrypt 应用层的操作调用内核相应指令,最终将应用层请求转变为虚拟磁盘驱动要完成的 IRP请求,虚拟磁盘驱动完成 I/O 请求。
  2) TrueCrypt 具有实时性、透明性、安全性、实时性是指用户向卷文件对应的虚拟磁盘中写入、读出文件时,TrueCrypt 自动实时的对文件加解密,用于加密解密速度较快。透明性是指用户读写加密卷文件中的内容时,用户不知道文件已经被加解密。安全性是指对于文件的加密解密都是在内存中进行的, TrueCrypt不会把未加密的文件数据存放到磁盘上,并且加密完的文件没有任何标识显示是加密卷,极大的提高了数据加解密过程的安全。
  3) TrueCrypt 提供了强大多样的加密方式:
TrueCrypt 加密方式主要有文件型加密、非系统分区或驱动器加密、系统分区或系统所在硬盘加密。通过分析 TrueCrypt 源码,可知TrueCrypt整体结构分为四个主要模块, 
  B。 创建模块:根据用户选择的创建参数,来创建相应的加密卷(包括普通的卷,磁盘分区,卷中的操作系统加密等) 。
  C。 加载模块:根据用户选择的各种加载参数,来加载相应的加密卷,形成相应的虚拟磁盘,供用户操作。
  D。虚拟磁盘驱动程序: TrueCrypt用户层的各种操作通过内核的I/O管理器转变为各种IRP请求。虚拟磁盘驱动相应文件系统驱动程序的 IRP 对虚拟磁盘(卷文件)进行相应的读写操作。 

SERPENT算法学习心得

本文原创,转载请注明出处。 douqingl@gmail.com 1. 概述         由于工作的原因,我学习了SERPENT算法(注释1),并进行了软件实现,抓取了每一轮、每一步操作的中间数据...
  • douqingl
  • douqingl
  • 2015年12月10日 23:42
  • 2101

Twofish加密算法详解

.p9 {font-size:9pt;text-decoration:none;}a:link {color:#000099;text-decoration:none;}a:visited {colo...
  • oyd
  • oyd
  • 2008年03月28日 10:53
  • 4604

TwoFish

TwoFish设计者:Bruce Schneier人物简介:   1993年出版的《应用密码学》。《应用密码学》对密码学20年的发展做了百科全书式的总结,而且,随书奉送的软盘提供了许多算法的C语言实...
  • Ni9htMar3
  • Ni9htMar3
  • 2016年11月29日 15:28
  • 886

SERPENT算法实现

  • 2015年12月11日 01:11
  • 513KB
  • 下载

TrueCrypt所支持的3种加密算法AES、Twofish、Serpent的简单介绍

TrueCrypt所支持的3种加密算法AES、Twofish、Serpent,其中AES名气比较大,而Twofish、Serpent则不太出名。其实这3种算法还是颇具渊源的。    70年代以来DE...
  • cncrypt
  • cncrypt
  • 2016年06月02日 11:59
  • 1262

TrueCrypt 使用经验[1]:关于加密算法和加密盘的类型

★如何选择"加密算法"?     先大致介绍一下 TrueCrypt 支持的加密算法和散列算法。然后再聊不同场合该如何选择。     ◇TrueCrypt 支持哪些加密算法?     True...
  • cncrypt
  • cncrypt
  • 2016年06月02日 11:28
  • 1249

TrueCrypt 使用经验[3]:关于加密

本来第三篇想写隐藏卷相关的经验。但是看到好几个读者在留言中提及加密盘的破解,所以俺先来说说和破解有关的话题以及防范措施。 ★各种暴力破解(穷举) ◇针对密码/口令的穷举破解...
  • cncrypt
  • cncrypt
  • 2016年06月02日 11:32
  • 1026

Serpent加密算法

  • 2006年02月23日 09:05
  • 957KB
  • 下载

Serpent加密算法代码

  • 2009年07月14日 01:28
  • 893KB
  • 下载

Linux Kernel(Android) 加密算法总结(一)(cipher、compress、digest)

1. Linux内核支持哪些加密算法 ?     内核支持的加密算法很多,包括:     对称加密算法,如AES;     摘要算法,如sha1,md5;      压缩算法,如deflate。   ...
  • wyh991131
  • wyh991131
  • 2014年07月08日 17:45
  • 3665
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:TrueCrypt所支持的3种加密算法AES、Twofish、Serpent的简单介绍
举报原因:
原因补充:

(最多只允许输入30个字)