分享
密码学介绍 Intro.to.Crypto.杨新(中文第二版).pdf
下载文档

ID:3333048

大小:2.89MB

页数:109页

格式:PDF

时间:2024-03-02

收藏 分享赚钱
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
密码学介绍 Intro.to.Crypto.杨新中文第二版 密码学 介绍 Intro to Crypto 中文 第二
密码密码学学介绍介绍 An Introduction to CryptographyAn Introduction to Cryptography 中文中文第二版第二版 美美 Jon CallasJon Callas 杨新杨新 编编译译 An Introduction to Cryptography 美Jon Callas 密码学介绍(中文第二版)编译:杨新 i 声明声明 发布信息发布信息 密码学介绍 版权信息版权信息 2009 年中文翻译版权归杨新所有。个人可以免费参阅,如果将本书用于任何商业用途,请为翻译版本的版权所有人支付版权费!本书中文参考内容的版权人也会从中获益!许可证和专利信息许可证和专利信息 IDEA 算法是 Ascom Tech AG 专利(美国专利号 5,214,703)。CAST 算法是美国北方电信(Northern Telecom,Ltd)的专利。PGP 公司获得加利福尼亚大学专利许可(10/655,563)包括从通用区块加密算法(Conventional Block Cipher)由分组密码操作方法构造广义区块加密算法(Wide-blocksize block Cipher)的技术。PGP 公司拥有包含此内容的软件和包含专利的文档,或正在申请的专利。提供的软件和文档并没有给予任何使用专利的权力。商标商标 PGP、PGP 标志、Pretty Good Privacy 和 Pretty Good 英文标志都是 PGP 公司注册商标。其它注册的和未注册的商标的所有权归原商标所有人。许可许可 PGP 软件压缩代码拥有 Mark Adler 和 Jean-Loup Gailly 的免费 Zip 算法的使用许可 限制限制 本文如有任何主题内容的更改,恕不另行通知。出口信息出口信息 PGP 出口可能是工业安全局时时刻刻所争论法律法规的主题,美国商贸部限制技术和商品出口 关于关于 PGP公司公司 PGP 公司是一家世界级的安全软件公司。它是数据和电子邮件加密界的领军代表。产品基于统一密钥管理和管理策略结构。PGP 加密平台也提高了全套企业级加密方案。PGP 同时也为电子邮件、笔记本、台式电脑、实时加密、PDA、网络存储、FTP 服务、批量数据传送和备份的个性安全定制。PGP 方案已经被超过 3 万家企业、公司和世界范围内的很多政府采纳。其中包含 Fortune(R)(财富杂志)100 强公司中的 84和 Fortune(R)全球 100 强企业中的 66。同时 PGP 公司的创新、标准、解决方案在全球屡获殊荣。PGP 的解决方案可以帮助客户保护机密信息、客户数据、协助管理、数据验证和保护公司商标和声誉。联系 PGP 公司登录 http:/,电话:+1 650 319 9000 授权授权 本书的翻译作者授权阅读者可以免费下载、阅读、打印本书。同时禁止任何网站以字符页面形式转载本书。对于任何翻译的疏漏或错误,如果造成了你的损失,翻译者不承担任何责任。如果使用本文为任何商业目的(包含网站转载字符的行为在内的),您必须为翻译作者支付书籍的版权费。联系翻译作者 电子邮件:,MSN:。An Introduction to Cryptography 美Jon Callas 密码学介绍(中文第二版)编译:杨新 ii 序序 本书翻译原文来自美国 PGP 安全软件公司的产品 PGP Desktop 9.9.0 软件包中的 Jon Callas在 2006 年所著An Introduction to Cryptography(Intro To Crypto.pdf(CRC-32:79EE7FEF)),原文的意旨在于使所有普通人都可以看懂这本关于密码学的书籍,经过翻译和改编,所以本书的文字简单,适合初学者阅读。内容从密码学的历史到密码学在现实生活中的应用,而且书中没有深入讨论任何专业性的问题,也不会讨论算法的细节,否则不少人会看不懂,最多的就是一个名字、一个概念,甚至是一个比喻,也可能是一个简单的数学知识。有兴趣的人可以从你感兴趣的方面深入的了解密码学。原作者是处在美国的法律环境,美国的法律更新和加密技术发展一样快,文章内众多法律名称也为我们了解美国关于密码技术的法律做了介绍。Cryptography 在英语中是密码术、密码学的意思,外国人认为的“密码”一词是个动词,意味加密,也就是加密数据,他们强调的是这个过程,中国人称的“密码”是开启秘密的那个口令码,它是使用密钥文件的钥匙。所以,外国人用词更加精确。其实“密码学”原义是包含数据加密和数据解密 2 个过程,而从中文字面上看就误解成了研究破解密码的一种学问,认为研究密码学的都是在破译密码,不完全对。破解密码的学问叫做:密码分析学!注释中有大量本人的“非官方”说明,遇到不懂的请参阅注释!注释中还针对中国读者添加了一些中国的实例,推荐遇到有注释的环节都仔细看看,表达的意思可能就是另外一种。在前文出现的一些词汇你可能不是很明白,而在后面会有具体的介绍。原版中的尾注很不方便,所以我把尾注全部改为当页下方的脚注,读者可以很快找到当页里面自己想要的东西!注释的链接有不少英文内容的,所以我建议大家努力学习英语!推荐阅读本书的人具有简单的计算机知识和高等数学的底子,其实用到的地方也不是很多,你不会这些也不必担心,下方的脚注仔细一看就完全可以明白。没有翻译外国人的名字,名字只是字符代号而已,这样可以使你更容易的在互联网上搜索关于他们的故事。本书的内容除了来自 Jon Callas 的An Introduction to Cryptography,有一小部分是来自 Bruce Schneier 的应用密码学,这是因为 Jon Callas 写的过于简陋,入门都谈不上,高度刚刚碰到门槛,不小心可能会绊着,所以我稍微提升了一点高度。附录部分并不是原书的内容,本书的英文书出自 PGP 官方人员的手,在一些细节就会有特别的广告嫌疑。为了给读者一个更加宽阔的软件选择视野,我挑选了一些我认为比较可信的软件。有些文字几乎是复制粘贴上去的。因为实在找不出更好语句来阐述它们了。我想应该不会有人在免费打广告的前提下问我要稿费。如果有人想尝试重新翻译,我很赞成,这里给想尝试的人的一些建议:在翻译这类书前,并不是只要有英文的功底。中国话隔行如隔山,语言类的知识是无法解决这个问题的,推荐去图书馆参阅大量数学部分的知识,且包括密码学书籍的部分,并且要了解基本的计算机知识。我并非 PGP 官方技术人员,也不是英文翻译专业出生。翻译这本书纯粹是对英文和密码学的兴趣。尽管我做了很细心的校对,书中的错误是难免的,也可能出现很多翻译的错误。在这本“非官方”译本中有许多不足的地方希望 PGP用户、广大热心网友、数学高人、密码学研究者指出。同时感谢你们对这本书的支持。杨新 2010.1 An Introduction to Cryptography 美Jon Callas 密码学介绍(中文第二版)编译:杨新 iii 翻译者致谢翻译者致谢 感谢在书籍翻译过程中为我提供帮助和支持的一大群网友朋友!其中包括 PGP 的 QQ 交流群的“砖家”们。感谢老鼠妹妹找出了很多细致的错误。感谢小浒子指出的很多语句不通顺的地方。感谢黎慈军收集的邮件加密软件的名单。感谢肥肥 208 的非官方技术支持。感谢心铃茹雪、老猫在 PDF 文档的加密和书签方面的指导。感谢本书的所有阅读者。发布版本:发布版本:中文第一版正式版 2009.4.9(精简版 CRC-32:4A1CA0AC,PDF/A-1a CRC-32:2F53EF59)中文第二版正式版 2010.1.28 中文版中文版第二版第二版相对于中文版相对于中文版第一版第一版的变化的变化:1.更改排版使用的结构。2.添加大量的密码学历史的细节以及相关知识。3.为了简化发布工作,只发布 PDF/A-1a 标准a的 PDF,可以在计算机和智能手机等b其他嵌入设备上打开阅读。a ISO 19005-1 等级 A 规范(PDF/A-1a)基于等级 B,但添加了“标签 PDF”中的一些关键属性:它要求结构信息和可靠的文本语义,以便保存文档的逻辑结构和自然阅读顺序。简而言之,PDF/A-1a 不仅确保文档在未来使用时保持外观的一致,还确保其内容(语义)能够得到可靠的解释,并可以被有功能障碍的人士读取。b从 Adobe Reader 7 开始支持正式发布的 PDF/A 标准,Foxit Reader 也已经完全支持这个标准。另外在智能手机设备中,经过测试 Adobe Reader LE 2.5 和 mBrain PDF+1.75(05)可以完整显示所有字符。Adobe Reader LE 1.5 is not support this document!An Introduction to Cryptography 美Jon Callas 密码学介绍(中文第二版)编译:杨新 iv 目录目录 1 关于本书.-1-1.1 什么样的人适合阅读这本书.-1-1.2 万丈高楼平地起.-1-1.3 密码学很难但是它使梦想变的简单.-1-1.4 说难不难,说易不易.-2-1.5 究竟什么是密码学?.-3-1.5.1 隐写术.-3-1.6 这本书的历史.-4-1.7 原书作者特别致谢.-5-2 为什么密码学那么重要?.-6-2.1 走进缺口:骇人的事件.-6-2.1.1 笔记本丢失事件.-6-2.1.2 无安全保护的网络资源.-8-2.1.3 个人身份信息丢失.-9-2.2 法律法规.-9-2.2.1 含保密项的法律法规.-9-2.2.2 复合法律法规.-10-2.2.3 违规警告的法律法规.-11-2.3 限制加密技术的法律法规.-11-3 密码技术的不完全历史.-13-3.1 人工密码技术.-13-3.1.1 代替密码和换位密码.-14-3.1.1.1 代替密码.-14-3.1.1.2 换位密码.-15-3.2 机械密码技术.-19-3.2.1 转轮机.-19-3.3 计算机密码技术.-21-3.3.1 公钥密码技术.-21-3.3.2 加密技术标准的提升.-22-3.3.3 AES 标准.-24-3.3.4 密码界的战争.-25-4 加密技术的基础.-28-4.1 基本部件.-28-4.1.1 参量和变量.-28-4.1.2 随机数字.-29-4.1.2.1 伪随机序列.-29-4.1.2.2 真正的随机序列.-30-4.1.2.3 真随机数与伪随机数更加直观的区别.-31-4.1.3 密钥.-33-4.1.4 算法.-33-4.1.4.1 区块大小.-34-4.1.4.2 公钥加密算法的根本.-35-An Introduction to Cryptography 美Jon Callas 密码学介绍(中文第二版)编译:杨新 v 4.1.4.3 因子分解法则.-35-4.1.4.4 对数法则.-36-4.1.4.5 密钥的长度.-37-4.1.4.6 密钥需要多长?.-38-4.1.4.7 不可破译的算法强度有多大?.-39-4.1.4.8 真正不可破解的加密:One-Time Pads.-42-4.1.4.9 One-Time Pads 的诱惑.-44-4.1.5 Hash 算法.-46-4.1.5.1 通用 Hash 算法.-47-4.1.5.2 Hash 算法难度.-47-4.1.6 数据完整性算法:信息鉴别码和数字签名.-49-4.1.7 证书机制.-50-4.1.7.1 为什么使用证书机制?.-50-4.1.8 信任和权限.-51-4.1.8.1 直接信任.-51-4.1.8.2 分级信任.-51-4.1.8.3 积累信任.-52-4.1.8.4 混合信任模式.-52-4.1.9 证书区别.-53-4.1.9.1 认证和证书.-53-4.1.10 融合从明文生成密文.-53-4.1.11 分离从密文还原明文.-54-4.1.12 芝麻开门的技术含量.-55-4.1.13 生物识别.-59-4.1.14 从这里继续.-63-5 未来的密码技术.-64-5.1 名词到形容词,语法到语义学.-64-5.1.1 社会期望.-64-5.2 数字签名与语义学.-65-5.2.1 数字签名并非签名.-65-5.2.2 认可的神话.-67-5.2.2.1 高强度算法的反驳.-68-5.2.3 签名与责任.-68-5.2.4 现实的语义改变.-69-5.3 加密技术可靠性.-70-5.3.1 硬件加密与软件加密.-70-5.3.1.1 硬件加密.-70-5.3.1.2 软件加密.-71-5.4 硬件升级.-71-5.5 权限管理.-72-5.6 数据销毁办法.-73-5.7 保密增强技术.-75-5.8 细微的改变.-76-5.8.1 新型 Hash 算法.-76-An Introduction to Cryptography 美Jon Callas 密码学介绍(中文第二版)编译:杨新 vi 5.8.2 新型算法.-76-5.8.2.1 结合加密和验证的算法.-76-5.8.2.2 新算法和重新设计的算法.-77-5.8.2.3 椭圆曲线算法.-77-5.8.2.4 双线性映射算法.-77-5.8.3 量子密码学.-78-5.9 什么能够改变路线?.-79-5.9.1 专利影响.-79-5.9.2 科学虚构的技术.-79-5.9.3 法律改变.-80-附录.-81-6 技术软件的介绍.-81-6.1 加密压缩软件.-81-6.1.1 WinZip.-82-6.1.2 WinRAR.-83-6.1.3 7Zip.-84-6.1.4 UHARC.-85-6.2 邮件加密软件.-85-6.2.1 The Bat.-86-6.2.2 Foxmail.-86-6.3 数据安全删除软件.-87-6.3.1 O&O Soft SafeErase.-88-6.3.2 East-Tec DisposeSecure.-88-6.3.3 Linux 类系统下的工具.-89-6.4 系统级别加密软件.-95-6.4.1 MicroSoft EFS.-95-6.4.2 MicroSoft BitLocker.-96-6.4.3 PGP.-97-6.4.4 TrueCrypt.-97-6.4.5 Utimaco SafeGuard.-98-6.4.6 The GNU Privacy Guard.-98-7 关于 PGP 的开创者.-100-7.1 背景.-100-7.2 PGP 的起源.-100-后记.-102-An Introduction to Cryptography 美Jon Callas 密码学介绍(中文第二版)编译:杨新-1-1 关于本书关于本书 真正的秘密是被保护在多变的结构之下的 美国首席法官 John Roberts 1.1 什么样的人什么样的人适合阅读适合阅读这本书这本书 一些喜欢密码学并对密码学感兴趣的初学者,他们想搞懂密码学到底是什么。本书有对密码学的内容最基本的解释、技术和专业术语,这些都基于基础密码学和 PGP 软件的一些特殊地方,如果你想了解密码学,这是一个好的开始,并且这本书中有大量链接到有用互联网站点的超链接,那里有许多令你感兴趣的资源,如果你阅读的是电子 PDF 格式的文件,你可以直接点击这些链接跳转到参考资料。1.2 万丈高楼平地起万丈高楼平地起 密码学是信息技术的一个重要的组成部分。我们工作使用的系统都是信息化的时,它就可以作为我们要改造的物理实物。假设我寄给你一封信,我会把信纸放入一个信封内而避免被别人看到,我甚至可以在底部开口处签名,并且你可以从邮戳上得知这封信是从什么地方寄来的。在商业活动中我们彼此交换名片,或者我会给你出示客户卡片来证明我们的关系,其实就是这个客户卡片的意义。我们现在在互联网的所作的一切,诸如我们单独聊天时,或者其它我们之间可以说明的关系的活动a,都使用了加密技术,加密技术给我们带来的不仅仅是将钢筋混凝土的世界虚拟化,加密技术还可以保证远距离通信中信息的安全性、秘密性、可靠性。这和我们用 0 和 1 所构造的计算机世界是一样的。1.3 密码学密码学很难很难但是但是它它使使梦想梦想变变的简单的简单 密码学难是有很多原因的。因为你要去了解很多基础知识。你小时候可能偷偷写过“小纸条”,你可能看到过报纸上的猜字游戏b,但有时你自己可能看不出来,那么最简单的密码术你已经知道了。然而,密码学在近 30 年来的变化要比 3000 年来的变化大的多的多。这是因为现代密码学和计算机产生了巨大的联系。它最大的意义就是让你无法一眼识破秘密,它就像爱丽丝在仙境c中一样。公钥加密技术以 PGP 为代表的现代密码学技术是与常识相反的d。密码学不需要你学习你已经知道的一些事情,或者换句简单的话说,你要学会如何去解释你已经知道的一些新颖、巧妙想法的过程。a 活动:指计算机通讯诸如下载、上传、远程连接、浏览等点对点的计算机连接活动。b 密文:由明文经过加密算法加密后生成的东西,可以是文字、图案等,按照算法还原回去的就是明文。c 爱丽丝漫游仙境:一篇童话故事,主人公和他的朋友从一个兔子洞进到仙境。仙境里面有很多不可思议的东西。d 与常识相反:一般的常识是算出来的密文的算法都是按照自己设定的规则来实现的,这样别人不容易猜测破解,甚至还原为密文。这个算法为私有算法。公钥密码学的算法是公开的算法,不一样人计算有不一样的结果,不容易猜测。它的过程经得起数学的理论攻击,就像是一个多项式的分式的极限,我们永远无法一个一个带进去算出来这个结果,因为无穷无尽,但是数学中的 lim(极限)算法就可以算出来极限。一般的常识是一个钥匙开一把锁,现在这把锁上锁需要的钥匙和开锁的钥匙不是相同的一把,只有拿到开锁的钥匙才可以打开锁。An Introduction to Cryptography 美Jon Callas 密码学介绍(中文第二版)编译:杨新-2-密码学的困难还在与我们要解决的问题确实很难。我们要达到的目的是我们构建密码学系统时如何去叙述它和理解它。我们无论如何都很难去建造、很难解释技术构造,同样也很难理解。好消息是尽管是这样我们并不是孤独无助的,最好的加密技术通常是那些经常出错误的办法,因为经常出错,别人无法琢磨,不变的是我们必须回到原来的画板前去仔细审视我们自己的作品。这也就意味着在拥有大量加密技术经验的人前,你是微不足道的。听起来很夸张,不过它确实如此!当我在写这本书的时候,我也在阅读使用了一些用了新加密技术a的电子邮件,很容易解释清楚它的原理:我想给你发一个邮件的同时不希望在传输过程中被改变,这个电子邮件的发送过程是机器完成的,这个过程变成过程调用就是:“你还没有验证”“是的,你已经完成了”“不,你没有完成”“我发送一个验证码到邮件发送清单”“不,它不是有效的验证码”“是的,它是有效的验证码”“不,它不是,你被欺骗了”“它也是,我将不会再被调用了”“是的,你可以继续坚持,你给我展示的是你没有证据证明你有权限,你是个傻子”密码术很难,以至于它减少了人们对数学教授像兔八哥和古怪鸭一样的搞笑想象b!那就是为什么加密技术同样也是简单的,它太难了是因为别人有比你多的多的经验,但是他们也不敢确信他们的秘密不会有人破解。加密技术很简单是因为在你拿到之前不需要自己再次解释。世界上最好的密码是犯了很多错误的算法。它难就难在这个空间是在非常规的想法下构造的,因为这些事情是在变化之中的,而且是在争论之下的。这个正在进行的争论不仅仅是一个令人兴奋的技术学科,而且是一个令人愉悦的体育项目(因为争论也是需要力气的!)。1.4 说难不难,说易不易说难不难,说易不易 在了解加密技术的过程中,我们了解一些经常使用的而且非常重要的技术词汇。然而,不幸的是这些词汇没有严格的定义和形式。举一个例子:我们要讨论是一个困难问题或一个完美系统算法。尽管没有严格的数学定义和形式。一个难问题就是没有比猜很好的办法来解决的问题。一个完美系统就是在一个难问题的基础之上的系统算法c!这可以让别人只能用猜的办法。通俗点就是坚固的加密算法它的实用价值高,这也就是我们要用它来作为基础算法的原因。我认为分开讨论算法的实用性和强度才能体现出它的价值!一个例子:假设我们要讨论一个完美加密的系统算法,它是在真实的理论数学的基础上建立的,它只有3 个可以猜测的数据。你完全可以猜测所有数据并且验证它,可以很快完成。这是个保护这个秘密的简单而愚昧、并且很不实际的方法。但是,如果上面这个问题中的可以猜测的数据量的范围从 3 个一下子变成了340,282,366,920,938,463,463,374,607,431,768,211,456 个(几乎是 2 的 128 次方),这时候这个算法就变得很实 a 系统:文章中的系统一词是指密码算法的一系列过程,比如理论基础,实现过程等,就是关于这个密码算法的一切信息。b 解释:加密学的算法有些想出来的是很巧妙的,很难想象那么多古怪老头坐在房子里天天挖空心思想象出什么奇怪算法来刁难大众。作者使用了美国式的幽默。换句中国话说就是:你无法想象数学教授像刘老根一样会忽悠人,所有人被忽悠了,他的加密技术就高深了!当然数学界也有范伟一样的人。总是被愚弄,然而有一天,他开窍了 c 解释:这个对于难问题的所有理论基础和探索过程。别人无法有其他的办法来解决这个困难的问题,除了猜。An Introduction to Cryptography 美Jon Callas 密码学介绍(中文第二版)编译:杨新-3-用了,大家花费在验证上的时间会变的很长,甚至超过人的生命周期!a 1.5 究竟什么是密码学?究竟什么是密码学?我们已经懂了一些密码学的基础知识,我们来看一些新定义,密码技术(Cryptography)是一个密写的科学和技术,这个词汇首先来自希腊的“隐型书写(hidden writing)”,在那时候我们就已经在使用密码学了。原始的数据称之为明文(plaintext),使他变的不可读的过程称之为加密,我们把明文变成密文(ciphertext),并且又变回来的东西叫做算法(cipher),算法通常使用有一些秘密的东西作为算法的重要部分,这个秘密就是密钥(key),明文变成密文的过程叫加密(encrypting),反之是解密(decrypting)。我们通常习惯这样表示b:有的算法在加密技术里面叫编码(codes),编码仅仅是一个在符号(数字或字母)和信、文字等之间有关系的表,比如在计算机内用编码产生字符,比如英文字母 A 的就是阿拉伯数字 49 来代表的,这个编码称之为 Unicodec,这个只是个名字。在电报机的时代,把报文变成文字要依靠电报密码本(Codebooks)d。密码和算法通常是在一起使用,在计算机普及化的今天也是这样的,因为所有加密信息都要重新编码。算法不同于编码的原因是算法有一个关键叫密码的东西用来加密和解密文件,而编码表是现成的,一切按照密码表的安排。如果一个编码表是秘密的,即不公开的,那么它就成了加密技术的另外的一种形式,一种密写的形式。加密技术学有一个姊妹学科密码分析学(cryptanalysis),它是用来破解密码的科学和技术。加密技术学(cryptography)和密码分析学一起才是真正的密码学(cryptology),他们都是我们通俗的说密码学,也就是加密学,我也常常对这个词感到疑惑。1.5.1 隐写术隐写术 隐写术(steganography)e来自希腊的“隐蔽书写(covered writing)”。加密学的字面意思并不是隐藏的书写,它并没有隐藏,只是读不懂,你可以看到加密后的文字,隐写术确实也是加密学。隐写术其实是将秘密的信息隐藏在其它信息中,这样,真正存在的秘密就被隐藏了,而且不容易看出来。通常发送者写一篇普通的信息,然后在同一张纸中加上隐藏的秘密信息。历史上的隐写方式有隐形墨水(Invisible inks)f。印记法(hollow heels in shoes)用小针在选择的字符上刺小的针眼,在手写的字符之间留下细微差别。在打印字符上用铅笔作记号、除了几个字符外,大部分的字符用格子盖起来等等。甚至还可能隐蔽在一幅画或一首乐曲中,而一般看不到。a 暴力破解法:通过猜测密码来试破解文件,如果密码很长、很复杂,将花费很长时间!密码的强度越高,暴力破解的时间越长。b 这是数学的写法类似 F(x,y)=G,F 和G 就是一个名字而已,括号里面有 2 个字母表示这个 F 函数需要 2 个输入参数,x 和 y 是需要输入的 2 个数据的代号.c Unicode:是一个电脑中的编码,把人类所有的语言文字用数字进行了编码,目前的计算机类设备已经都支持。访问:http:/www.unicode.org d 电报密码本:发送的电报码转换为数字,再从电报密码本查到数字对应的文字。访问:http:/www.dtc.umn.edu/reedsj/codebooks.html e 隐写术:Neil F.Johnson 和 Sushil Jajodia,Steganography:Seeing the Unseen(隐写术:看不见的技术),IEEE Computer,1998年 2 月,26-34 页,访问 http:/ Johnson 的站点http:/ 用到的都是一些化学的技术,一些液体为墨水涂到纸上后看不出字,涂上另外一种液体就可以完全解密。现代刑侦取证手段中可以不涂上第二种药水就看到字体,在红外线、或者紫外线等光照射下,特殊的仪器可以分析出纸上的不同化学成分的划痕。加加密:加密算法(密:加密算法(明文明文,密钥密钥)密文)密文 解密:解密算法(密文,解密:解密算法(密文,密钥密钥)明文明文 An Introduction to Cryptography 美Jon Callas 密码学介绍(中文第二版)编译:杨新-4-最近,人们开始在图象中隐藏秘密信息,用图象中的每个字节的最不重要的信息用密文信息代替。图象并没有怎么改变,大多数图象标准规定的颜色等级比人类眼睛能够觉察得到的要多得多,也就是人眼能够分辨的颜色是有限的,比如两种非常接近的红色,在视觉上我们已经无法分辨出来了,只是在颜色信息上可以分出来。这样加入了秘密信息后,秘密消息却能够在接收端用专门算法的软件剥离出来。用这种方法可在 10241024 像素的灰色刻度图片中存储 64K 字节的信息。能做这样技术的公开程序已有很多种。Peter Wayner 的模拟函数也能使信息隐匿,这类函数能修改信息,使它的统计外形与一些其它东西相似:如纽约时报的题录部分、莎士比亚的戏剧、Internet 网上的新闻组。这类隐写术愚弄不了普通人,但却可以愚弄那些为特定的信息而有目的地扫描 Internet 的大型计算机a。而破解隐写术的叫隐写术分析学(steganalysis)。在编码、算法、隐写术之间的一个最大的区别是编码和隐写术是事先配置好的,就像是英文单词transparent 用 Slaterb编码表来表示就是 22611。一些特殊需要的编码书的内容也可能不一样,比如在 overhaul编码表中是 15740。同样的,隐写术很难投入实际应用,因为它没有一个固定的标准来告诉人们在什么地方书写,什么地方去看,有的书写完干了就看不到了,或者是写了后被人当废纸扔了。隐写术必须是定制的,否则就有局限性。相反的,现代密码学就凸显了它的优势,并且整个系统可以实现公共化,这些建立在适当密码学算法上的关键就是密钥,因此,这个加密技术系统可以被大家攻击、验证,和提高而不会威胁到使用它的人们的安全。在 PGP 公司,我们实现程序的标准化和依据这个原则验证组件各个方面,我们提供给您我们软件的源代码c来让你验证软件的算法安全性。公开的是 PGP 的算法的计算机程序代码,而非 PGP 公司商业软件的程序源代码,任何人都可以获得,并独自研究它的安全性。并且 PGP 公司广泛纳谏。2005 年中,平均每月有 2000人次为 PGP 公司提出意见。1.6 这本书的历史这本书的历史 Phil Zimmermann 设计第一个 PGP 软件时,软件包含描述 PGP 程序和基本操作很详细的文本文件,其中包含 PGP 消息实时加密数据格式,并且包含所有东西太多以至于它逐渐像的一本书d。PGP 程序的资源在另外一本书e中发布,并打开了 PGP 走向软件的道路。OReilly 在 1995 年发行了一本包含所有基础和历史内容的书f。最原始的 An Introduction to Cryptography(即本文的英文原版)发布于 1998 年的 PGP 6.0 中。这个 PGP产品手册介绍了 PGP 加密系统的基本操作。我们发布程序的源代码在我们产品的手册中。目前,PGP 作为一 a 搜索引擎可以搜索大量的字符数据,然而对于图像的内容搜索只能依靠图片的注释等信息,甚至是文件名。计算机识别图形内容的信息的技术也在发展,目前可以识别文字(ORC,光学字符识别),最直接的就是图形验证码,目前已经有出现可以识别简单的图形验证码。验证码的发明就是要区分人和计算机,随着这个技术的进步,Google 又研发了新的图灵算法来区分互联网上的人和计算机。搜索引擎技术推荐查看深入搜索引擎:海量信息的压缩、索引和查询(Managing Gigabytes:Compressing and Indexing Documents and images Second Edition)作者:新Ian H.Witten 澳Alistair Moffat 新Timothy C.Bell,梁斌 译,电子工业出版社,540 页,书号:ISBN-13:978-1-55860-570-1 b Slater:由 Slater 发明一个文字编码,在 1880 加拿大的西北抵抗军中使用,访问:http:/homepage.usask.ca/rhf330/tele.html.c 源代码:访问官方网站,免费获得源代码:http:/ PGP Desktop 的源代码,还有PGP 命令行程序的源代码和 PGP 通用 GPL-修改源代码,你也可以找到 PGP 担保细则和特别要求在http:/ d P.R.Zimmermann 著The Official PGP Users Guide(官方 PGP 使用手册),麻省理工学院(MIT)1995 年出版,216 页,书号:ISBN 0-262-74017-6.,前不久刚脱销,应该可以在二手书店里找到。e P.R.Zimmermann 著PGP:Source Code and Internals(PGP:源代码和内部结构),麻省理工学院(MIT)1997 年出版,933 页,书号:ISBN 0-262-24039-4.包含 PGP2.6 源代码,脱销!f S.GarfinkelPGP:Pretty Good Privacy,OReilly&Associates,1995 年出版,393 页,书号:ISBN 1-56592-098-8.An Introduction to Cryptography 美Jon Callas 密码学介绍(中文第二版)编译:杨新-5-个安全规则成为了 OpenPGP、OPGPMIMEa的技术标准。同样,大量的其它书籍出现也为程序员、技术工程师、科学家、数学家介绍核心加密程序的原理。这个技术并没有什么好描述的主题。有好奇心的读者可以随心所欲的了解,这就是这本书的意义!自从那时候起许多事情发生了改变。美国出口条例只允许我们把源代码放在互联网上,而不是纸质图书中b。PGP 软件现在已经发展成为被 100 多个国家作为紧密控制的技术。就在 10 年前,PGP 技术还很不现实,简直就是老祖宗的一个运动!而今天它变得很平常,商业和法律领域都要求使用数据加密技术。尽管还有很多其它的资源可以参阅。但是本书作为一个好书去学习的地位是不容置疑的,这本书很有用、很热手!我们在 1991 年和 1998 年计算机世界改变时已经完成本书的修订工作!2009 年本书出现简体中文翻译版本!1.7 原书原书作者作者特别致谢特别致谢 Paulina Borsook 编辑文章、给予帮助支持、研究,并担当写作助理。Olivia Dillan 和 Will Price 坚持此书必须重写。Barbara Jurin 提供了她的最杰出的编辑技术。Phil Zimmermann 也参与编辑,并坚持本书必须以对话方式作为写作风格。Tom Stoppard 告诉我如果不用大量插叙的话就无法说清楚一些事情。a M.Elkins,D.Del Torto,R.Levien,T.Roessler,著MIME Security with OpenPGP(OpenPGP 的 MIME 安全),访问:http:/www.ietf.org/rfc/rfc3156.txt,这是 OpenPGP/MIME 的技术标准,也就是 OpenPGP 成为复杂邮件信息的格式,它依赖于OpenPGP 格式。b 美国出口条例解释包含源代码的纸质图书籍是免税的,这也就是说明我们可以合法的为读者发行纸质书籍,那真是一件麻烦而繁琐沉重的过程,很感激的是我们现在不在需要了,请大家通过互联网来阅读!An Introduction to Cryptography 美Jon Callas 密码学介绍(中文第二版)编译:杨新-6-2 为什么为什么密码学密码学那么重要?那么重要?如果你要把你的秘密展露给风,你不应该责备风把你的秘密展露给树看.Kalil GibranSand and Foam 人是交流的动物。我们通常也是见什么人说什么话。在早一些时候,我们不仅交谈,而且低语交流。我们不仅写作,而且传小纸条。在我们学会说话后不久,我们也学会了见人说人话见鬼说鬼话!密码学如此重要是因为它可以让一些事在表面上变成秘密,它同样可以控制信息的通路,指定什么样的人可以获得信息。你学习的加密已经超出了你的好奇心,同样也是你的实际需要。在全球经济化下,对信息的需求比货物的需求更大,加密技术的本质就是悄悄话和大喊之间的区别。而且各种法律法规使它变的很重要,丢失的数据时获得风险的同时也意味着法律的风险随之而来!这里有许多重要的事。我们所做的并没有达到我们预期的目的:刷牙、每 3000 英里加一次油,确信我们的顾客信息表在笔记本内是加密的。如果你对自己和别人有其它疑虑,为什么不使用数据加密技术呢?下面的几个实例对你而言可能是重磅炸弹!2.1 走进缺口:走进缺口:骇骇人人的事件的事件 让我们来看看几个原本可以阻止的安全事件,但最好不要发生在我们自己身上。看看最近的几个数据和备份丢失的实例,下面几个实例你不愿意听到是因为在那些数据声明作废之前已经丢失了!2.1.1 笔记本丢失事件笔记本丢失事件 笔记本丢失的事件已经成为了危害社会安全的最大源头,笔记本盗窃占了电脑盗窃案的 48。台式电脑占了 26.7手持电脑设备a占了 13.3。2004 年笔记本丢失至少造成了 670 万美元的损失,那还只是设备费用的损失,没有包含里面数据的价值b。其实,PGP 软件的创始人 Phil Zimmermann 在火车站就丢过 2 个笔记本,高兴的是 Phil Zimmermann 做了他所宣扬的事,对于被偷的笔记本他没有任何顾虑c。Phil Zimmermann 的笔记本经过加密,更不用担心电脑信息会泄露!潜在市场仍会继续增长:2005 年国际数据公司(International Data Corporation,IDC)公布的统计数据显示,在美国 50的电脑销量是笔记本,这个数据是从 2004 年的 29增长上来的d!这确实是一个可观的数字,也就是说超过一半的电脑是可以被轻易带走的。没有人想丢笔记本,越来越多的人认为笔记本存在的意义已经成为我们商业活动和日常生活的一个重要部分!如果笔记本加密了我们就没有后顾之忧了。看看下面没有保护数据的笔记本被盗事件:2004 年 6 月,洛杉矶加利福尼亚大学官方代表发出警告,一个被偷的笔记本中的 14500 名血液捐助者的个人信息存在风险。起因是 2003 年 11 月一个小偷撬开一个锁住的货车,拿走了包含献

此文档下载收益归作者所有

下载文档
你可能关注的文档
收起
展开