密码学与信息安全简明教程(txt+pdf+epub+mobi电子书下载)


发布时间:2020-05-21 03:31:22

点击下载

作者:丁勇

出版社:电子工业出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

密码学与信息安全简明教程

密码学与信息安全简明教程试读:

前言

本书为工业和信息化部“十二五”规划教材。

随着信息安全从军事外交等国家垄断的神秘领域逐渐扩展到和百姓生活息息相关的各个领域,近年来不断爆发的信息安全公众事件以及国家对信息安全的重视度不断加强,信息安全成为了大众非常关注的问题。信息安全主要保障信息在传输、存储、处理等过程中的机密性、完整性、真实性、可用性、新鲜性等特质,是以密码技术为核心,涵盖数学、计算机、通信、电子、语言学、社会学等多学科交叉的一门新兴学科。

本书编写以信息安全重要性、密码学基础、系统安全与网络安全以及实用安全技术为主线,从理论基础到实际应用技术,系统阐述了信息安全相关的理论和技术。

第1章为信息安全简介,包括信息安全重大事件、信息安全的重要性、信息安全的主要应用领域和信息安全与立法。

第2章介绍密码学与密码技术基础,包括密码学简介、对称密码、非对称密码、数字签名技术、散列函数与数据完整性技术、密钥分配与密钥管理技术、基于身份的加密技术、认证技术和不可否认技术。

第3章介绍计算机操作系统安全,包括Windows安全、UNIX安全及口令安全。

第4章介绍网络安全,包括网络基础知识、IPSec安全、VPN、防火墙、黑客攻击技术、入侵检测技术、漏洞扫描技术、病毒与蠕虫防范技术。

第5章介绍Web服务安全,包括网络服务安全隐患、SSL/TLS、S-HTTP、WS和WSS。

第6章介绍几种常见的实用安全系统,包括PGP、S/MIME、Secure Shell和SFTP。

目前,有很多和密码学与信息安全相关的教材,但是有的阐述比较片面不够系统,有的偏重于理论且难于理解,有的内容显得比较陈旧。本书内容全面而新颖,从信息安全的重要性,到信息安全的核心密码学理论与技术,再到网络安全、万维网安全以及实用安全系统,从理论到实用技术再到实用系统,全面而系统地阐述了密码学与信息安全的内涵。书中介绍的很多内容与当前技术保持同步,有一定的新颖性,例如,在Windows安全中,本书不但介绍了经典的Windows 2000,也系统阐述了Windows 7和Windows 8等高版本的安全。同时,本书力求避免较为复杂深奥的密码学基础理论,力图以简明扼要、易于理解的方式阐述相关理论,使得读者能够从复杂的数学理论中跳出来,从技术上关注信息安全,适用于各种层次的学生学习。

本书图文并茂,很多理论采用更为直观和易于理解的插图配合文字的方式进行阐述,使得读者能够更好地理解。本书免费提供配套的电子课件,请登录华信教育资源网(www.hxedu.com.cn),注册后下载。

本书适合作为信息安全、信息对抗、信息与计算科学等相关专业本科高年级教材,也可作为工程技术人员的参考用书。

本书的提纲得到了西安电子科技大学的王育民教授的全面把握和指正,同时在编写过程中得到了我的学生张皎、张宇斌、王曌等的协助,在此对他们表示衷心的感谢。另外,本书的编写参考了许多资料,部分资料来源于互联网,无法一一列出,在此向所有作者表示感谢。

由于编者水平有限,书中难免有不妥之处,敬请读者批评指正。

第1章 信息安全简介

1.1 信息安全重要性

21世纪是信息的时代,信息无所不在。著名的控制论专家维纳曾经说过:“信息既不是物质,也不是能量,信息就是信息”。因此信息和物质、能量是任何系统的三大组成要素。美国著名未来学家阿尔温托尔勒说过:“谁掌握了信息,控制了网络,谁将拥有整个世界”。随着信息技术和产业蓬勃发展以及信息高速公路的提出和建设,无所不在的信息网络给我们的生产、生活带来了巨大的方便并极大地推动了人类社会的进步和发展,在人类社会中发挥着越来越至关重要的作用。然而,另一方面,不断发生的信息安全事件也给社会和人民带来了巨大的精神和物质上的损失,甚至危及国家和整个人类社会的稳定和发展。

信息安全指的是保证信息在传输、存储和变换过程中信息的机密性(Confidentiality)、完整性(Integrity)、不可否认性(Non-Repudiation)以及可用性(Availability)等基本安全属性,即保证信息系统在运行过程中不受偶然的或者恶意的原因而遭到破坏、更改、泄露,系统连续可靠正常地运行,信息服务不中断。信息安全问题对于一个国家来说,是涉及政治、军事、社会和经济各方面的综合问题。同时,信息安全问题对于个人来说,也是至关重要的。

信息安全首先是一个政治问题。随着因特网(Internet)的普及,因特网已经成为了一个新的思想文化斗争和思想政治斗争的阵地。2002年至2003年,不法分子曾多次攻击鑫诺卫星,将正常播出的电视节目篡改为反动的宣传资料片。1999年至2001年爆发的数次中美黑客大战,更是将信息安全的政治属性体现得淋漓尽致。因此,信息安全问题首先必须从政治的高度来认识它,在互联网上保证健康安全的政治信息的发布和监管。

信息安全更是一个军事问题。信息安全和战争军事是密不可分的,如何保密己方军事机密以及如何窃取到对方的军事机密是人类战争史上一个永恒的话题。而在现代,各国都在军队里面设立了信息战部队,可以说现代战争就是信息战,也就是信息安全的直接对抗。在科索沃战争和伊拉克战争中,美军都使用了电磁炸弹,瘫痪了对方的信息系统,从而占据了战争的信息制高点。而以前的南联盟也曾经组织过黑客联盟对北约信息系统造成一定的破坏。另外各国都积极组织收集互联网上的军事情况,由于互联网造成的军事信息泄密屡见不鲜。

信息安全是一个社会问题。首先,网络上的虚假信息极容易传播和造成社会动荡。1999年,某商都热线一个BBS,一张关于某银行支行行长携巨款外逃的帖子,造成了社会的动荡,10万人上街排队,提取了10亿元现金。其次,互联网上的赌博、黄色等信息泛滥严重败坏了社会风气,造成了大量的社会问题。再者,对一些互联网基础设施的攻击也严重扰乱了社会管理秩序。2001年2月8日,新浪网遭受攻击,电子邮件服务器瘫痪了18小时,造成几百万用户无法正常联络。2009年6月25日,广东电信骨干网由于受到攻击大面积瘫痪,造成广大用户不能正常使用业务。

