关闭

关闭

封号提示

内容

首页 基于J2EE的智能小区信息管理系统的安全性研究与应用.pdf

基于J2EE的智能小区信息管理系统的安全性研究与应用.pdf

基于J2EE的智能小区信息管理系统的安全性研究与应用.pdf

上传者: IT金融 2011-10-25 评分 0 0 0 0 0 0 暂无简介 简介 举报

简介:本文档为《基于J2EE的智能小区信息管理系统的安全性研究与应用pdf》,可适用于IT/计算机领域,主题内容包含武汉理工大学硕士学位论文基于JEE的智能小区信息管理系统的安全性研究与应用姓名:王伟申请学位级别:硕士专业:计算机应用技术指导教师:冉春玉摘要智能小符等。

武汉理工大学硕士学位论文基于JEE的智能小区信息管理系统的安全性研究与应用姓名:王伟申请学位级别:硕士专业:计算机应用技术指导教师:冉春玉摘要智能小区是近年来产生并迅速崛起的止种新型住宅群它为住户提供了一种更加安全、舒适、方便、快捷和开放的智能化、信息化的生活空间。智能小区管理信息系统是在一定地域内多个具有相同或不同功能的住宅小区按照统筹的方法分别对其功能进行智能化充分共享资源在提供安全、舒适、方便、节能、可持续发展的生活环境的同时便于统一管理和控制。随着计算机网络技术的快速发展特别是Web的主流化使得包括智能小区信息管理系统在内的很多应用系统逐渐由封闭走向开放所面对的信息资源将越来越依赖于Web环境导致基于JEE的网络应用系统所面临着日益复杂的安全管理难题。而传统的信息安全解决方案大多是从系统底层出发不能够很好的同基于JEE平台的网络信息系统结合。因此需要采用一种基于JEE的安全机制来保证智能小区管理信息系统的安全。本文的研究目标是消除系统的安全隐患保证信息畅通无阻和安全可靠的传输提高系统的安全性和健壮性。本文在对传统网络信息安全技术和Java平台基本安全体系的研究基础上深入地分析和探讨了Java密码学结构(JCA)、Java密码系统扩展(JcE)、Java的验证和授权服务(JAAS)和Java安全套接字扩展(JSSE)等基于JEE的安全机制。。本文结合智能小区信息管理系统的研究项目分析了基于JEE的信息管理系统的安全性特点设计和实现了系统的安全模块包括了身份认证模块、权限管理模块、数字签名模块、PGP电子邮件模块和SSL通信模块。在设计和实现过程中JCA、JCE、JAAS和JSSE的安全特性和技术优势得到了充分体现。通过初步的测试和应用系统的安全性实现和应用基本上达到了理论设计要求。结果表明本文阐述的智能小区信息管理系统的安全方案在基于JEE的网络数据库系统中具有一定的普遍意义切实可行具有良好的应用和发展前景。关键字:JEE身份认证数字签名SSLAbstractWiththedevelopmentofsocialinformationprocessthepeoplearenotonlyconcernaboutroomarea,naturalenvironmentandtrafficsituationaroundlivingcommunityandson,butalsoputmoreinterestandattentionontheaspectofoutsideconununicationinformationservicesecurityguardestatemanagement.Inordertoadaptthiskindofsocialrequirement,intelligentcommunityraiseatthesamemoment.TheintelligentcommunityinformationmanagementsystemintellectualizethesRmeordifferentfunctionbuildinginthecertainregionaccordingtotheoverallplanmethodshareresonrogsfully.Itisveryusefulforprovidingsecuritycomfortableconvenientlivingconditions.WiththerapiddevelopmentofnetworktechnologyapplicationsystemisgraduallytransformingitsstatefromisolationtoI脚me鲻whiletheinformationresourcesthatapplicationsystemfacedependmoreandmoreontheWebenvironmentandthereforeincreasinglycomplicatedsecurityadministrationhasbeAmeatoughproblemderivingfromthenetworkapplicationsystembasedontheJEEenterpriseapplicationsystem.Traditionalinformationsecurityschemethatmostlystartshomthebottom啪notcombinedwiththesystembasedonJEEplatform.Sotheresearchaimofthispaperistoeliminatethesystem’Ssccuri哆hiddenproblems,ensurethesecllreandunblocktransmissionofinformationinnetwork,improvethesecurityandhalenessofsystem.BasedontheresearchabouttraditionalnetworkinformationsecuritytechnologyandthesecurityarchitectureonJavaplatformthispaperanalyzedanddiscussedEEsecurityarchitectureincludingJavaCryptographicArchitecture(JCA)、JavaCryptographyExtension(JCE)、JavaAuthenticationandAuthorizationService(JAAS)、JavaSecuritySocketExtension(JSSE)andSOon.Thispapercombinedwiththeprojectofintelligentcommunityinformationmanagementsystemanalyzedsecuritycharacteristicanddesignrequirementdesignedandimplementedthesecuritymoduleincludingauthenticationmodule、authoritycontrolmodule、signaturemodule、PGPemailmoduleandSOon.DuringⅡthedesignandimplementsecuritycharacteristicandtechnologyadvantageofJCA、JCE、JAASandJSSEstackedoutamile.Throughinitialtestandapplication,thesecuritymodulesc她meetthebasictheoreticaldesignrequirement.TheresultsoftrialoperationindicatethatusingJEEsecuritymechanismtoimplementthesecurityschemeofintelligentcommunityinformationmanagementsystemispracticalandhasgreatapplicationanddevelopmentprospects.Andthisschemeispossibletobeusedabroad.Keywords:JEEAuthorizationFigureSignatureSSLlII此页若属实.请申请人及导师签名。独创性声明本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究成果.据我所知除了文中特别加以标注和致谢的地方外论文中不包含其他人已经发表或撰写过的研究成果也不包含为获得武汉理工大学或其它教育机构的学位或证书而使用过的材料.与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了谢意.研究生签名:至!盘日期丝:关于论文使用授权的说明本人完全了解武汉理工大学有关保留、使用学位论文的规定即:学校有权保留送交论文的复印件允许论文被查阅和借阅学校可以公布论文的全部内容可以采用影印缩印或其他复制手段保存论文.‘(保密的论文在解密后应遵守此规定)注:请将此声明装订在学位论文的目录前.期以f武汉理工大学硕士论文第章绪论.课题研究背景和意义建设部颁布的《智能建筑设计标准》GB/T中对智能化作了如下描述:“住宅智能化系统设计应体现以人为本的原则做到安全、舒适、方便。”因此面向世纪的智能小区可以概括为:采用高科技智能化手段实现小区快速便捷的现代通信条件、安全舒适的居住环境、高效科学的物业管理三大功能目标。具体来说智能化小区是指可以为社区居民提供计算机网络、智能家居、物业服务和管理、电子商务平台、社区服务信息网等全方位信息服务的多媒体综合信息系统通过这些服务用户可以实现高速取Interact接入、网上证券期货交易、远程电子视频会议、网上购物、网上教育、网上游戏、家中视频点播等多种功能还可实现办公家居自动化管理如家电自动化控制系统、室内安全防护系统、远程抄表收费系统等【l。智能小区信息管理系统是一个大型集成化的信息系统它凭借网络的先进性以及多态的表现性加上各种网络多媒体技术的应用从而营造出了一个丰富多彩的虚拟社区。不但为小区的管理者与住户建立方便有效的沟通渠道提高小区的管理、服务质量而且为小区住户提供了更加全面、周到、快捷的信息服务提高居民的生活质量。信息管理系统是以计算机为工具对信息进行收集、传输、存储以及加工处理、辅助实现事务管理和决策现代化的一种人机交互的智能化计算机系统。信息管理系统的发展与计算机网络技术的发展紧密相关其体系结构也随着技术和时代的潮流发生了很大的变化大致经历了三个阶段【】:第一阶段:主机终端结构(Host/Terminal)、文件服务器结构(File/Server)第二阶段:客户机/服务器模式(Client/Server)第三阶段:浏览器和服务器结构(Browser/Serror)B/S结构将业务逻辑从系统服务和用户界面分离出来将其作为中间层摆在这二者之间。这时htcmet或Intranet的广泛应用将原有编程模型不易于分布的客户端的缺点暴露出来同时为了应用开发者可以专注于业务逻辑细节的编武汉理工大学硕士论文程JEE技术得到了迅速形成和发展同。JEE(JavaEnterpdseEdition)规范是Sun公司制定的一个基于Java技术的分布式组件计算平台的规范在规范定义的平台上可以简单、快速的实现多层结构的基本技术的分布式应用系统。JEE利用Java平台来简化诸多与多级企业解决方案的开发、部署和管理相关的复杂问题的体系结构。提供了对各种最新技术EJB、Servlet、JSP、JDBC、CORBA以及XML的全面支持。JEE提供了一个企业级的计算模型和运行环境用于开发和部署多层体系结构的应用【q。JEE是针对Web服务、业务对象、数据访问和消息传送的一组规范其规范和技术发展更新很快。随着互联网络的快速渗透和软件应用系统功能的日益强大及其复杂程度的提高安全性呈下降趋势使得JEE安全的地位被提升到了一个新的高度。虽然最近两年安全认证中心技术、安全中间件技术得以飞速发展JEE组件自身的安全性也有明显加强确实解决了一定的安全问题但绝对安全的JEE系统是不可能实现的。由于Interact网络本身具有的开放性每一个网络用户在成为网络的受益者的同时也可能成为网络的破坏者。这导致了Intemet网络的无序化也使得Internet的网络秩序基本上处于无法可依的状态【。。因此需要采用一种基于JEE的安全机制来保证信息管理系统在网络上的安全性这就要求采用加密/解密签名/校验身份认证权限控制等手段结合支持JEE体系的中间件产品的安全性保障共同筑就一道安全屏障提高网络安全性能把网络安全隐患降低到最小的程度保证系统和用户的安全。于是基于JEE的信息管理系统的安全性研究就有着十分重要的意义。.国内外研究现状分析目前世界各国均十分重视信息安全问题。美国政府试图通过官民联手、重点保护的战略显著提高政府网络系统的安全性建立可靠互联的信息基础设施确保国家安全职能。为此美国启动了包括信息共享计划、确定伙伴关系计划、组建工作机构计划、信息安全教育战略计划、保障政府信息安全计划、完善法律法规计划以及针对基础设施安全的研究开发计划重点保护美国关键基础设施的安全悼J。在我国中央领导多次强调要解决好我国的信息安全问题。信息安全现在武汉理工大学硕士论文已成为我国信息化建设至关重要的基础条件。国家密码管理委员会办公室、国家保密局、公安部等都出台有关政策法规加强信息安全监管和支持力度。国家计委、科技部、信息产业部、技术监督局等都部署了若干重大项目、产业基地、应用示范、标准规范等工作旨在加强研究开发、掌握自主知识产权的信息安全技术我国信息安全技术和产业面临极好的发展机遇。我国科技部对信息安全工作给予了高度重视在九五后期紧急启动了计划信息安全应急计划部署了信息安全成果产业化基地的建设成立了国家信息安全工程技术研究中心、国家计划信息安全基础设施研究中心、国家计划反计算机入侵和防病毒技术研究中心。十五期间在基础理论研究、高技术研究、科技攻关以及科技创新基金计划中全面部署信息安全技术的研究和开发。“国家信息安全应用示范工程”是“十五”国家科技攻关计划重大项目之一l。信息安全研究对保护国家重要信息系统免受侵害、发展自主知识产权的信息安全技术以及推进信息安全产业化进程等方面都具有重要的现实意义是科技部在解决我国信息安全问题方面的重要举措。.研究目标和技术路线在信息管理系统的安全性问题上传统解决方案大多是从系统的底层出发不能够很好地同基于Web技术尤其是基于JEE平台的系统结合无法解决系统传输层和应用层的安全隐患。因此本文的研究目标是结合JEE的安全机制消除系统的安全隐患提高系统的安全性和健壮性。本系统是基于JEE的Web应用系统因此本文先从JAVA的安全机制入手通过对Java密码学的结构框架(JCA)以及Java加密扩展(JCE)、Java认证和授权服务(JAAS)、Java安全套接字扩展(JSSE)等框架实现技术进行研究进一步讨论JEE的网络安全机制在采用B/S模式的Web系统中的应用和实现从而使系统在跨平台和增加业务逻辑时更能安全有效的运行。本论文是针对智能小区信息管理系统中的安全机制涉及面广结构复杂为了保证系统开发的成功率和生产率采用软件工程学的生命周期方法学进行开剔。武汉理工大学硕士论文.论文的组织结构第章简述了课题的研究背景和发展状况以及研究与工作的内容。第章介绍了密码学以及基本的网络安全技术。第章介绍了Java安全以及JEE网络安全机制。第章阐释了信息管理系统的安全性设计。系统的安全性设计主要有身份认证模块、权限控制模块、数字签名模块、PGP电子邮件模块和SSL传输模块的设计。一第章信息管理系统的安全实现。针对第四章的设计详细阐述了身份认证模块、权限控制模块、PGP电子邮件模块、数字签名模块和SSL通信模块的详细实现。第章全文的总结。武汉理工大学硕士论文第章网络信息安全和密码学根据IS(国际标准化组织)在网络安全标准((IS)中的定义网络安全服务分个层次:身份认证服务、访问控制服务、数据保密服务、数据完整性服务、不可否认服务【。要进行网络信息安全系统的设计必须了解网络中信息安全实现的基本原理和实现技术。本章阐释了阿络信息安全基本原理分析了信息安全中的核心技术一密码技术介绍了消息摘要和数字签名等其他网络安全技术并说明只有在应用层的安全才是真正的安全。.网络信息安全..网络信息安全简介随着网络的发展信息安全的内容也跟着发生变化和扩展。网络由封闭的计算机网络发展为开放的互联网络网上业务由简单的数据通信发展为网上的交易。网络信息安全大致经历了三个发展过程:数据安全系统安全、交易安全【。数据安全是计算机网络时代的基本安全要求主要包括与数据安全相关联的技术手段包括传输数据和存储数据安全最基础的安全构件是机密性、完整性和访问控制。数据的机密性和完整性可以由算法技术保证而访问控制则与授权机制结合起来才能起作用。系统安全是开放的互联网络时代最基本安全要求主要包括与信息系统运行相关的技术手段包括边界和计算环境安全最基础的安全构件是保护、探测和响应。所用基本技术是防火墙、VPN加密隧道、IDS入侵检测、防病毒等。交易安全是网络交易时代的最基本安全要求为交易(Transaction)提供鉴别性证明、负责性证明和审计服务。最基础的安全构件是鉴别性、负责性和审计性。交易安全靠认证系统来保证。认证系统是以交易安全为目的【。因此Web应用中的安全功能一般需要满足下列四项功能:机密性:数据不会被未授权的攻击者所窃取。武汉理工大学硕士论文可认证性:能够确认文件的来源确实是传送者本人不是别人伪造的。完整性:文件是真正的原文并末被无意或是恶意的篡改。不可否认性:发送方在送出文件后不可否认他曾送出这份文件。..网络信息安全基本技术.开放系统互联标准网络中信息安全实现基本技术国际标准化组织在开放系统互联标准(osr)e定义了个层次的网络参考模型它们分别是物理层、数据链路层、网络层、传输层会话层、表示层和应用层。不同的网络层次之间的功能虽然有一定的交叉但是基本上是不同的。从安全角度来看各层能提供一定的安全手段针对不同层次的安全措施是不同的嘲。没有哪个单独的层次能够提供全部的网络安全服务每个层次都能做出贡献。在物理层可以在通信线路上采用某些技术使得搭线偷听变得不容易或容易被检测出。在数据链路层点对点的链路可以采用通信保密机进行加密和解密。所有的细节可以全部由底层硬件实现高层根本无法察觉。但是这种方案无法适应需要经过多个路由器的通信信道因为在每个路由器上都需要进行加密和解密在这些路由器上会出现潜在的安全隐患在开放网络环境下并不能确定每个路由器都是安全的。在网络层防火墙技术被用来控制信息在内外网络边界的流动它可以确定来自哪些地址的信息或者禁止访问哪些目的地址的主机。在传输层这个连接可以是端到端的加密也就是进程到进程的加密。虽然这些解决方案都有一定的作用并且有很多人正在试图提高这些技术但是它们都不能提供一种充分通用的办法来解决身份认证和不可否认问题。要解决这些问题必须在应用层进行。应用层的安全主要是指针对用户身份进行认证并且建立起安全的通信信道。有很多针对具体应用的安全方案它们能够有效地解决诸如电子邮件、Frrrp等特定应用的安全问题能够提供包括身份认证、不可否认、数据保密、数据完整性检查乃至访问控制等功能。但是在应用层并没有一个统一的安全方案。.TCP/IP协议网络中信息安全实现基本技术现在网络中普遍使用TCP/IP协议。TCP/IP分层模型包括物理层、网络接口层、互联网层(也称口层)、传输层(也称TCP层)和应用层。TCP/IP协议本身简单没有加密、身份认证等安全特性l。要真正实现网络安全每个层武汉理工大学硕士论文次都要做出贡献。对腰层在口加密传输信道技术方面坤安全性工作小组IPSEC来制定了球安全协议IPSP和对应的Internet密钥管理协议IKMP的标准。口层是非常适合提供基于主机的安全服务。相应的安全协议可以用来在Intemet上建立安全的口通道和虚拟专用网。对传输层通过在TCP之上建立一个安全通信层次。传输层网关在两个通信结点之间传递TCP连接并进行控制这个层次一般称为传输层安全。最常见的传输层安全技术有SSL、SOCKETS和安全RPC等【“。对应用层口层安全协议能够为网络连接建立安全的通信信道网络层(传输层)安全协议允许为主机(进程)之间的数据通道增加安全属性但都无法根据所传送内容不同的安全要求作出区别对待。在应用层采用安全机制可以解决这个难题。这意味着真正的数据通道还是建立在主机(或进程)之间但却能够区分在同一通道上传输的一个个具体文件的安全性要求。提供应用层的安全服务实际上是最灵活的处理单个文件安全性的手段。例如一个电子邮件系统可能需要对要发出的信件的个别段落实施数据签名。较低层的协议提供的安全功能一般不会知道任何要发出的信件的段落结构从而不可能知道该对哪一部分进行签名。只有应用层是唯一能够提供这种安全服务的层次。.网络中信息安全技术的实现方法’通过以上分析要真正实现信息安全技术在应用层实现是最为方便。然而加入安全功能的应用都会面I临一个主要的问题就是每个这样的应用都要单独进行相应的修改甚至对于同一应用使用不同类型的加密算法都需要进行修改。直接修改应用程序或其他协议可能带来应用协议和系统的不兼容性对用户来说使用起来并不方便。因此需要有一个通用的安全服务接口将底层安全服务进行抽象和屏蔽。这就是提供应用层安全的另一条思路即通过中间件层次实现所有安全服务的功能通过定义统一的安全服务接口向应用层提供身份认证、访问控制、数据加密等安全服务。可以将中间件层次定位为在传输层与应用层之间的独立层次与传输层无关。SSL也可以看作是一个独立的安全层次但是它与TCP/IP紧密捆绑在一起因此不把它看作是中间件层次【”】。由于应用程序要使用身份认证和密钥分发系统的API使得应用程序能不作修改就使用不同的身份认证和密钥分发提供的服务。能做到这一点开发人武汉理工大学硕士论文员就不必再为增加很少的安全功能而对整个应用程序动大手术了。因此认证系统设计领域内最主要的进展之一就是制定了标准化的安全API堋。.密码学及其基本体制..密码及其密码学密码在军事、政治、外交等领域是信息保密的一种不可缺少的技术手段采用密码技术对信息加密是最常用、最有效的安全保护手段。密码技术和网络协议相结合可发展为以认证、访问控制、电子证书等因此密码技术被认为是信息安全的核心技术【。密码是实现秘密通讯的主要手段是隐蔽语言、文字、图像的特种符号。凡是用特种符号按照通讯双方约定的方法把电文的原形隐蔽起来不为第三者所识别的通讯方式称为密码通讯。在计算机通讯中采用密码技术将信息隐蔽起来再将隐蔽后的信息传输出去使信息在传输过程中即使被窃取或载获窃取者也不能了解信息的内容从而保证信息传输的安全。密码学是研究信息系统安全保密的技术。它包括两个分支:密码编码学和密码分析学。密码编码学是对信息进行编码实现隐蔽信息的一门学科而密码分析学是研究分析破译密码的学科两者相互独立又相互促进。一个密码系统采用的基本工作方式成为密码体制。密码体制从原理上可以分为两大类:对称密钥(SymmetricKey)体制和非对称密钥(AsymmetricKey)体制或者秘密密钥(SecretKey)体制和公开密钥(Pubic&y)体制【捌。..对称密钥密码体制对称密码系统在加密及解密时都是使用同一把密钥。其加密解密过程如图所示。此类密码系统的优点为其加解密速度极快远高于后面将会提到的非对称密钥密码系统。但因其数据加密与解密时是使用同一把密钥在目前网络通信各方互相无法见面的环境下如何使通信的各方能够都获得此对称密钥让通信双方执行正确的加解密是此类密码系统应用上一大问题。因此对称密钥密码系统不适合直接应用在大范围的网络上例如直接用在目前的因特网就是不可行的仅密钥分发、认证的问题就使网络使用者很难解决所以一般会配合非对称密钥密码系统一起运作结合两种系统的长处来对数据执行信武汉理工大学硕士论文息安全的保护。厂I............J加密前的明文口I.............一加密后的密文解密后的明文图对称密钥加密解密过程目前较著名的对称密钥密码系统算法有DES、RC、RC、IDEA、SAFER、FEAL、Skipjack及目前美国政府公开征求的新一代密码算法(AES)Rijndael等都属于此类密码算法【ll。..非对称密钥密码体制非对称密钥系统也就是公开密钥系统是指任何人均可将加密的公钥公布在网络上或其它可以公开的地方让所有的人知道。其加密解密过程如图所示。任何人欲传送信息给该接收方时可将信息使用该接收方所公布的公钥加密之后传送给接收方。当接收方收到此加密后的信息因为只有接收方拥有与此公钥相对应之“密钥”才可以将该加密信息解出来。所以公开密钥密码系统可以达到让网络上无法面对面相见的双方不需要事先通过安全秘密管道交换密钥即可进行秘密通信。nI............J加密前的明文厂............J加密后的密文解密后的明文图非对称密钥加密解密过程目前著名的公开密钥密码系统与数字签名算法有Diffie.Hellman密钥交换系统、RSA加密及签名系统、DSA签名系统、EIGamal加密及签名系统、Sclmorr签名系统等【l】。武汉理工大学硕士论文.网络信息安全相关技术..消息摘要计算机安全通信过程中常使用消息摘要和消息验证码来保证传输的数据未曾被第三方修改。消息摘要是对原始数据使用散列函数进行计算得到的结果它主要检测原始数据是否被修改过。消息摘要与加密不同加密是对原始数据进行变换可以从变换后的数据中获得原始数据而消息摘要是从原始数据中获得一部分信息它比原始数据少得多因此消息摘要可以看作是原始数据的指纹l翊。如果消息是M并且使用了一个(MD)那么就会产生摘要(D)于是就有了MDl(M)l=D.当后面需要再次确认消息时消息被散列成为一个新摘要。如果消息中任何数据被修改了必须产生一个不同的摘要即MD(M)D.比较两个摘要如果不同D被认为是无效的或被修改过。当今大多数算法都是基于RonRive,st的MD的。一些算法如RIPEMD在散列计算中变得更复杂执行时间很长。RonRivest之后设计的MD算法比RIPEMD.快很多因为算法没有RIPEMD.复杂。在MD与RIPEMD.之间是SHA这种算法比RIPEMD.快比MD慢。因此消息摘要算法有很多选择。SunJDK.支持的算法是MD和SHA。..数字签名国际标准组织SO)是这样定义数字签名的:附加在数据单元上的一些数据或是对数据单元所做的密码变换这种数据变换允许数据单元的接收者用以确认数据单元来源和数据单元的完整性并保护数据防止被人伪造l。数字签名用来保证信息传输过程中信息的完整性和提供信息发送者的身份的准认证。在电子商务中安全、.方便地实现在线支付而数据传输的安全性、完整性身份验证机制以及交易的不可抵赖措施等大多通过安全性认证手段加以解决数字签名可以进一步方便企业和消费者在网上进行电子商务。数字签名是一种重要的消息摘要它是用自己的私钥进行处理的。加入数字签名和验证的文件传输过程如图.所示。武汉理工大学硕士论文图数字签名过程.发送方对明文进行一次Hash运算变换得到消息摘要值。.利用私有密钥对消息摘要进行加密后得到原始消息的数字签名值然后随着原始消息一起传送以此来证明该数据是由签名者签署的发出。.接收方用发送方的公开密钥对数字签名进行解密变换得到一个数字签名的明文。发送方的公钥是由一个可信赖的技术管理机构即验证机构发布的。.接收方将得到的明文通过单向函数进行计算同样得到一个数字签名。.将两个数字签名进行对比如果相同就可以证明传送过来的原始消息是用签名者的私钥签名的数据签名后没有被篡改过。验证数字签名同时也确定了签名者的身份因为只有私钥的持有者才能对数据进行签名否则无效。数字签名所使用的算法包括Hash函数运算算法、签名算法、验证算法。、Hash函数又称散列算法。Hash函数是一种单向的函数即只能从输入产生输出而不能从输出推断出输入瞄。最常见的Hash函数有Hash.(安全Hash算法)、MD。签名算法和验证算法使用的就是非对称加密算法一般为RSA和DSA。武汉理工大学硕士论文..安全认证认证(Authentication)是指核实真实身份的过程是防止主动攻击的重要技术。它对于保证开放环境中各种信息系统的安全性有重要作用。安全认证技术是信息安全中使用的主要技术用于辨别信息的真伪以及保证信息的保密性和完整性。本文此处只涉及安全认证技术中的口令认证、单向认证和双向认证。.口令认证安全认证中最常用也是最简单的方法是口令认证。系统为每一个合法用户建立一个用户名/口令当用户登录系统或使用某项功能时提示用户输入自己的用户名和口令系统通过核对用户输入的用户名、口令与系统内己有的合法用户的用户名/D令是否匹配如与某一项用户名/D令匹配则该用户的身份得到了认证【韧。.单向认证单向认证指通信的双方只需要一方被另一方认证。口令认证实际也是一种单向认证只是这种简单的单向认证还没有与密钥分发相结合。与密钥分发相结合的单向认证主要有两类方案:第一类采用对称密钥加密体制需要一个可信赖的第三方.通常称为密钥分发中心(KDC)或认证服务器(AS)由这个第三方来实现通信双方的身份验证和密钥分发另一类采用非公开密钥密码体制无需第三方参与。.双向认证双向认证是通信的双方需要互相认证各自的身份。通信双方首先鉴别对方的身份然后交换会话密钥。双向认证可以用对称密钥加密方法和公开密钥加密方法来实现。这些策略的实现要建立可信的密钥分发中心(KDc)由KDC负责为通信双方产生短期通信所需的会话密钥并使用主密钥来保护这些密钥的分发。..数字证书数字证书是认证中心CA(CertificateAuthority)颁发并进行数字签名的数字凭证它们是数字签名技术的最重要应用领域。数字证书是网络用户的身份证明相当于现实生活中的个人身份证。数字证武汉理工大学硕士论文书提供了一种系统化、可扩展的、统一的、容易控制的公钥分发方法是一个防篡改的数据集合可以证实一个公开密钥和某一最终用户之间的捆绑。为了提供这种捆绑关系需要一组可信第三方实体来保护用户的身份。这个第三方实体就是认证中心CACA向用户颁发含有用户名、公开密钥以及其他身份信息的数字证书。目前最广泛采用的数字证书的标准格式是国际电信联盟(rrU)提出的X.版本的格式如表所示闭。表X.的证书结构内容说明版本Vx.:版本号序号证书的序列号:用于标志证书算法识别符AI产生证书算法的标志符参数算法规定的参数发文者是建立和签署文件CA的m超始时间证书的有效期终止时间.A持证书人名字算法签字用的公钥算法参数算法的参数持证书人公钥证实签字用的公钥数字签字证书所有数据经H运行后CA以私密钥签字认证中心(cA)是数字证书的签发机构它是公钥基础设施PKI(PublicKeyInfrastructure)的核心也是网络安全解决方案的关键是PKI应用中权威的、可信任的、公正的第三方机构。CA的核心功能就是发放和管理数字证书一个典型的CA系统如图。武汉理工大学硕士论文图CA系统结构其中安全服务器面向普通用户用于提供证书申请、浏览、证书撤销列表以及证书下载等安全服务。CA服务器负责证书的颁发。LDAP服务器提供目录浏览服务负责将RA服务器传输过来的用户信息及数字证书加入到服务器上。数据库服务器用于CA数据、日志和统计信息的存储和管理。..安全套接字层协议(SSL)安全套接字层协议(SSLSecureSocketLayer)是美国lqetscape公司于年推出的一种著名的安全协议保证任何安装了安全套接字的客户和服务器间事务安全的协议涉及所有TCP/IP应用程序。SSL协议包括SSL记录层协议和SSL会话层协议】。SSL协议主要是使用公开密钥体制和X.数字证书技术保护信息传输的机密性和完整性。SSL协议工作在传输层之上为应用程序提供验证和加密机制是一个建立在TCP/IP协议之上提供客户和服务器双方网络应用安全通讯的开放式协议如图.ShnTH册NmSSL.TCPIP图SSL协议在网络层次中的位置武汉理工大学硕士论文SSL传输数据过程包括加密(如图.)和解密(如图.)。来自上层的数据分层的数据每个分组被压缩的数据密文图加密过程I剧..压缩数据厂蕊一一MAC经过解密的消息解压缩后的分组图解密过程原始数据.客户端向Server端发送客户端SSL版本号、加密算法设置、随机产生的数据和其他服务器需要用于跟客户端通讯的数据。.服务器向客户端发送服务器的SSL版本号、加密算法设置、随机产生的数据和其他客户端需要用于跟服务器通讯的数据。另外服务器还要发送自己的证书如果客户端正在请求需要认证的信息那么服务器同时也要请求获得客户端的证书。.客户端用服务器发送的信息验证服务器身份。如果认证不成功用户就将得到一个警告然后加密数据连接将无法建立。如果成功则继续下一步。.创建连接所用的预制秘钥并用服务器的公钥加密(在第二步中传送的服务器证书中得到)传送给服务器。武汉理工大学硕士论文.如果服务器也请求客户端验证那么客户端将对用于建立加密连接使用的数据进行签名。把这次产生的加密数据和自己的证书同时传送给服务器用来产生预制秘钥。.服务器将试图验证客户端身份如果客户端不能获得认证连接将被中止。如果被成功认证服务器用自己的私钥加密预制秘钥然后执行一系列步骤产生主密钥。。服务器和客户端同时产生SessionKey之后的所有数据传输都用对称密钥算法来交流数据。.客户端向服务器发送信息说明以后的所有信息都将用SessionKey加密。至此它会传送一个单独的信息标示客户端的握手部分已经宣告结束。.服务器也向客户端发送信息说明以后的所有信息都将用SessionKey加密。至此它会传送一个单独的信息标示服务器端的握手部分己经宣告结束。.SSL握手过程就成功结束一个SSL数据传送过程建立。客户端和服务器开始用SessionKey加密、解密双方交互的所有数据。武汉理工大学硕士论文第章JAVA安全以及JEE安全机制.JAVA安全体系基于Java跨平台的特性Java从问世以来得到了人们的广泛认可并被深入应用到各种开发领域中。作为基础的开发平台Java平台提供的加密组件接口与安全服务解决方案开发复杂的企业级分布式应用程序功能十分惊人JEE规范及其相应的安全机制进一步扩展了安全方面的功能因此Java成为了开发Web应用与企业解决方案的首选语言。但因为Java设计成在网络环境下运行所以最近对Java语言安全性有了更多的考虑习.最初的Java平台(JDK.采用沙箱安全模型(SandboxModel)这种模型的基本思想是:本地的代码是被完全信任的它可以访问所有重要的系统资源而从远程机器下载的代码(如Applct)如果被正确署名则当作本地代码来看待否则是不被信任的只能访问沙盒中提供的资源。沙盒安全模型如图所示。平rF一’、私专J虚如囟可用的资源图JDⅪ.沙盒安全模型由于沙箱安全模型有自身的局限性如安全策略和实施分离的不彻底性、安全核查的不易扩展性、对本地安装的Applet过于信任以及内部安全机制的脆弱性等于是引入了一些新的机制加强Java平台的安全性。这时本地与远程代码都可以根据可配置策略只限于使用特定资源域。访问域和可配置安全策略使Java平台更加灵活开发人员不用再区分本地代码和远程代码就可以得到解决安全问题的最佳方案。图.是Java的安全模型。武汉理工大学硕士论文曲由臼虚拟机可用的资源图JAVA安全模型新的安全模型中主要部件包括安全策略、访问许可权、保护域、访问控制核查、优先级操作和Java类的加载和实施方案。..JAVA的许可在Java中所谓的授权或者许可即是指访问受保护资源的权力。Java.securlty包提供了抽象的Permission类来代表访问资源的权力。可以通过由Permission类派生子类来代表具体的访问权限如图.所示。武汉理工大学硕士论文许可有某个目标或者某个可选择的操作列表。目标(Target)代表了受保护的系统资源操作(Action)代表了在资源上进行的访问类型。例如在java.io.FilePermission“CAAUTOEXEC.BAr’“read,writeexecute”中目标对象是“C:ⅥlrrEXEC.BAT'’操作是读、写和执行。有些许可只有唯一目标。例如java.ang.RuntimePermission的目标是“exitVM”该目标是保护JVM不受那些企图关闭JVM的代码的影响但没有与这个资源类型相关的操作列表。最后某些许可可能没有目标。例如在java.security.AllPermission来说它授予代码完全访问所有系统资源的权限。为了比较许可权限implies()是每个子类必须实现的重要的方法。该方法返回一个布尔值。例如“aimpliesb”授予一个应用程序a自动授予许可b。授予某些代码AllPermission意味着授予它所有其他的Permission。..JAVA安全策略Java运行时的安全由安全策略规定。一个安全策略由代码特征(Code.Source)和许可权限(Permission)两部分构成。代码特征是指代码来源、代码签名许可权限代表了对资源的访问权限一般包括资源名称和允许的操作权限。Java运行环境内的安全机制可以引用策略策略内容必须在Policy对象内表达而Policy对象是Java.security.Policy类的子类的实例化。由于任何人都可以实例化这样的一个对象因此Policy对象的许多实例可以同时存在。然而任何时刻都只有一个Policy对象起作用】。Policy类是一个抽象类所以Poficy对象是从Policy子类而非Policy类实例化来的。而安全策略由Policy子类来表示这个子类提供这个Policy类中抽象方法的一个实现。下面为Policy的四个重要方法:publicstaticPolicygetPolicyOpublicstaticvoidsetPolicy(Policypolicy)publicabstractPermissionsgetPermissions(CodeSourcecodesource)publicabstractvoidrefresh通过调用getPolicy方法可以得到当前安装的Policy对象。这个对象保存着策略的运行代表这个对象或者在Java启动时实例化或者当安全策略首次使用时实例化。这个对象随后可以通过调用setPolicy方法来改变。refresh方法使武汉理工大学硕士论文得Policy对象更新或重装当前配置。..保护域(ProteetionDomain)Java安全模型的核心概念之一就是保护域(ProtectionDomain)。这里的域是指操作环境中要保护的部分是用来对组件分组或对被保护资源分组的一个抽象概念。域将具有同样权限的类归在一个组里。需要注意的是在Java里对保护域并没有实质性的描述保护域实际上是将各种技术、API和基本的Java体系结构组合在一起来保护应用程序的一组集合。为使扩展变得容易JDKI.允许把许可权赋予保护域类和对象属于保护域但不是从被赋予的许可权中继承来的。域受一系列对象的限制这些对象可通过计算机系统中已被准许的主要实体直接获得因为从某方面来说在JDKl.中Java沙盒是一个带有固定边界的保护域在JDK.中每一个类隶属于一个域。Java维持类和对象到保护域及到它们许可权之前的映射关系。在类被使用之前从类到它的域的映射仅设置一次且在Class对象执行的整个时间范围内不变【】。.JEE基本概念Java平台企业版(JavaPlatformEnterpriseEditionJEE)是一种利用Java平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构。JEE不仅巩固了标准版中的许多优点例如“编写一次、随处运行”的特性、方便存取数据库的JDBCAPI、CORBA技术以及能够在Internet应用中保护数据的安全模式等等同时还提供了对EIB(EnterpriseJavaBeans)、JavaServletAPI、JSP(JavaServerPages)以及XML技术的全面支持。JEE技术大致分为:组件技术、服务技术、通信技术三大类】。目前成熟的JEE技术有:表示逻辑的Servlet和JSP用来数据库访问的JDBC用来事务管理的JTA用来对象名字的中央注册的JNDI用来RMI对象的分布式执行的RMI实现业务逻辑的EJB协调分布式执行的JMS。JEE能提供多层分布式应用模型重复利用组件提供统一安全模式并灵活地控制事务处理。多层分布式应用模型意味着应用逻辑将根据功能分成几个部分用户可以在相同或不同的服务器上安装由不同应用组件构成的JEE武汉理工大学硕士论文应用。JEE的三层结构包括:客户端层、应用服务器层和企业信息系统层Is)。.JEE的安全体系基于JEE的应用系统的安全性与早期的客户机/服务器模式系统的安全性有着很大的不同。早期的企业应用系统是一个信息相对封闭的信息系统用户的使用和系统的运行都是在企业网络的内部网络安全考虑的相对较少从而系统本身具有很好的封闭性。正是由于企业应用环境的变化使得为基于JEE的企业应用提供安全防护的安全策略必须能够适应新环境的安全需求pq。Java安全体系结构主要包括五个部分:Java安全体系结构核心Java加密体系结构(JCA)Java加密扩展CE)Java安全套接字扩展(JSSE)Java认证和授权服务(JAm)。Java安全体系结构核心包括字节码验证器类装入器安全管理器访问控制器权限策略和保护域。JCA提供了用Java平台进行基本加密功能的工具。Java加密扩展提供了标准服务提供者和应用程序接口模型。JSSE是专门针对SSL协议开发的安全扩展模块它提供对应不同SSL实现的标准接口。而JAAS则提供验证用户和对用户实现访问控制的接口【期。.JAVA认证和授权服务(JAAS)Java认证和授权服务(JavaAuthenticationandAuthorizationServiceJAm)是SUN公司为了进一步增强Java安全框架的功能而提供的编程接口它是JDKl.的标准扩充并成为JDKl.的一个组成部分。Java安全框架提供的是基于代码源的存取控制方式即基于代码从哪里来谁签署了代码。而JAAS还提供了基于代码运行者的存取控制能力.因此JAAS是Java安全编程的一个重要补充。随着Intemet的安全问题日益受到重视JAAS编程接口和安全服务作为JEEl.标准的一部分必将会在Java应用编程中得到更广泛的应用。事实上很多的JEE应用服务器如WeblogicServer都已采用JAAS作为安全编程的基础ⅢJ。JAAS主要由认证和授权两部分构成。不管Java代码是作为Application,Applet。Bean还是Servlet运行JAAS认证部分都能提供安全可靠的方法决定谁可以执行哪些Java代码。JAAS授权部分是对以前Java安全框架的补充它武汉理工大学硕士论文可以限制某些Java代码执行敏感任务。这种限制除了取决于和Java安全框架相似的代码源外还取决于被认证者。JAAS认证通过插件的形式工作这可以使Java应用程序独立于底层的认证技术应用程序可以使用新的或经过修改的认证技术而不需要修改应用程序本身。应用程序通过实例化一个登录上下文对象来开始认证过程这个对象根据配置决定采用哪个登录模块而登录模块决定了认证技术和登录方式比较典型的登录方式可能是提示输入用户名和口令还有的可能是读入并核实声音或指纹样本。代码执行者被认证后JAAS的授权部分就和Java存取控制模型一起保护对敏感资源的访问.在Java中存取控制仅仅基于代码的位置和代码签署者(代码源)而JAAS的存取控制既基

职业精品

精彩专题

上传我的资料

热门资料

资料评价:

/ 73
所需积分:0 立即下载

意见
反馈

返回
顶部

Q