基于PKI的网上购物系统的设计与实现.doc_第1页
基于PKI的网上购物系统的设计与实现.doc_第2页
基于PKI的网上购物系统的设计与实现.doc_第3页
基于PKI的网上购物系统的设计与实现.doc_第4页
基于PKI的网上购物系统的设计与实现.doc_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于PKI的网上购物系统的设计与实现第一章弟一早珀下匕绪论随着经济社会的发展,电子商务已逐渐成为21世纪经济生活的新领域,它可以大幅度地降低交易成本,增加贸易机会,简化贸易流程,改善物流系统,提高贸易效率,推动企业和国民经济结构的改革。实现电子商务的关键是要保证商务活动过程中系统的安全性,即应保证在基于Intemet的电子商务交易过程中与传统交易方式一样地安全、可靠。从安全和信任的角度来看,传统交易方式的买卖双方是面对面的,因此较容易保证交易双方的安全和建立起信任关系。但在电子商务过程中,买卖双方是通过网络来联系,由于距离的限制,建立交易双方的安全和信任关系相当困难。如何解决电子商务中的信用及网络传输中的安全问题、如何判别网上交易对方的真实身份、如何固化并保存网上的交易内容并使之成为有效的法律证据、如何履行网络合同中最敏感的资金支付等一系列问题已构成了电子商务发展的障碍。因此,在电子商务业务中,如何从技术上实现身份认证、安全传输,保证权威性、不可否认性以及数据完整性,如何构建安全的电子商务系统,已经成为电子商务安全领域研究的主要课题。1.1电子商务概述电子商务(E-commerce)是指通过电子手段来进行商务活动。电子手段和商务活动包含的范围很广,如电子手段可以包括电话、传真、Intemet等,商务活动又可包括广告、购买、销售、报关、缴税等。由于电子商务这个词外延很广,其相关技术、应用模式在不断的发展中,下面列举几个权威机构对电子商务的定义供参考。联合国经济合作和发展组织(OEBD)在有关电子商务的报告中对电子商务(EC.)的定义:电子商务是发生在开放网络中的包含企业之间(B2B)、企业和消费者(B2C)之间的商业交易。美国政府在其全球电子商务纲要中,概括描述电子商务是通过Intemet进行的各项商务活动,包括广告、交易、支付、服务等活动,全球电子商务将涉及世界各国。全球信息基础设施委员会(GIIC)电子商务工作委员会报告草案对电子商务的定义:电子商务是运用电子通信作为手段的经济活动,通过这种方式人们可以对带有经济价值的产品和服务进行宣传、购买和结算。综上所述,可以对电子商务定义作如下概括:电子商务是在Interact环境下,采用现代信息技术手段实现消费者1)I4上购物、商家之l、HJ的网上交易和在线电子支付等功能的一种新型商业运营模式。1.2电子商务系统安全性问题研究1.2.1电子商务交易中存在的安全隐患电子商务的形式多种多样,涉及的安全问题各不相同,最核心和最关键的问题就是电子商务交易的安全性问题。一般来说商务安全中普遍存在着以下几种安全隐患【2】:1.窃取信息:由于未采用加密措施,数据信息在网络上以明文形式传送,入侵者在数据包经过的网关或路由器上可以截获传送的信息。通过多次窃取和分析,可以找到信息的规律和格式,进而得到传输信息的内容,造成网上传输信息泄密。2.篡改信息:当入侵者掌握了信息的格式和规律后,通过各种技术手段和方法,将网络上传送的信息数据在中途修改,然后再发向目的地。3.恶意破坏:由于攻击者可以接入网络,则可能对网络中的信息进行修改,掌握网上的机要信息,甚至可以潜入网络内部,其后果是相当严重的。1.2.2电子商务系统的安全需求传统的交易是面对面的,比较容易保证建立交易双方的信任关系和交易过程的安全性。而电子商务活动中的交易行为是通过网络进行的,买卖双方互不见面,因而缺乏传统交易中的信任感和安全感。美国密执安大学一个调查机构通过对23000名因特网用户的调查显示,超过60%的人由于电子商务的安全问题而不愿进行网上购物【3】。根据中国互联网络信息中心(CNNIC)发布的中国互联网络发展状况统计报告,在电子商务方面,52.26%的用户最关心的是交易的安全可靠性【3】。由此可见,电子商务中的网络安全和交易安全问题是实现电子商务安全的关键所在。综上所述,电子商务系统需要满足以下的安全需求,一方面是对计算机及网络系统安全性的要求,表现为对系统硬件和软件运行安全性和可靠性的要求、系统抵御非法用户入侵的要求等;另一方面是对电子商务信息安全的要求,主要表现在下面五个方面:1.信息的保密性:指信息在存储、传输及处理过程中不被他人窃取。2.信息的完整性:指信息在存储中不被篡改和破坏,以及在传输过程中收到的信息和原发送信息的一致。3.信息的不可否认性:指信息的发送方不可否认已经发送的信息,接收方也不可否认已经收到的信息。4.交易者身份的真实性:指交易双方是确实存在的,不是假冒的。5.系统的可靠性:指计算机及网络系统的硬件和软件工作的可靠性,是否会因为计算机故障或意外原因造成信息错误、失效或丢失。1。2.3电子商务平台安全技术随着电子商务的发展,电子商务的安全问题也越来越严重。目前,电子商务安全的主要问题就是交易的安全性问题,迄今为止已经出现了多种Intemet安全解决方案,PKI(Public KeyInfrastructure,公钥密码体制)、SSL(Secure Socket Layer,安全嵌套层协议)和SET(Secure Electronic Transaction,安全电子交易协议)就是其中被广泛采用的、比较成熟和实用的电子商务平台安全技术。SSL和SET是电子商务中最为流行的两种安全电子交易协议14J,在电子商务中有着广泛地应用。PKI是目前电子商务中的通用安全平台,是电子商务安全的基石【5】。PKI是电子商务安全的基础,SSL协议和SET协议都采用PKI体制和X.509数字证书标准,是PKI框架下的典型实现。但由于SSL协议与SET协议所采用的技术不同,所以它们之间有着很多不同之处:1.在认证要求方面。早期的SSL协议并没有提供商家身份认证机制,虽然在SSL3.0协议中可以通过数字签名和数字证书实现浏览器和web服务器双方的身份验证,但仍不能实现多方认证:相比之下,SET协议的安全要求更高,所有参与SET交易的成员都必须申请数字证书进行身份识别。2.在安全性方面。SET协议规范了整个商务活动的流程,信息流必须采用的加密、认证都制定了严密的标准,从而最大限度地保证了商务性、服务性、协调性和集成性;而SSL协议只对浏览器与Web服务器的信息交换进行加密保护,因此SET协议的安全性比SSL协议高。3.在网络层协议位置方面。SSL协议是基于传输层的通用安全协议;而SET协议位于应用层,对网络上其他各层也有涉及。4.在处理速度方面。SET协议非常复杂、庞大,处理速度慢,一个典型的SET交易过程需验证电子证书9次、验证数字签名6次、传递证书7次、进行5次签名、4次对称加密和4次非对称加密【6】;而SSL协议则简单得多,处理速度比SET协议快。5.在应用领域方面。SSL协议主要是和Web应用一起工作:而SET协议是为信用卡交易提供安全,因此如果电子商务应用只是通过Web或是电子邮件,则可以不用SET协议,但如果电子商务应用是一个涉及多方交易的过程,则使用SET协议更安全、更通用些。综上所述,由于网上购物系统有着非常高的安全需求,因而需要采用身份认证手段;同时由于网上购物系统的访问量比较大,对速度的要求也比较高。通过比较SET协议和SSL协议的性能,本文在设计中选择SSL协议保证信息的安全性、完整性;同时采用PKI技术提供一个网络安全基础设施,用来构建网上购物系统的安全平台。1.3基于PKI的电子商务系统国内外研究应用现状1976年,美国的密码学专家Diffie和Hellman提出了著名的公钥密码体制的思想【7】,允许在不安全的媒体上双方交换信息,安全地获取相同的用于对称加密的密钥。PKI作为基础的网络安全措施,在网络上提供信任机制,在实际应用中,譬如:授权管理基础设施、可信时间戳服务系统、安全保密管理系统、安全电子商务平台等的构筑都离不开它的支持。著名网络工程师吴亚非说只有解决了信任问题,才谈得上其他的网络应用【2】。因此,在将来的信息化社会中,PKI必将起到核心作用,引领信息化建设。美国作为最早提出PKI概念的国家,于1996年成立了美国联邦PKI筹委会,其PKI技术在世界上处于领先地位,与PKI相关的绝大部分标准都由美国制定。美国联邦政府在研究各联邦政府已建成的PKI体系的基础之上,为解决各种不同认证系统之间的交叉认证问题,于1998年提出了桥接CA(Certificate Authority,即证书机构)的概念9】。联邦桥接CA(FBCA)由联邦策略管理机构(FPMA)控制,其目的是在联邦PKI中不同的可信域之间提供可信路径。经FPMA认可的可信域可以指定一个主CA,该CA负责与桥接CA进行交叉认证。欧洲在PKI基础建设方面也成绩显著,已颁布了93/1999EC法规,强调技术中立、隐私权保护、国内与国外相互认证以及无歧视等原则,于2001年3月23日成立了欧洲桥CA。PKI在国外已经开始实际应用,在美国,随着电子商务的日益兴旺,电子签名、数字证书已经在实际中得到了一定程度的应用,就连某些法院都已经开始接受电子签名的档案。国外开发PKI产品的公司也有很多,比较有影响力的有VeriSign和Entrust,他们都推出了可以应用的产品。Entrust公司的Entrust/PKI 5.0可提供身份认证、数字签名、加解密等多种功能,能较好地满足商业网站的实际需求。VeriSign公司也已经开始提供PKI服务,Intemet上很多软件的签名认证都来自VeriSign公司。IDC公司的Intemet安全知深分析家认为:PKI技术将成为所有应用的计算基础结构的核心部件,包括那些越出传统网络界限的应用【8】。B2B电子商务活动需要的认证、不可否认等只有PKI技术才有能力提供这些功能【81。我国的PKI技术起步于1998年,从1998年第一家以实体形式运营的上海CA中。tl(SHECA)成立以来,PKI技术在我国的商业银行、政府采购以及电子商务中得密码体制建立在一些难解的如人数分解、离散对数、椭圆曲线等数学问题上,这些数学问题在理论上都是可以解的,击破公钥体制也将成为现实。3.私有密钥的存储安全性问题。PKI没有提供私钥保护机制,用户无法判断私钥是否安全。当用户面对的是一个不安全的网络环境时,使用私钥很容易受到各种恶意代码的攻击。4.大多数电子商务系统系统采用单一的SSL安全协议,基于PKI的SSL安全协议的电子商务系统没有得到推广。5.购买现有的PKI系统以及维护PKI系统的费用很昂贵。本文研究的基于PKI的电子商务系统是一个中小型的系统,可以选择开发独立的CA认证系统的建设方式,这样能节约费用。由于在电子商务系统中采用单一的SSL协议来保证交易的安全是不够的,本文采用SSL+PKI/CA模式为电子商务提供较好的安全性保证。另外,一个实用的基于PKI体系的电子商务系统应该是安全的、易用的、灵活的,在设计时还必须考虑如下的一些问题,譬如:CA的标准化和权威性、CA自身的安全问题、私有密钥存储的安全性问题、高效安全的加密通信如何实现等。1.4本文研究工作本文研究了电子商务系统的安全问题,设计和实现了一个基于PKI的网上购物系统,自主开发了独立的CA认证系统,结合CA证书鉴别技术和SSL安全通信技术,借助于现有的Interact网络环境,在公共的网络信道上建立专用的加密通信信道,实现在不安全的信道上安全的数据传输,保证了信息在Internet上传输时的机密性和完整性。具体来说,本文工作如下:1.分析了目前电子商务平台面临的安全威胁,在此基础上,设计了基于PKI的安全电子商务系统框架。2.系统设计与实现了独立的CA认证中心。采用了访问控制、权限机制、密钥安全管理、数字水印日志等安全技术,保证CA认证中心自身的安全性和独立性。3.设计与实现了网上购物系统的SSL安全通信模块。针对SSL协议在电子商务应用中的身份认证缺陷进行了协议的改进,并通过实验证明改进方法的可行性:分析和比较各种算法性能,选择合适的加密算法针对现有WINDOWS系统本身所支持的SSL协议进行了加密强度的提高。4.按照先安全后系统的电子商务系统建设模式,在具有封闭的CA认证中心和独立的SSL安全通信模块的网络安全平台上,设计和实现了一个安全的基于PKI的网上购物系统-灵捷网上购物系统1.5章节安排全文内容安排如下:第一章是绪论。介绍了电子商务的概念,对电子商务安全问题进行了分析,介绍了国内外研究现状和本文的研究工作,以及章节安排。第二章是电子商务平台安全技术简介:PKI、SSL和密码技术。介绍了PKI的概念及CA认证系统的理论基础知识,对密码技术的基本概念和各类算法进行了介绍,为实现安全电子商务平台奠定理论基础。第三章是基于PKI的安全电子商务框架设计。首先介绍了电子商务系统的安全体系结构;然后对基于PKI的电子商务框架的安全层次和功能进行了分析;最后提出了基于PKI的安全电子商务框架。第四章是CA认证中心的设计与实现。首先详细介绍了CA子系统的设计;其次从CA的物理安全、网络数据传输安全、数据库安全、访问控制、密钥安全管理、自身系统安全等六个方面阐述了CA系统的安全性设计;最后实现了CA子系统的主要功能模块。第五章是SSL协议安全通信模块的设计与实现。首先对SSL通信模块进行总体设计;然后对SSL协议进行改进,并通过实验验证了改进方法的可行性;接着分析和比较了各种类型加密算法的性能,选择合适的加密算法提高加密强度;最后用OpenSSL实现了SSL安全通信模块。第六章是灵捷网上购物系统的设计与实现。首先分析了灵捷网上购物系统的需求并对总体结构进行设计;然后进行了数据库的详细设计,采取了安全措施来保障数据库安全;最后实现了网上购物系统的安全连接过程。第七章是结束语。对论文工作进行了总结,并对未来的工作进行了展望。第二章电子商务平台安全技术:PKI、SSL和密码技术电子商务平台安全技术是搭建安全电子商务平台的基石【l。本章主要介绍几种成熟的电子商务平台安全技术:PKI、SSL和密码技术的基本概念和核心技术;为设计和实现安全电子商务平台奠定理论基础。公钥密码体制PKI是以公钥密码技术为基础的,是电子商务平台的基础安全设施。安全嵌套层协议SSL是依赖于PKI的一种应用标准,电子商务系统的安全需要SSL安全协议的支持。密码技术是SSL安全协议和PKI技术的理论基础,密码技术的发展与应用,对解决电子商务系统的安全难题,保障私密数据信息的安全,起着不可忽视的作用【loJ。2.1 PKI技术PKI是一个用非对称密码算法原理和技术实现的、具有通用性的安全基础设施。PKI利用数字证书标识密钥持有人的身份,通过对密钥的规范化管理,为组织机构建立和维护一个可信赖的系统环境,透明地为应用系统提供身份认证、数据保密性和完整性、抗抵赖等各种必要的安全保障,满足各种应用系统的安全需求。简单的说,PKI就是提供公钥加密和数字签名服务的系统,目的是为了自动管理密钥和证书,保证网上数字信息传输的机密性、真实性、完整性和不可否认性。2。1。1 PKI的组成一个典型的PKI系统如图2.1PKI组成框图所示,其中包括PKI策略、软硬件系统、证书机构CA、注册机构RA(RegisterAuthority,即证书注册机构)、证书发布系统和PKI应用等【111。PKI安全策略建立和定义了一个组织信息安全方面的指导方针,同时也定义了密码系统使用的处理方法和原则。证书机构CA是P的信任基础,它管理公钥的整个生命周期,其作用包括:发放证书、规定证书的有效期和通过发布CRL(Certificate Revocation List,即证书废除列表)确保必要时可以废除证书。注册机构RA提供用户和CA之间的一个接口,它获取并认证用户的身份,向CA提出证书请求,主要完成收集用户信息和确认用户身份的功能。证书发布系统负责证书的发放,如可以通过用户自己,或是通过目录服务。PKI的应用非常广泛,包括在web服务器和浏览器之间的通讯、电子邮件、电子数据交换(EDI)、在Interact上的信用卡交易和虚拟专用网(VPN)等。2.1.2 PKI的应用PKI作为信息安全的基础设施,可以应用于所有的应用系统中,目前PKI技PKI技术可以保证Web交易多方面的安全需求,使Web上的交易和面对面的交易一样安全【51。4.电子商务的应用PKI技术是解决电子商务安全问题的关键,综合PKI的各种应用,可以建立一个可信任和足够安全的网络。利用PKI技术可以建立可信的CA认证中心,在通信中,利用数字证书来消除匿名带来的风险,利用加密技术来消除开放的Intemet带来的风险,使得商业交易可以安全可靠地在网上进行。PKI技术是一种适用于电子商务的安全体系,它能够有效地解决电子商务应用中的机密性、真实性、完整性、不可否认性和存取控制等安全问题15】。2.1.3 CA理论基础2.1.3.1 CA系统目标CA在PKI中称认证机构,是一个负责发放和管理数字证书的权威机构,它是整个PKI体系的核心【】。CA为各个实体颁发电子证书:对实体的身份信息和相应公钥数据进行数字签名,用以捆绑该实体的公钥和身份,以证明各实体在网上身份的真实性;并负责检验和管理证书。CA的系统目标是:为信息安全提供有效的、可靠的保护机制,提供网上身份认证服务,提供信息保密性、数据完整性以及收发双方的不可否认性服务【9J。21 32 CA系统功能一个典型的CA系统包括安全服务器、注册机构RA、CA服务器、LDAP目录服务器和数据库服务器等引,典型CA框架模型如图2.2所示中的软总线;在ORB之上定义了很多公共服务,可以提供诸如并发服务、名字服务、事务(交易)服务、安全服务等各种各样的服务:最上层的公共设施则定义了组件框架,提供可直接为业务对象使用的服务,规定业务对象有效协作所需的协定规则。MICO,是MICO is CORBA的缩写。MICO是一个完全符合CORBA标准的实现,同时又是一个开源软件,可以自由获得它的源代码。MICO自从1997年4月第一次发布以来,现在已广泛用于各种目的,并被OMG认证为符合CORBA标准。MICO已日趋完整,当前最新版本的主要特性有:动态调用接口DII、动态框架接口DSI、IDLC+映射、IIOP、IIOP over SSL、拦截器interceptors、可移植对象POA、命名服务、交易服务和事件服务。2.2 SSL安全协议SSL(Secure Sockets Layr)协议是由Netscape公司开发的一套Intemet数据安全协议,被广泛地用于电子商务系统中的web浏览器与网站服务器之间的身份认证和加密数据传输【131。SSL协议主要包含握手协议(handshake protoc01)和记录协议(record protoc01)13】:记录协议确定数据安全传输的模式,握手协议用于客户机和服务器建立起安全连接之前交换一系列的安全信息,这些安全信息主要包括以下内容:1.客户机确定服务器的身份。2.允许客户机和服务器选择双方共同支持的一系列加密算法。3.服务器确定客户机的身份。4.通过非对称密码技术产生双方共同的密钥。5.建立SSL的加密安全通道。2.2.1 SSL记录协议SSL记录层协议是在描述SSL信息交换的过程中的记录格式,它提供了通信、身份认证功能。在SSL中,所有数据都被封装在记录中,一个记录由两部分组成:记录头和非零长度的数据。记录头可以是2字节或3字节(当有填充数据时使用)。SSL握手协议的报文要求必须放在一个SSL记录层的记录里,但应用层协议的报文允许占用多个SSL记录来传送。SSL记录头包含的信息有记录头的长度、记录数据的长度、记录数据中是否有填充数据。SSL记录数据部分有三个分量:MAC.DATA(MAC数据)、ACTUAL-DATA(被传送的应用数据)、PADDING.DATA(填充数据)。记录层SSL握手协议允许服务器和客户机相互验证,协商加密算法、摘要算法以及保密密钥,用来保护在SSL记录中发送的数据。握手协议是在任何应用程序数据传输之前使用的。SSL握手协议包含两个阶段,第一个阶段用于建立秘密性通信信道,第二个阶段用于客户认证【14】。1.第一阶段是通信的初始化阶段,通信双方都发出Hello消息(服务器端的消息为Server-Hello,客户端的消息为Client-Hello。当双方都接收到Hello消息时,就有足够的信息确定是否需要一个新的密钥。若不需要新的密钥,双方立即进入握手协议的第二阶段。否则,此时服务器方的Server-Hello消息将包含足够的信息使客户方产生一个新的密钥。这些信息包括服务器所持有的证书、加密规约和连接标识。若密钥产生成功,客户方发出Client-Master-Key消息,否则发出错误消息。最终当密钥确定以后,服务器方向客户方发出Server-Verify消息。因为只有拥有合适的公钥的服务器才能解开密钥。2.第二阶段的主要任务是对客户进行认证,此时服务器已经被认证了。服务器方向客户发出认证请求消息:Request-Certificate。当客户收到服务器方的认证请求消息,发出自己的证书,并且监听对方回送的认证结果。而当服务器收到客户的认证,认证成功返回Server-Finish消息,否则返回错误消息。到此为止,握手协议全部结束。OpenSSL是一个非常优秀的SSL/TLS开放源码软件包,主要是作为提供SSL算法的函数库供其他软件调用而出现的,可给任何TCP/IP应用提供SSL功能。OpenSSL包括SSL库、加密算法库以及应用程序三大部分,并提供了测试程序和一些应用例子,实现了SSL/TLS协议和其相关的PKI标准。OpenSSL应用程序主要提供下列功能:1.各种类型密钥以及密钥参数的生成和格式转换。2.用各种加密算法进行数据加密。3.证书请求、证书生成和签发以及证书其它相关标准的转换。4.信息摘要算法以及其相关编码的实现。5.SSL服务器和SSL客户端通信的实现。OpenSSL是一个开放源代码的SSL协议的产品实现,它采用C语言作为开发语言,具备了跨系统的性能。调用OpenSSL的函数就可以实现一个SSL加密的安全数据传输通道,从而保护客户端和服务器之间数据的安全。2.3密码技术介绍PKI技术是基于公钥密码体系的,研究基于PKI的安全电子商务系统,必须面对信息的加密问题,如何选定合适的加密算法也是本文的研究内容之一。数据加密是指在数据处理过程中将敏感数据转换成不能识别的乱码,还原的过程则称为解密,数据加、解密过程是由算法来具体实施的【15】。根据数据加密的方式,可以将密码技术分为对称加密技术、非对称密钥技术和信息摘要算法三种【15】。2。3.1对称密钥算法介绍对称加密(Symmetric Encription),也称为共享密钥,加密和解密过程均采用同一把秘密钥匙,通信双方都必须具备这把钥匙,并保证这把钥匙不被泄露【161。对称密钥技术的算法主要包括:DES、AES和RC等算法。DES(Data Encryption Standard,DES)算法是由美国国家标准局提出的第一个得到广泛应用的私钥加密算法。二十年来,它一直活跃在国际保密通信的舞台上,扮演了十分重要的角色【17】。它采用多次换位加密与代替相结合的处理,使用56位数据密钥来操作64位数据块的分组加密,生成的密文为64位。DES算法加密、解密速度快,可以用于对大量数据加密。3DES算法是DES算法的一种变形,这种方法使用两个独立的56位密钥对交换的信息进行3次加密以增强加密强度,从而使其有效密钥延长,达到DES算法的2倍【15】。AES(Advanced Encryption Standard,AES)算法是2000年lO月,NIST(美国国家标准和技术协会)宣布通过从15种候选算法中选出的一项新的加密算法【l引。由比利时研究员JoanDaemen和VincentRijmen设计的Rijndael算法以其优秀的性能和抗攻击能力,在15种侯选算法中脱颖而出成为新一代的加密算法标准AES。RC算法包括RC2算法和RC4算法。RC2算法和RC4算法是RSA公司设计的可变密钥长度算法,可以规定不同长度的密钥以提高或者降低安全强度【191。RC2算法被设计成取代DES算法的密码算法。RC4算法是序列算法,广泛应用于商业密码产品中。几种主要的对称密码算法的密钥长度191如表2.1所示。表2.1对称密码算法密钥长度和分组长度算法密钥长度分组长度DES 64 64 RC4 128 64 AES 128,196,256 128目前对对称密钥系统的攻击方法主要在于破获加解密对称密钥,衡量对称加密算法优劣的主要尺度是其使用的密钥的长度【四】。密钥越长,为了找到解密数据的正确密钥而测试的密钥数量就越多,破解这种算法就越困难。2.3.2非对称密钥算法介绍非对称加密(Asymmetric encryption)3L称公开密钥加密【2们。在非对称加密体系中,密钥被分解为一对(eP一把公开密钥或加密密钥和把专用密钥或解密密钥)。这对密钥中的任何一把都可作为公开密钥(加密密钥)通过非保密方式向他人公开,而另一把则作为专用密钥(解密密钥)加以保存。公开密钥用于对机密信息的加密,专用密钥则用于对加密信息的解密。专用密钥由生成密钥对的贸易方掌握,公开密钥可广泛发布,但它只对应于生成该密钥的贸易方。目前,非对称密钥算法主要包括RSA、DSA和D-H等。RSA(Rivest ShamirAdlemen,一种因特网加密和认证体系)算法是由Rivest,Shamir和Adleman推出的最为著名的非对称加密算法,它的密钥长度从512位增至2048位,可以满足不同等级的加密要求【201。RSA算法既可以用于加密,又可以用于数字签名,是一种比较成熟的非对称加密算法,它的安全性依赖于大数的因子分解201。DSA(Digital SignatureAlgorithm,数字签名算法)算法是Schnorr和E1Gamal签名算法的变种,被美国NIST作为数字签名标准DSS(Digital Signature Standard)口。DSA是基于整数有限域离散对数难题的,其安全性与RSA相比差不多【2。DSA的一个重要特点是两个素数P和q是公开,即使不知道私钥,也能确认它们是否是随机产生的,其中素数P的长度至少是1024比特【19】。D-H(Diftie-hellman,D-H)算法是1976年由Diffie-Hellman提出的第一个公开发表的非对称加密算法【|71。它用于在网络环境下产生用户之间通信的密钥,作为对私钥加密算法的会话密钥使用,D.H算法主要用于密钥的产生与交换71。几种主要的非对称加密算法的安全性能分析对比【22】,见表2.2。表2.2非对称加密算法安全性分析表算法算法分析RSA基于大整数数因子分解,能抵抗到目前为止已知的所有密钥攻击,算法成熟DSA基于整数有限域离散对数问题,安全性和速度均低于RSA,算法计算量大,比RSA速度慢10到40倍DH基于计算离散对数问题,仅用于密钥交换2.3.3信息摘要算法介绍信息摘要算法,也称为散列函数、哈希算法【221。它通过把一个单向数学函数应用于数据,将任意长度的一块数据转换为一个定长的、不可逆转的数据,这段数据通常叫做信息摘要。信息摘要代表了原始数据的特征,当原始数据发生改变时,重新生成的信息摘要也会随之变化,即使原始数据的变化非常小,也可以引起信息摘要的很大变化【221,因而信息摘要算法可以敏感地检测到数据是否被篡改。所谓碰撞(Collision)是指定义域的两个不同元素x1、x2映射到同一个消息摘要,即h(x1)=h(x2),也就是存在不同的消息具有相同的消息摘要。从信息论的观点看,散列函数存在碰撞是必然的,这一点在数学上可以严格的证明【231。信息摘要算法的安全性从理论上来说与信息摘要的长度是成正比的【241。信息摘要算法最有代表性的是MD系列算法和SHA系列算法。MD算法是应用非常广泛的一个算法家族,尤其是MD5(Message.Digest Algorithm5,信息摘要算法版本5),它由MD2、MD3、MD4发展而来,由Ron Rivest(RSA公司)在1992年提出,目前被广泛应用于数据完整性校验、数据(消息)摘要、数据加密等【25。MD2、MD4、MD5都产生16字节(128位)的信息摘要,一般用32位十六进制数表示。MD2的算法较慢但相对安全,MD4速度比MD2快但安全性下降,MD5比MD4更安全、速度更快【251。在互联网上进行大文件传输时,一般用MD5算法产生一个与文件匹配的、存储MD5值的文本文件(后缀名为md5或md5sum),这样接收者在接收到文件后,就可以利用与SFV(SimpleFile Verification,简单文件校验)类似的方法来检查文件完整性,绝大多数大型软件公司或开源组织都是以这种方式来校验数据完整性,而且部分操作系统也使用此算法来对用户密码进行加密,另外,它也是计算机犯罪中数据取证的最常用算法【241。SHA(Secure Hash Algorithm,SHA)系列算法是由美国专门制定密码算法的标准机构-美国国家标准技术研究院(NIST)制定的。SHA系列算法的信息摘要长度分别为:SHA为20字节(160位)、SHA256为32字节(256位)、SHA384为48字节(384位)、SHA512为64字节(512位)。SHA系列算法产生的数据摘要的长度比MD系列算法长,更难以发生碰撞,算法的安全性更高,SHA系列算法是未来数据摘要算法的发展方向【261。由于SHA系列算法的数据摘要长度较长,因此其运算速度与MD系列算法相比也相对较慢。目前SHA系列算法的应用较为广泛,主要应用于CA和数字证书中,另外在目前互联网中流行的BT软件中,也使用SHA系列算法来进行文件校验。2.4小结本章首先讨论了PKI技术,并对PKI的核心技术CA的理论基础进行了详细的介绍和分析;然后分析了SSL安全协议并介绍了一个SSL/TLS开放源码软件包-OpenSSL;最后介绍了密码技术中的各类加密算法,分析比较了各代表性算法的性能。本章介绍的:PKI、SSL协议和密码技术是设计和实现基于PKI的安全电子商务系统不可缺少的理论。第三章基于PKI的安全电子商务框架的设计电子商务的安全是以策略为指导、技术为基础、管理为核心的安全系统框架。安全框架对于整个电子商务系统的实现是至关重要的,框架设计的好坏直接关系到基于PKI的电子商务系统的优劣。本章首先分析电子商务系统的安全体系结构,然后设计了基于PKI的安全电子商务框架。3.1电子商务系统的安全体系结构一般的电子商务系统的安全包括物理安全、信息安全、通信安全、交易安全和管理安全五个部分【27】。计算机信息系统各种设备的物理安全是整个计算机信息系统安全的前提。物理安全的作用是保护计算机网络设备、设施和其它数据信息免遭威胁。信息安全概括了一般性的安全技术问题,系统可能遭受的攻击有:窃听、伪装、报文篡改、渗透、流量分析和拒绝服务等。针对这些攻击,目前主要采取加密技术、数字签名技术、访问控制技术、数据完整性技术和身份认证技术等进行防范。信息安全主要涉及信息传输的安全、信息存储的安全和对网络传输信息内容的审计等三方面。通信网络是交换信息的基本设施,针对通信协议中最常出现的安全威胁,实施了相应的安全协议用于实现网络通信的安全。在电子商务中,交易双方的身份确认和安全通信非常重要,同时为了在用户、商家和银行之间能够实现资金流动,需要确保交易安全:另外面对电子商务安全的脆弱性,还要加强网络的安全管理。电子商务安全可归结为可靠性、保密性、完整性、不可否认性、匿名性、原子性和有效性等核心问题【291。电子商务的安全体系结构是保证电子商务中数据安全的一个完整的逻辑结构,同时它也为电子商务交易过程的安全提供了基本保障。电子商务系统的安全体系结构是建立在网络安全体系结构基础之上的,共由4个部分组成:加密技术层、安全认证层、安全协议层和应用系统层。电子商务安全体系结构如图3.1所示。从图中的层次结构可以看出,下层是上层的基础,为上层提供技术支持;上层是下层的扩展与递进,各层次之间相互依赖、相互关联构成统一整体。电子商务是依赖网络实现的,需要利用Intemet基础设施和标准,所以网络安全是最基本的,在网络安全体系之上的就是电子商务交易安全体系。加密技术是保证电子商务系统安全所采用的最基本的安全措施,它用于满足电子商务对保密性的需求。安全认证层中的CA和PKI技术是保证电子商务安全的又一必要手段,通过认证服务器上以数字证书为核心的加密传输,数字签名和数字证书等安全技术,进一步满足电子商务对完整性、抗抵赖性、可靠性的要求。安全协议层采用SSL安全协议提供客户端和服务器端的认证,数据完整性和信息机密性等安全措施,它为电子商务系统提供保障机制和交易标准。电子商务安全问题可归结为网络安全和商务交易安全这两个方面。网络服务层提供网络安全;加密技术层、安全认证层、安全协议层、应用系统层提供商务交易安全。图3.1电子商务安全体系从以上分析来看,要解决电子商务的安全问题,必须选择合适的安全模型和安全协议。PKI是目前国际上公认的全面解决网络安全的最佳方案,PKI能有效支撑起保密性、完整性、可靠性、有效性和不可否认性为基本要求的网络安全应用【291。3.2基于I)KI的安全电子商务框架设计3.2.1基于PKI的安全电子商务框架安全

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论