信息安全也是一个经济问题。由于信息产业在各国的经济构成比重越来越大,信息安全问题造成的经济损失就不可估量,有许多犯罪分子瞄上了黑客攻击行为带来的巨大经济利益。1999年4月26日,CIH病毒大爆发,有统计说,我国受其影响的计算机总量达36万台之多。有人估计在这次事件中,经济损失高达近12亿元。2000年2月7日起的一周内,黑客对美国的雅虎等著名网站发动攻击,致使这些网站瘫痪,造成直接经济损失12亿美元。2009年,中央电视台“3·15”晚会上揭秘黑客攻击已经形成了一个完整的产业链,每年给用户和社会带来上百亿元的经济损失。

信息安全问题对于个人也是至关重要。现在人们经常碰到的电话诈骗案就是由于个人信息被泄露而使得犯罪分子有机可乘。犯罪分子可能通过在ATM上的摄像头或者偷看甚至采用绑架逼问等暴力手段获取用户的银行卡密码,将用户账户上的钱财洗劫一空。犯罪分子还可能通过病毒、木马、间谍软件等盗取用户的网上银行账户密码、QQ账户密码、淘宝账户密码、网游账户密码等,给用户带来巨大的精神上和物质上的损失。著名的香港艺人陈冠希“艳照门”事件,也是由于其个人隐私信息遭到恶意泄露而对其个人以及相关女艺人和家庭都造成了巨大的负面影响。

各国领导人都非常重视信息安全问题,纷纷就信息安全问题公开发表了自己的观点。克林顿:谁掌握了信息,谁就掌握了主动。普京:信息资源及其基础设施成为角逐世界领导地位的舞台。

我国政府历来重视信息安全问题。2003年9月,中办发[2003]27号文《国家信息化领导小组关于加强信息安全保障工作的意见》,提出建立国家信息安全的十大任务。2005年4月,教育部发布了《教育部关于进一步加强信息安全学科、专业建设和人才培养工作的意见》的文件,对信息安全学科的建设和信息安全人才培养给出了指导性意见。2007年,公安部、国家保密局、国家密码管理局、国务院信息工作办公室四部委联合发布了《信息安全等级保护管理办法》,对信息安全保护做了文件性规定。另外,国家在成都、武汉和上海建立了信息安全产业基地,支持信息安全产业的发展。我国在立法上重视保证信息安全,从1994年的《中华人民共和国计算机信息系统安全保护条例》起,我国颁布的全面规范信息安全的法律法规有18部之多,包括《电子签名法》、《保守国家秘密法》等。

在信息化的浪潮下,在信息社会里,信息安全问题是一个非常重要的问题,不但关系着普通老百姓的生产、生活,更维系着国家的安定繁荣和中华民族的全球竞争力,必须引起我们的高度重视。

1.2 信息安全重大事件

信息安全的历史十分悠久。最早可以追溯到古巴比伦时代的费斯托斯(Phaistos)圆盘,它是一种直径约为160mm的黏土圆盘,始于公元前17世纪,表面有明显字间空格的字母。古希腊斯巴达开始出现原始的密码器,用一条带子缠绕在一根木棍上,沿木棍纵轴方向写好明文,解下来的带子上就只有杂乱无章的密文字母。解密者只需要找到相同直径的木棍,再把带子缠上去,沿木棍纵轴方向即可读出有意义的明文。公元前1世纪,著名的恺撒(Caesar)密码被用于高卢战争中,这是一种简单易行的单字母替代密码。公元9世纪,阿拉伯的密码学家阿尔·金迪(Al'Kindi),也被称为伊沙克(Ishaq),他同时还是天文学家、哲学家、化学家和音乐理论家,提出解密的频度分析方法,通过分析计算密文字符出现的频率来破译密码。公元16世纪中期,意大利的数学家卡尔达诺(G.Cardano,1501—1576)发明了卡尔达诺漏格板,覆盖在密文上,可从漏格中读出明文。公元16世纪晚期,英国的菲利普斯(Philips)利用频度分析法成功破解苏格兰女王玛丽的密码信,信中策划暗杀英国女王伊丽莎白,这次解密将玛丽送上了断头台。几乎在同一时期,法国外交官维热纳尔(Blaise de Vigenere)提出著名的维热纳尔方阵密表和维热纳尔密码(Vigenerecypher),这是一种多表加密的替代密码,可使阿尔·金迪和菲利普斯的频度分析法失效。在中国古代,也有一些加密的雏形。宋曾公亮、丁度等编撰《武经总要》记载,北宋前期,在作战中曾用一首五言律诗的40个汉字,分别代表40种情况或要求,这种方式已具有了密本体制的特点。

自19世纪以来,由于电报特别是无线电报的广泛使用,为密码通信和第三方的截收都提供了极为有利的条件。通信保密和侦收破译形成了一条斗争十分激烈的隐蔽战线,有时候甚至为扭转战局起到了关键性的作用。1894年,中日甲午海战中方失败的原因之一是日方战前破译了大量的清政府密电。1917年,英国破译了德国外长齐默尔曼的电报,促成了美国对德宣战。1942年,美国从破译日本海军密报中获悉日军对中途岛地区的作战意图和兵力部署,从而能以劣势兵力击破日本海军的主力,扭转了太平洋地区的战局。1943年4月13日,日本海军司令山本五十六视察所罗门群岛基地的行程等由日第8舰队司令用最新的JN25版本发往基地,美情报人员根据经验破译了这份密报,导致5天后美机准确地击落了山本五十六的座机。

在近代,随着计算机网络的普及应用,国内外信息安全事件更是层出不穷,而且造成的影响也越来越大。1983年,当凯文·保尔森(Kevin Poulsen)还是一名学生的时候,他就成功入侵ARPANet(因特网的前身)。他当时利用了ARPANet的一个漏洞,能够暂时控制美国地区的ARPANet。1990年,为了获得在洛杉矶地区Kiis-fm电台第102个呼入者的奖励——保时捷944 s2跑车,凯文·保尔森控制了整个地区的电话系统,以确保他是第102个呼入者。最终,他如愿以偿获得跑车并为此入狱3年。他现在是《有线新闻》(Wired News)的高级编辑。1993年,自称为骗局大师(MOD)的组织,将目标锁定美国电话系统。这个组织成功入侵美国国家安全局(NSA)、AT&T和美利坚银行,他们建立了一个可以绕过长途电话呼叫系统而侵入专线的系统。1995年,来自俄罗斯的黑客范德米尔·列文(Vladimir Levin)在互联网上上演了精彩的“偷天换日”。他是历史上第一个通过入侵银行计算机系统来获利的黑客。他侵入美国花旗银行并盗走1000万美元。之后,他把账户里的钱转移至美国、芬兰、荷兰、德国、爱尔兰等地。1999年,梅丽莎(Melissa)病毒是世界上首个具有全球破坏力的病毒。大卫·史密斯(David Smith)在编写此病毒的时候年仅30岁。梅丽莎病毒使世界上300多家公司的计算机系统崩溃。整个病毒造成的损失接近4亿美元。大卫·史密斯随后被判处5年徒刑。仅15岁的“黑手党男孩”(MafiaBoy,由于年龄太小,因此没有公布其真实身份)于2000年2月6日到2月14日情人节期间成功侵入包括eBay、亚马逊(Amazon)和雅虎(Yahoo)在内的大型网站服务器,他成功地阻止了服务器向用户提供服务。2002年11月,伦敦人加里·麦金农(Gary McKinnon)在英国被指控非法侵入美国军方90多个计算机系统。从1999年至2002年期间,中美黑客爆发了数次黑客大战,对双方都造成了重大损失。2007年,“武汉男孩”李俊编写的“熊猫烧香”病毒肆虐网络,据保守估计,中国境内有百万余台计算机被感染。2009年5月18日,域名解析服务器遭到攻击,造成中国多个省区的网络大瘫痪。

根据Incapsula报告,通过14个月的时间跟踪DDoS攻击的威胁,在2013年2月攻击的流量是每秒4Gbps。2013年7月,60Gbps及其以上DDoS流量攻击基本上每周必发生一次。在2014年2月,Incapsula报道一次NTP放大攻击最高流量达到180Gbps。其他报告发现的NTP放大攻击流量高达400 Gbps。2013年6月,前中情局(CIA)职员爱德华·斯诺登将两份绝密资料交给英国《卫报》和美国《华盛顿邮报》,并告之媒体何时发表。按照设定的计划,2013年6月5日,英国《卫报》先扔出了第一颗舆论炸弹:美国国家安全局有一项代号为“棱镜”的秘密项目,要求电信巨头威瑞森公司必须每天上交数百万用户的通话记录。6月6日,美国《华盛顿邮报》披露称,过去6年间,美国国家安全局和联邦调查局通过进入微软、谷歌、苹果、雅虎等九大网络巨头的服务器,监控美国公民的电子邮件、聊天记录、视频及照片等秘密资料。2014年5月22日,财务500强、著名在线拍卖网站eBay遭黑客入侵,大量用户数据可能被窃,这些数据包含用户的姓名、登录账号、密码、邮件地址、联系地址、电话号码以及出生日期。据eBay官方发布的消息称,黑客使用蠕虫的方式攻击,获得了少数eBay员工的登录凭据,并利用这些凭据进行了APT攻击,获得了eBay的用户数据,数据泄露发生在2014年2月月底至3月月初,不过,这一数据库并不包含任何财务信息和其他敏感的个人信息。2014年4月,OpenSSL爆出本年度最严重的安全漏洞,此漏洞在黑客社区中被命名为“心脏出血”漏洞。360网站卫士安全团队对该漏洞分析发现,该漏洞不仅涉及以https开头的网址,还包含间接使用了OpenSSL代码的产品和服务,例如,VPN、邮件系统、FTP工具等产品和服务,甚至可能会涉及其他安全设施的源代码。同时,对这个漏洞,安全专家Robert David Graham发布文章称,全球仍有30万台服务器存在OpenSSL Heartbleed漏洞(简称“滴血”漏洞)。Graham称,“Whereas my previous scan a month ago found 600000 vulnerable systems,today's scan found roughly 300 000 thousand systems(318 239 to be precise).”[在一个月前,我发现有60万个系统存在(滴血)漏洞,今天的扫描结果显示仍有约30万(准确数字是318239)个系统存在该漏洞]。

信息安全重大事件不断发生,造成的影响和损失也越来越大,而且攻防双方之间的战争将不断持续下去,因此我们更应该关注信息安全问题,了解相关的知识。只有这样,我们才能够在信息海洋里畅游的同时,具备抗风防浪的本领。

1.3 信息安全的主要领域

目前互联网上各种严重的信息安全问题基本上都是由以下几个方面的问题引起的。(1)个人计算机的安全结构过于简单。随着集成电路技术的飞速发展和计算机功能的不断丰富和拓展,计算机逐渐从科学研究的实验室步入了普通的家庭,从而产生了个人计算机。出于对成本的考虑以及对安全问题的严重性缺乏足够的警惕,个人计算机中缺乏足够的安全机制,如存储器的隔离保护机制、程序安全保护机制等。这样使得程序可以不经过认证就执行,程序可以被随意修改,数据区存储的数据也可以随意被修改或者删除,病毒、蠕虫、木马等恶意程序为所欲为。(2)个人计算机又变成了公用计算机。随着技术的不断发展,个人计算机的功能不断丰富,使得个人计算机又变成了办公室、网吧甚至家庭多人使用的公用计算机。在公用环境下,缺乏安全机制的计算机成为了攻击的靶子。(3)计算机通信网络把计算机连接到了因特网(Internet)。通过因特网,个人计算机就成为了巨大的网络中的一个节点。因特网使得用户可以通过个人计算机与全世界各个地方相连,同时也使得全世界各个地方的用户可以突破物理地域的限制,随意地访问这些计算机。这些缺乏安全保护措施的个人计算机自然而然成为网络黑客们的“肉鸡”。另外,现在的网络通信协议本身并没有考虑安全问题,从而使得网络更成为了一个隐藏着巨大的鳄鱼的黑泥潭,任何一台连接在其上面的计算机都可能成为它的美食。(4)操作系统存在缺陷。操作系统是计算机的主要软件。但是由于操作系统太复杂庞大(如Windows操作系统有上千万行的代码),这使得其往往难以保证全部安全,因此存在安全漏洞的可能性大大增加。这些安全漏洞很容易被黑客利用,成为黑客攻击的标靶。由Windows操作系统引发的安全事件屡见不鲜,微软公司不得不一次又一次地发布补丁来解决问题,然而这种补丁的方式只是“头痛医头、脚痛医脚”。尽管目前关于Linux操作系统的安全漏洞事件很少发生,但这并不意味着Linux操作系统是安全的,只是由于Linux操作系统目前普通用户用得比较少,从而黑客攻击的兴趣和目标没那么大而已。

从系统上说,信息安全主要包括以下几个方面的问题[1]。(1)信息设备安全。即保障存储、传输、处理信息的设备的安全,如服务器、个人计算机、PDA、手机等。(2)数据安全。即确保信息通信网络中传输的数据的安全。数据安全包括:机密性,即保证传输的数据不被非授权的人读取;完整性,即数据在传输过程中不被非法篡改等;认证性,保证数据来源于预定的提供者;不可否认性,保证数据的发送者和接收者无法否认自己的行为。(3)内容安全。即保证信息通信网络中传输的内容不含有黄色、反动、盗版等非法的内容,对传输的数据进行监管。(4)行为安全。行为安全是信息安全的终极目标,包含行为的秘密性、行为的完整性和行为的可控性。所谓行为的秘密性,是指行为不能危害数据的秘密性。所谓行为的完整性,是指行为不能危害数据的完整性,行为的过程和目标都是可预期的。所谓行为的可控性,是指当行为的过程出现偏离预期时,能够发现、控制并纠正。

从技术上讲,信息安全包含以下的技术。(1)信息加密技术[2,3]。信息加密技术是最基本、最核心也是最重要的信息安全技术。所谓信息加密技术,是指双方约定一种方法对传输的信息进行变化,只有指定的接收者借助预先设定的关键信息才能够将信息还原,从而保证了信息的机密性。信息加密技术包括对称加密技术和非对称加密技术。在对称加密技术中,发送者和接收者双方共享一个相同的密钥。对称加密技术根据加密数据的长度分为分组加密(如DES、AES、IDEA等)和流加密(如RC4、A5等)。而非对称密码[4]中的密钥则是由两个不同部分组成的密钥对:一部分公开,称为公钥;一部分保密,称为私钥。因此非对称加密算法又称为公钥密码算法(如RSA、ECC等)。(2)信息确认技术。信息确认技术通过严格限定信息的共享范围来达到防止信息被非法伪造、篡改和假冒的目的。一个安全的信息确认方案应该具有以下特点:① 合法的接收者能够验证他收到的消息是否真实;② 发信者无法抵赖自己发出的消息;③ 除合法发信者外,别人无法伪造消息;④ 发生争执时可由第三方仲裁。按照其具体目的不同,信息确认系统可分为消息确认、身份确认和数字签名。(3)网络控制技术[4,5]。网络控制技术种类繁多且没有严密的理论,主要包括如下技术。

① 防火墙技术[6]。它是一种允许接入外部网络,但同时又能够识别和抵抗非授权访问的网络安全技术。防火墙扮演的是网络中的“交通警察”角色,指挥网上信息合理有序地安全流动,同时也处理网上的各类“交通事故”。防火墙可分为外部防火墙和内部防火墙。前者在内部网络和外部网络之间建立起一个保护层,从而防止黑客的侵袭,其方法是监听和限制所有进出通信,挡住外来非法信息并控制敏感信息不会泄露;后者将内部网络分隔成多个局域网,从而限制外部攻击造成的损失。

② 审计技术。它忠实地记录下信息系统中发生的各种事件,为后续的分析问题、解决问题提供翔实而可靠的资料。审计技术如同飞机上的黑匣子,它为信息系统异常的原因提供查询、定位,以及对网络攻击进行预测、报警,并为攻击发生后的实时处理提供详细可靠的依据或支持。

③ 访问控制技术[7]。访问控制技术确保只有拥有该权限的用户才能够对信息系统中的数据进行访问、修改、删除、复制等操作。访问控制采用最小特权原则:即在给用户分配权限时,根据每个用户的任务特点使其获得完成自身任务的最低权限,不给用户赋予其工作范围之外的任何权力。

④ 安全协议[8]。安全协议是网络安全的一个重要组成部分。它严格规定了一套交互式的操作来保证通信各方的安全属性,如身份认证、密钥协商、不可否认等。目前广泛采用的安全协议包括IPsec/IKE、SSL、SSH、PGP等。

1.4 信息安全与立法

由于信息安全的重要性和影响力,各国都从立法高度上来保证信息安全。美国先后制定了《信息自由法》、《个人隐私法》、《伪造访问设备和计算机欺骗滥用法》、《电子通信隐私法》、《计算机安全法》、《数字签名法》等多部与信息安全密切相关的法律,并将密钥长度超过128位的安全产品视为武器而禁止出口。欧共体也制定了一系列的法律以保障信息安全,包括:产品责任、商标和广告规定、知识产权保护、保护软件、数据和多媒体产品及在线版权、数据保护等,并规定当成员国内部法律与这些法律抵触时,以这些法律为准。1996年9月23日,英国政府颁布了第一个网络监管行业性法规《三R安全规则》,对信息安全相关的法律问题做了严格规定。俄罗斯也于1995年颁布了《联邦信息、信息化和信息保护法》,其中明确界定了信息资源开放和保密的范畴,提出了保护信息的法律责任。

我国历来重视信息安全的立法问题。目前我国现行法律法规及规章中,与信息安全直接相关的是65部,它们涉及网络与信息系统安全、信息内容安全、信息安全系统与产品、保密及密码管理、计算机病毒与危害性程序防治、金融等特定领域的信息安全、信息安全犯罪制裁等。全面规范信息安全的法律法规有18部,包括1994年的《中华人民共和国计算机信息系统安全保护条例》等法规,也包括2003年的《广东省计算机信息系统安全保护管理规定》等地方法规。其中2005年4月1日起施行的《中华人民共和国电子签名法》更是在信息安全立法中占据了重要地位。这些法律法规中,侧重于互联网安全的有7部,包括2000年《全国人民代表大会常务委员会关于维护互联网安全的决定》等法律层面的文件,也包括1997年的《计算机信息网络国际联网安全保护管理办法》等部门规章;侧重于信息安全系统与产品的有3部,包括1997年的《计算机信息系统安全专用产品检测和销售许可证管理办法》等部门规章;侧重于保密的有10部,既包括1989年的《中华人民共和国保守国家秘密法》等法律,也包括1998年的《计算机信息系统保密管理暂行规定》等部门规章;侧重于密码管理及应用的有5部,包括1999年的《商用密码管理条例》等法规,也包括2005年的《电子认证服务管理办法》等部门规章;侧重于计算机病毒与危害性程序防治的有9部,包括2000年的《计算机病毒防治管理办法》等部门规章,也包括1994年的《北京市计算机信息系统病毒预防和控制管理办法》等地方法规或规章;侧重于特定领域信息安全的有9部,包括1998年的《金融机构计算机信息安全保护工作暂行规定》等部门规章,也包括2003年的《广东省电子政务信息安全管理暂行办法》等地方法规或规章;侧重于信息安全监管的有3部,包括2004年的《上海市信息系统安全测评管理办法》等地方法规或规章;侧重于信息安全犯罪处罚的主要是我国刑法第285条、286条、287条等相关规定。

虽然我国与信息安全相关的法律法规为数不少,但仍然有很多问题亟待完善。首先,我国缺少一部像美国《联邦信息安全管理法》以及俄罗斯《联邦信息、信息化和信息保护法》那样确立信息安全的基本原则、基本制度及一些核心内容的基本大法。其次,绝大部分相关法律都篇幅偏小,行为规定极其简单。而且这些法律法规主要内容集中在对物理环境的要求、行政管理的要求等方面,对于涉及信息安全的行为规范一般规定得比较简单,在具体执行上指引性还不是很强;在处罚措施方面规定得也不够具体,导致在信息安全领域实施处罚时法律依据的不足;另外,在一些特定的信息化应用领域,如电子商务、电子政务、网上支付等,相应的信息安全规范相对欠缺,有待于进一步发展。同时,与信息安全相关的其他法律有待完善。这些都需要在以后的立法过程中不管完善和修正。

习题 1

1.简述信息安全的含义。

2.目前互联网上各种严重的信息安全问题大致是由哪几个方面的问题引起的?

3.从系统上说,信息安全主要包括几个方面的问题?

4.数据安全的机密性、完整性、认证性、不可否认性分别指什么?

5.什么是行为安全?行为的秘密性、完整性、可控性分别指什么?

6.简述信息安全所包含的技术。

7.谈谈你对信息加密技术的认识。

8.网络控制技术主要包括哪几项技术?

9.防火墙可分为外部防火墙和内部防火墙,它们分别有什么作用?

10.讨论信息安全立法现状。

参考文献

[1]沈昌祥,张焕国,冯登国.信息安全综述.中国科学E辑,2007,37(2):129-150.

[2]孟扬.网络信息加密技术分析.信息网络安全,2009(4):7-9.

[3]黄志清.网络安全中的数据加密技术研究.计算机系统应用,2000(7).

[4]冯登国.国内外密码学研究现状及发展趋势.通信学报,2002,23(5):18-26.

[5]朱其新,胡寿松.网络控制系统的分析与建模.信息与控制,2003,32(1):5-8.

[6]王正.网络安全中的防火墙技术探讨.通信技术,2008(8).

[7]刘宏月,范九伦,马建峰.访问控制技术研究进展.小型微型计算机系统,2004,25(1).

[8]卿斯汉.安全协议20年研究进展.软件学报,2003,14(10):1740-1752.

第2章 密码学与密码技术基础

2.1 密码学简介

密码学是信息安全的一个重要基础和分支,是一门古老而新兴的学科。它的发展可分为3个阶段。从古代一直到1949年,密码学都是停留在应用于军事政治等神秘领域的实践技术。从1949年香农(Shannon)发表了《保密系统的信息理论》后,密码学才有了理论基础指导从而上升为学科。这一阶段,密码学研究的突破并不大,而且应用方面仍然只局限于特殊领域。以1976年迪菲(Diffie)与赫尔曼(Hellman)发表的论文《密码学的新方向》[1],以及1977年美国发布的数据加密标准(DES)[2]加密算法为标志,密码学进入了现代密码学。伴随着相关理论的完善,以及由集成电路和因特网推动的信息化工业浪潮,密码学进入了一个全新爆发的时代:研究文献和成果层出不穷,研究的方向也不断拓展,并成为了一个数学、计算机科学、通信工程学等各学科密切相关的交叉学科,同时各种密码产品也走进了寻常百姓家,从原来局限的特殊领域进入了人民群众的生产、生活之中。

密码学是研究密码系统和通信安全的一门学科。它的研究范围十分广泛,而不仅仅局限于我们常用的口令或者耳熟能详的信息加密。密码学分为密码编码学和密码分析学。密码编码学主要研究如何对信息进行编码之后起到对信息的保护作用,包括保护其机密性、认证性、完整性等。而密码分析学则相反,它是通过对编码信息的分析来去除或者削弱由编码带给信息的保护,例如,破译消息、篡改消息、伪造消息等。

密码分析学中的攻击方法根据攻击手段不同可分为穷举攻击[3]、统计分析攻击和数学分析攻击。穷举攻击,又称为蛮力攻击,是指密码分析者用尝试所有取值的方法来破译密码。统计分析攻击,是指密码分析者通过分析密文和明文的统计规律来破译密码。数学分析攻击,是指密码分析者针对加密算法的数学依据,通过数学求解的方法来破译密码。

而根据攻击者获取的信息程度不同,攻击方法又分为:唯密文攻击、已知明文攻击、选择明文攻击、选择密文攻击[4]以及选择密钥攻击。唯密文攻击,是指仅根据密文进行的密码攻击。已知明文攻击,是指根据一些相应的明、密文对进行的密码攻击。选择明文攻击,是指攻击者可以选择一些明文,并获取相应的密文,这是密码分析者最理想的情形。选择密文攻击,是指密码分析者能选择不同的被加密的密文,并可得到对应的解密的明文,密码分析者的任务是推出密钥。选择密钥攻击,这种攻击并不表示密码分析者能够选择密钥,它只表示密码分析者具有不同密钥之间关系的有关知识。

密码编码学和密码分析学二者之间既是矛与盾的关系,又是相辅相成的。只有对密码学分析学有着足够的认识,才能设计出安全的编码方法,反之亦然。正是二者之间的不断制约与反制约,才推动了现代密码学的不断进步。

图2.1给出了密码学的一个通用模型。其中发送者是消息的产生[5]源,是消息的起点,也就是信源。接收者是消息的目的地,是消息[5][5]的终点,也就是信宿。信道是用于传输信息的通道,如常见的因特网、移动通信网等都是信道。攻击者则通过控制信道,对信道中传输的消息进行窃听、删除、篡改、重播等非法操作,并对获取的消息进行密码分析来获取非法的利益。明文(Plaintext)是没有经过加密的消息本身。密文则是明文经过加密操作后得到的结果。加密算法(Encryption Algorithm)就是一系列的消息加密变化的规则。解密算法(Decryption Algorithm)则规定了一系列与加密相对应的解密变化规则。加密密钥(Encryption Key)是用于控制加密操作的关键数据。解密密钥(Decryption Key)则是用于控制解密操作的关键数据。密钥管理的目的是让发送者和接收者安全地分别获取一对加/解密密钥。通常,将(M,C,K,E,D)这个五元组称为一个密码体制,其中K=(K,K)。而在现代密码体制中,要求密码体制的安ed全不能建立在算法保密的基础上,而是仅仅依赖于密钥的保密来保证密码体制的安全。这样要求的原因有3点:① 真正的算法保密是很难办得到的。一是内部组织人员可能向外泄露,二是现在的逆向工程可以根据设备获取算法的具体信息。② 算法公开可以保证算法经过了充分的分析和攻击的考研,从而更能保证其安全性。③ 重新设计一个算法的代价比重新换一个密钥的代价要大得多。假如一个密码体制的安全性是基于算法保密的,一旦该算法泄露,就不得不采用新的算法。这样做的代价很大,因为算法设计本身比较复杂,而且原来的设备将不得不更换。而如果一个密码体制的安全性是基于密钥保密的,一旦旧的密钥泄露,只需要更换一个新的密钥就可以了,这样的代价要小得多。图2.1 密码学通用模型

发送者想要将消息发送给接收者时,假设攻击者可能已经控制了整个通信信道,为了保证传输消息的安全,发送者首先和接收者通过密钥管理分别获得一个加密密钥和解密密钥;然后,发送者通过加密密钥K和加密算法E将明文M加密为密文C(C=E (M)),并通过eKe信道传输给接收者;接收者接收到密文C后,使用解密密钥K和解密d算法D对密文C进行解密,得到明文消息M(M=D(C))。由于信Kd道上传输的密文C经过了加密保护,使得攻击者不能达到其非法目的,因此保证了传输信息的安全。

密码学是伴随着信息保密而产生的,但是随着密码学技术本身的不断发展和通信网络技术的不断发展,现代的密码学研究已经远远超越了信息保密的范围,被广泛应用于各种安全和隐私保护应用之中。它是一门古老的学科,又是一门新兴的交叉学科,在今后人类社会的发展历程中必将发挥越来越重要的作用。

2.2 对称密码体制

2.2.1 对称密码体制简介

对于一个密码体制(M,C,K,E,D)中的K,若加密密钥Ke与解密密钥K相同或者二者之间很容易互相推出,由于加密密钥和d解密密钥地位是对等的,因此称其为对称密码体制。而在实际应用中,往往加密密钥和解密密钥都是相同的,即只有一个密钥,既作为加密密钥又作为解密密钥,因此又称为单钥体制。而且一般加密算法和解密算法也是一样的。对称密码体制是历史最为悠久的密码体制,古代和近代使用的都是这种体制。根据对明文的加密方式不同,对称密码算法又分为分组加密算法(Block Cipher)和流密码算法。分组加密算法将明文分为一组一组的固定长度进行加密,而流密码算法则将明文按字符逐位加密。当然,二者之间也不是有着不可逾越的鸿沟,很多时候,分组加密算法也可以用于构建流密码算法。2.2.2 分组加密算法

在分组加密算法中,明文被要求是一个固定长度的分组,而同样密文和密钥也要具有固定长度,其具体工作原理如图2.2所示。例如,著名的DES算法中,明文和密文长度为64位(bit,也称比特),而密钥的有效长度为56位。在AES[6]算法中,则有几种可配置的长度,包括128位、192位和256位。分组加密算法具有安全强度高、易于软硬件实现、可模块化程度高等优点,广泛应用于各种安全系统中。目前,世界上存在的分组密码算法可能有成千上万种,而其中最有名的就是美国的DES、AES以及欧洲的IDEA算法[7]。下面分别介绍DES、AES与IDEA算法,我国的商用加密标准算法SMS4,以及分组加密算法的工作模式。图2.2 分组加密算法工作原理

1.DES、AES与IDEA算法(1)DES算法

1977年,DES(Data Encryption Standard)算法由美国政府公布作为商用标准加密算法,它的设计人为IBM公司的W.Tuchman和C.Meyer。它的分组长度为64位,明文、密文以及密钥长度都为64位,但是由于有填充位,因此其有效的密钥长度为56位。DES算法在密码学中有着重要的历史地位,它标志着商业密码需求的大量增加,体现了算法公开的密码学安全准则,充分实现了香农关于密码算法设计的混淆与扩散的原则,面向二进制数可以加解密任何计算机数据,代表了当时密码算法设计的最高水准。在1977年,人们估计要耗资2000万美元才能建成一个专门计算机用于DES的解密,而且需要12小时的破解才能得到结果。然而DES最致命的弱点就是密钥长度太短,穷举空间不够大,随着计算机芯片计算速度的不断提高,DES在穷举攻击下已经相当脆弱了。1997年开始,RSA公司发起了一个称作“向DES挑战”的竞技赛。1997年1月,用了96天时间,成功地破解了用DES加密的一段信息;一年之后,在第二届赛事上,这一记录缩短为41天;而在1998年7月,“第2-2届DES挑战赛(DES Challenge II-2)”把破解DES的时间缩短到了只需56小时;“第3届DES挑战赛(DES Challenge III)”把破解DES的时间缩短到了只需22.5小时。尽管DES算法已经不被认为是一个安全的算法了,但是其在密码学的历史地位并不会因此降低,它体现出来的分组加密算法的很多准则对现在的分组加密算法设计仍然有着指导意义。而且对于一些安全保护强度不需要太高的应用,它仍然能够胜任。(2)AES算法

由于DES算法的安全强度已经不能满足当前安全保护的需求,美国政府又于1997年4月全球征集新的加密算法标准,并将其命名为AES(Advanced Encryption Standard),中文即为高级加密标准,用于取代DES算法。制定AES的目标是确保资料可以保留100年,即在100年内算法仍可保持其安全性。经过3个回合的技术分析和讨论后,于2000年10月2日选定比利时的两位学者J.Daemen与V.Rijmen所设计的算法为新的标准加密算法并于2001年11月26日正式生效。因此AES算法又因两位设计者的名字而被称为Rijndael(音为Rain Doll)。AES算法的分组长度为128位,而密钥长度可根据安全强度的要求配置为128位、192位和256位。AES算法充分考虑了软硬件实现,具有安全性高、效率高、性能强灵活配置等特点,而且整个算法产生过程公开透明,打消了人们对其存在后门的疑虑。目前AES应该被广泛应用于各种密码通信系统和协议中,如在3G WCDMA系统中AKA协议、IPsec/IKE、SSH等。(3)IDEA算法

IDEA(International Data Encryption Algorithm)为现行的欧洲加密标准。它是由我国著名的密码学家来学嘉教授和其导师梅西(Massey)于1992年在其博士论文《分组加密算法的安全与设计》(On the Design and Security of Block Ciphers)中提出来的,并成为了欧洲加密标准。IDEA的分组长度为64位,密钥长度为128位。IDEA的安全特性也是建立在混淆与扩散基础之上的。IDEA的混淆特性是经由3个不同函数的组合而达成的,包括以位为单位的XOR(exclusive-OR),定义于mod 216的模数加法运算及mod 216+1的模数乘法运算。目前,IDEA仍然继续战斗在商业密码的第一线。

2.SMS4算法

我国的密码算法按级别由低到高分为:个人密码、商业密码、普通密码、核心密码。除核心密码外,其他都由国家密码局统一管理。我国在密码分析和密码设计方面都有着长期的经验和积累,具有相当的优势。然而长期以来,我们的商业密码都是算法保密,只提供芯片,不提供算法,这样明显违背了密码学的安全原则,不但使得算法不能够经过充分的分析和攻击,而且不利于标准化,难以推广。2006年2月,我国公布了自己的商用加密标准算法SMS4,使得我国的商用密码设计和管理迈上了一个新台阶。

SMS4首先应用于我国无线局域网安全标准WAPI上,它的分组长度与密钥长度均为128位,加密算法和解密算法相同。和绝大多数分组加密算法一样,它也是一个迭代算法。其结构如图2.3所示。首先,密钥经过密钥扩展之后,为每轮迭代产生一个轮子密钥。然后输入的明文就在迭代控制下与子密钥在轮迭代函数下不停迭代,直到迭代完成,最后输出密文。图2.3 SMS4算法结构

算法中最基本的操作是异或⊕和左循环移位<<<i。基本密码部[8]件为S盒,S 盒为一个 8位输入8位输出的非线性函数。若其输入为一个8位的整数a,则输出也为一个8位的整数b,可记为b=S_Box(a)。S盒是一个查表计算,以输入的前4位作为行号,后4位作为列号,以行号和列号为坐标即可在表2.1中查到其输出。例如,若输入为0x2f,则行号为2,列号为15(十六进制数f),可在表2.1中查到0x62,所以0x62=S_Box(0x2f)。以S盒为基础构建一个非线性变换τ,其输入为32位,输出也为32位。将输入的32位字A按顺序划分为4个8位字节a0||a1||a2||a3,则输出的32位字B=(b0||b1||b2||b3)=(S_Box(a0)||S_Box(a1)||S_Box(a2)||S_Box(a3))。以基本操作为基础构建了线性变换L,其输入、输出都为32位字。若输入为 32 位字 B,则输出为 32 位字 C=L(B)=B⊕(B<<<2)⊕(B<<<10)⊕(B<<<18)⊕(B<<<24)。最后由线性变换T和非线性变换τ复合成变换T,T(X)=L(τ(X)),其输入、输出都为32位字。表2.1 S盒表

SMS4算法为一个迭代算法,其中轮函数F的结构如图2.4所示。若轮函数输入为128位,将其顺序划分为4个32位字(X,X,X,012X),以及rk(由密钥衍生得到的32位轮子密钥),则轮函数F的输出3F(X,X,X,X,rk)=X⊕T(X⊕X⊕X⊕rk)。加密算法如图012301232.5所示,解密算法与加密算法类似。加密算法的输入为(X,X,01X,X),输出为128位(Y,Y,Y,Y),加密算法为32轮迭230123代,令第i轮的轮子密钥为rk,则第i轮迭代获得X=F(X,X,Xii+4ii+1i,X,rk)(i=0,1,2,…,31)。最后整个加密后输出密文+2i+3i(Y,Y,Y,Y)=(X,X,X,X)。在算法中还有一个012335343332部件称为密钥扩展,即将输入的128位密钥扩展为32×32位轮密钥。在密钥扩展中需要定义如下的常数:FK=0xA3B1BAC6,0FK=0x56AA3350,FK=0x677D9197,FK=0xb27022DC,固定常123数 CK=(CK ,CK ,CK ,CK),其中CK=(4i+j)×7 mod ii0i1i2i3ij256(i=0,1,…,31;j=0,1,2,3),CK为32位字,每个CK由4ii个8位字节CK,CK,CK,CK顺序构成。令输入的128位密钥为i0i1i2i3MK=(MK,MK,MK,MK),首先对 MK 进行预处理得到(K,01230K,K,K)=(MK⊕FK,MK⊕FK,MK⊕FK,MK⊕FK),12300112233则第i轮的子密钥rk=K=K⊕T'(K⊕K⊕K⊕CK),其中T'与T基ii+4ii+1i+2i+3i本相同,只是将T中的线性变化L换为L'(B)=B⊕(B<<<13)⊕(B<<<23)。图2.4 SMS4轮函数F的结构图2.5 SMS4加密算法

3.分组加密算法的工作模式

由于分组加密算法的加密长度都是固定的且比较短,而实际系统中往往需要加密的数据长度都不是固定的且一般比较长,因此需要对分组加密算法进行扩展以适应实际需求。常见的运行模式包括:ECB(电码本模式)、CBC(密码分组链接模式)、CFB(密码反馈模式)、OFB(输出反馈模式)、CCM(计数器模式)等。这些运行模式各有优缺点,通过这些模式,使得分组密码算法可以灵活应用于加密任意长度的数据,保证了分组加密算法的广泛适用性。

下面简单介绍ECB与CBC模式。ECB是最简单的模式,它将明文按照加密算法的长度直接分组,然后将每组数据直接加密,如图2.6所示。ECB模式比较简单,实现较为容易,数据块解密不需要顺序检测,错误不会传播。但是 ECB 要求数据的长度必须为分组加密算法长度的整数倍,相同的明文输出相同的密文,容易招致字典攻击,因此在实际应用中只用于传比较短的特殊数据。CBC 是目前使用最为广泛的数据加密模式。在该模式中,首先将输入的明文按照一定的规则填充为分组加密算法的整数倍,然后将数据按分组算法长度分为n组P,P,…,P,令C=IV(其中IV为双方都知道的一个非保密的12n0初始值),则输出的密文C=E(P⊕C)。CBC模式结构如图2.7所ikii-1示。CBC模式将前一段密文作为后一段输入,增加了各个分段之间的糅合关系,使得即使是相同的明文分组,在不同的加密时间下输出的密文都不同,大大加强了安全性,可以抗击字典攻击。但是由于分组之间的相互依赖关系,使得分组的顺序必须严格按照原顺序,从而不太适合实时性要求比较高的应用,而且存在错误传播。图2.6 ECB模式图2.7 CBC模式2.2.3 流密码算法

流密码,顾名思义,就是产生密钥流来对明文进行加密。在香农的《保密系统的信息理论》中指出,只有“一次一密”[9,10]才能够做到理论上的“完善保密”,达到理论上的安全。所谓“一次一密”,就是每次加密都使用不同的密钥,也就是要求密钥的长度和明文的长度要一致。然而要实现这样的完善保密代价是无法忍受的,在实际应用中也是不现实的。因此,人们设计了流密码算法来实现伪“一次一密”。说它是“一次一密”,是因为它会根据明文长度产生相同长度的密钥流,从而使得每位明文都有其相应的密钥。说它是“伪”,是因为这些密钥流实际上还是由一个固定长度的密钥衍生出来的。由于衍生出来的密钥流也称密钥序列,因此流密码又称序列密码。

令需要加密的明文为m,m,m…,加密的密钥为K,流密码012衍生算法为KD,则通过密钥衍生算法有KD(K)=k,k,k…,衍012生的密钥长度与明文长度相同,则加密后的密文为c,c,c…。解012密时,使用相同的密钥衍生算法衍生出相同的密钥流KD(K)=k,0k,k…,然后解密密文得到m=c⊕k。流密码运行模式如图2.8所12iii示。图2.8 流密码运行模式

流密码算法分为两种,一种是同步流密码,另一种是自同步流密码。在同步流密码中,密钥流的产生与明文无关,从而密钥流本身也与明文无关。这就要求收发双方要严格同步,否则就无法解密成功。而自同步流密码则相反,它的密钥流是与明文相关的。一旦收发双方出现某位不同步,则后面的n位将会出现错误。但是n位过后,密钥流能自我同步。

流密码算法一般都是以移位寄存器为组件来实现的,因此它更利于硬件实现,从而保证加/解密速度,当对数据流比较大的对象(如多媒体流)进行加/解密时,一般都是采用流密码算法。移位寄存器包括线性移位寄存器和非线性移位寄存器两种。线性移位寄存器用于产生周期较大的伪随机序列,而非线性移位寄存器则用于产生非线性序列,保证序列的复杂性和安全性。常见的流密码算法基本结构是,将几个线性移位寄存器产生的序列用非线性进行组合,从而保证其安全性,如图2.9所示。除了用组合移位寄存器来产生流密码外,还有直接用非线性移位寄存器以及混沌等其他方式来产生流密码的方法。常见的流密码算法有美国的RC4[11]、欧盟的eSTREAM等。图2.9 线性移位寄存器的非线性组合

流密码算法具有速度快、效率高、加/解密对称等优点,并且研究分析透彻,有着很深的数学理论基础,是核心密码中的主流密码。

2.3 非对称密码体制

2.3.1 非对称密码体制简介

对于一个密码体制(M,C,K,E,D)中的K,若加密密钥Ke与解密密钥K不相同,则已知K要想计算出K是很困难的。密码学ded中的困难包含两层意思:一是说时间非常长,例如,1000年;二是花费的代价非常大,例如,花费几千万美元。具体困难程度往往很难计量,需要根据保护所需的强度而选择不同强度的算法。由于已知K不能够推知K,因此通常会将K公开让想知道的人都知道,称为ede公钥,而将K保密只有自己知道,称为私钥。因为公钥和私钥之间d是不对称的,所以得名非对称密码体制。同时由于同时具有公钥、私钥两种完全不同类型的密钥,所以又称为双钥体制。相对于对称体制中的密钥必须保密,非对称体制有一个可公开的公钥为其最大特征,因此也叫公钥密码体制。在非对称密码体制中,不再有加密密钥和解密密钥之分。可以使用公钥加密,而用私钥解密,这多用于保护数据的机密性;也可以用私钥加密而公钥解密,这多用于保护信息的完整性和不可否认性。公钥密码的工作原理如图2.10所示。图2.10 非对称体制工作模式

公钥密码体制的思想是1976年由迪菲和赫尔曼提出来的,这种思想具有划时代的意义,是现代密码学诞生的重要里程碑。它相对于对称密码体制最大的优势和特点在于可以解决以下两个问题:第一,密钥管理问题;第二,不可否认性问题。在对称密码体制中,收发双方必须安全地共享一个密钥,要达到这样的目的往往要付出比较大的代价,在一个大型动态网络里,有时甚至是“不可完成的任务”。而在非对称体制中,只需要有对方的公钥就可以进行安全通信了,而这个公钥是不需要保密的而是公开的,因此获取就非常方便,代价很低,就像获取别人电话号码一样。在对称体制中,由于密钥是双方共享的,因此无法确定一个加密数据到底是谁加密的。而在非对称体制中,由于每个人的私钥只有他自己知道,因此当一份数据使用私钥加密时,他就没办法否认这段数据是他加密的,从而保证了不可否认性。非对称密码体制这些特点使其得到了迅速的发展,在现代密码学中占据着中心地位。虽然公钥密码体制有着巨大的优越性,但是现有的公钥密码体制效率都非常低,计算发展度比较高,因此往往都是用于加密少量数据或者做其他特殊应用。

所有的公钥密码体制都是基于单向陷门函数的。最早提出的非对称体制是背包公钥密码体制[12],而实际应用中最广泛的是RSA[13],即将取代RSA成为主流的是ECC。下面首先介绍单向陷门函数,然后再分别介绍这几种公钥密钥体制。2.3.2 单向陷门函数

单向陷门函数包含两个明显特征:一是单向性,二是存在陷门。所谓单向性,也称不可逆性,即对于一个函数y=f(x),若已知x要计-1算出y很容易,但是已知y要计算出x=f(y)则很困难。单向函数的命名就是源于其只有一个方向能够计算。在小学的时候,我们就有经验,减法比加法困难,乘法比除法容易。但是这样简单的例子仅仅可以用于感受一下单向函数的含义,而不可能作为单向函数的例子。对于现代计算机来说,加、减、乘、除都是一样简单的计算。实际使用的单向函数要复杂得多,而且都是经过密码学家精心设计的。所谓陷门,也称为后门。对于单向函数,若存在一个z使得知道z则可以很容-1-1易地计算出x=f(y),而不知道z则无法计算出x=f(y),则称函数y=f(x)为单向陷门函数,而z称为陷门。在实际生活中,我们往往也有这样的经验,如果掌握窍门,做一件事情就很容易,如果没有掌握到这个窍门,就会觉得无从下手。

公钥密码体制都是基于一个单向陷门函数的。用公钥加密或者解密时,做的是容易的单向陷门函数的正向运算,而用私钥加密或者解密时,则要求做困难的逆向运算。而陷门z往往作为私钥,这样只有知道了陷门z的人才能够进行私钥加/解密操作。

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载