网络安全 计算机网络安全论文 1 绪论 随着互联网的飞速发展,网络安全逐渐成为一个潜在的巨大问题。网络安全性是一个涉及面很广泛的问题,其中也会涉及到是否构成犯罪行为的问题。在其最简单的形式中,它主要关心的是确保无关人员不能读取,更不能修改传送给其他接收者的信息。此时,它关心的对象是那些无权使用,但却试图获得远程服务的人。安全性也处理合法消息被截获和重播的问题,以及发送者是否曾发送过该条消息的问题。 大多数安全性问题的出现都是由于有恶意的人试图获得某种好处或损害某些人而故意引起的。可以看出保证网络安全不仅仅是使它没有编程错误。它包括要防范那些聪明的,通常也是狡猾的、专业的,并且在时间和金钱上是很充足、富有的人。同时,必须清楚地认识到,能够制止偶然实施破坏行为的敌人的方法对那些惯于作案的老手来说,收效甚微。 网络安全性可以被粗略地分为4个相互交织的部分:保密、鉴别、反拒认以及完整性控制。保密是保护信息不被未授权者访问,这是人们提到的网络安全性时最常想到的内容。鉴别主要指在揭示敏感信息或进行事务处理之前先确认对方的身份。反拒认主要与签名有关。保密和完整性通过使用注册过的邮件和文件锁来 2 方案目标 本方案主要从网络层次考虑,将网络系统设计成一个支持各级别用户或用户群的安全网络,该网在保证系统内部网络安全的同时,还实现与Internet或国内其它网络的安全互连。本方案在保证网络安全可以满足各种用户的需求,比如:可以满足个人的通话保密性,也可以满足企业客户的计算机系统的安全保障,数据库不被非法访问和破坏,系统不被病毒侵犯,同时也可以防止诸如反动淫秽等有害信息在网上传播等。 需要明确的是,安全技术并不能杜绝所有的对网络的侵扰和破坏,它的作用仅在于最大限度地防范,以及在受到侵扰的破坏后将损失尽旦降低。具体地说,网络安全技术主要作用有以下几点: 1.采用多层防卫手段,将受到侵扰和破坏的概率降到最低; 2.提供迅速检测非法使用和非法初始进入点的手段,核查跟踪侵入者的活动; 3.提供恢复被破坏的数据和系统的手段,尽量降低损失; 4.提供查获侵入者的手段。 网络安全技术是实现安全管理的基础,近年来,网络安全技术得到了迅猛发展,已经产生了十分丰富的理论和实际内容。 3 安全需求 通过对网络系统的风险分析及需要解决的安全问题,我们需要制定合理的安全策略及安全方案来确保网络系统的机密性、完整性、可用性、可控性与可审查性。即, 可用性: 授权实体有权访问数据 机密性: 信息不暴露给未授权实体或进程 完整性: 保证数据不被未授权修改 可控性: 控制授权范围内的信息流向及操作方式 可审查性:对出现的安全问题提供依据与手段 访问控制:需要由防火墙将内部网络与外部不可信任的网络隔离,对与外部网络交换数据的内部网络及其主机、所交换的数据进行严格的访问控制。同样,对内部网络,由于不同的应用业务以及不同的安全级别,也需要使用防火墙将不同的LAN或网段进行隔离,并实现相互的访问控制。 数据加密:数据加密是在数据传输、存储过程中防止非法窃取、篡改信息的有效手段。 安全审计: 是识别与防止网络攻击行为、追查网络泄密行为的重要措施之一。具体包括两方面的内容,一是采用网络监控与入侵防范系统,识别网络各种违规操作与攻击行为,即时响应(如报警)并进行阻断;二是对信息内容的审计,可以防止内部机密或敏感信息的非法泄漏 4 风险分析 网络安全是网络正常运行的前提。网络安全不单是单点的安全,而是整个信息网的安全,需要从物理、网络、系统、应用和管理方面进行立体的防护。要知道如何防护,首先需要了解安全风险来自于何处。网络安全系统必须包括技术和管理两方面,涵盖物理层、系统层、网络层、应用层和管理层各个层面上的诸多风险类。无论哪个层面上的安全措施不到位,都会存在很大的安全隐患,都有可能造成网络的中断。根据国内网络系统的网络结构和应用情况,应当从网络安全、系统安全、应用安全及管理安全等方面进行全面地分析。 风险分析是网络安全技术需要提供的一个重要功能。它要连续不断地对网络中的消息和事件进行检测,对系统受到侵扰和破坏的风险进行分析。风险分析必须包括网络中所有有关的成分。 5 解决方案 设计原则 针对网络系统实际情况,解决网络的安全保密问题是当务之急,考虑技术难度及经费等因素,设计时应遵循如下思想: 1.大幅度地提高系统的安全性和保密性; 2.保持网络原有的性能特点,即对网络的协议和传输具有很好的透明性; 3.易于操作、维护,并便于自动化管理,而不增加或少增加附加操作; 4.尽量不影响原网络拓扑结构,同时便于系统及系统功能的扩展; 5.安全保密系统具有较好的性能价格比,一次性投资,可以长期使用; 6.安全与密码产品具有合法性,及经过国家有关管理部门的认可或认证; 7.分步实施原则:分级管理 分步实施。 安全策略 针对上述分析,我们采取以下安全策略: 1.采用漏洞扫描技术,对重要网络设备进行风险评估,保证信息系统尽量在最优的状况下运行。 2.采用各种安全技术,构筑防御系统,主要有: (1) 防火墙技术:在网络的对外接口,采用防火墙技术,在网络层进行访问控制。 (2) NAT技术:隐藏内部网络信息。 (3) VPN:虚拟专用网(VPN)是企业网在因特网等公共网络上的延伸,通过一个私有的通道在公共网络上创建一个安全的私有连接。它通过安全的数据通道将远程用户、公司分支机构、公司业务伙伴等与公司的企业网连接起来,构成一个扩展的公司企业网。在该网中的主机将不会觉察到公共网络的存在,仿佛所有的机器都处于一个网络之中。公共网络似乎只由本网络在独占使用,而事实上并非如此。 (4)网络加密技术(Ipsec) :采用网络加密技术,对公网中传输的IP包进行加密和封装,实现数据传输的保密性、完整性。它可解决网络在公网的数据传输安全性问题,也可解决远程用户访问内网的安全问题。 (5) 认证:提供基于身份的认证,并在各种认证机制中可选择使用。 (6) 多层次多级别的企业级的防病毒系统:采用多层次多级别的企业级的防病毒系统,对病毒实现全面的防护。 (7)网络的实时监测:采用入侵检测系统,对主机和网络进行监测和预警,进一步提高网络防御外来攻击的能力。 3.实时响应与恢复:制定和完善安全管理制度,提高对网络攻击等实时响应与恢复能力。 4.建立分层管理和各级安全管理中心。 防御系统 我们采用防火墙技术、NAT技术、VPN技术、网络加密技术(Ipsec)、身份认证技术、多层次多级别的防病毒系统、入侵检测技术,构成网络安全的防御系统。 物理安全 物理安全是保护计算机网络设备、设施以及其它媒体免遭地震、水灾、火灾等环境事故以及人为操作失误或错误及各种计算机犯罪行为导致的破坏过程。 为保证信息网络系统的物理安全,还要防止系统信息在空间的扩散。通常是在物理上采取一定的防护措施,来减少或干扰扩散出去的空间信号。这是政府、军队、金融机构在兴建信息中心时首要的设置的条件。 为保证网络的正常运行,在物理安全方面应采取如下措施: 1.产品保障方面:主要指产品采购、运输、安装等方面的安全措施。 2.运行安全方面:网络中的设备,特别是安全类产品在使用过程中,必须能够从生成厂家或供货单位得到迅速的技术支持服务。对一些关键设备和系统,应设置备份系统。 3.防电磁辐射方面:所有重要涉密的设备都需安装防电磁辐射产品,如辐射干扰机。 4.保安方面:主要是防盗、防火等,还包括网络系统所有网络设备、计算机、安全设备的安全防护。 防火墙技术 防火墙是一种网络安全保障手段,是网络通信时执行的一种访问控制尺度,其主要目标就是通过控制入、出一个网络的权限,并迫使所有的连接都经过这样的检查,防止一个需要保护的网络遭外界因素的干扰和破坏。在逻辑上,防火墙是一个分离器,一个限制器,也是一个分析器,有效地监视了内部网络和Internet之间地任何活动,保证了内部网络地安全;在物理实现上,防火墙是位于网络特殊位置地以组硬件设备――路由器、计算机或其他特制地硬件设备。防火墙可以是独立地系统,也可以在一个进行网络互连地路由器上实现防火墙。用防火墙来实现网络安全必须考虑防火墙的网络拓扑结构: (1)屏蔽路由器:又称包过滤防火墙。 (2)双穴主机:双穴主机是包过滤网关的一种替代。 (3)主机过滤结构:这种结构实际上是包过滤和代理的结合。 (4)屏蔽子网结构:这种防火墙是双穴主机和被屏蔽主机的变形。 根据防火墙所采用的技术不同,我们可以将它分为四种基本类型:包过滤型、网络地址转换—NAT、代理型和监测型。 包过滤型 包过滤型产品是防火墙的初级产品,其技术依据是网络中的分包传输技术。网络上的数据都是以“包”为单位进行传输的,数据被分割成为一定大小的数据包,每一个数据包中都会包含一些特定信息,如数据的源地址、目标地址、TCP/UDP源端口和目标端口等。防火墙通过读取数据包中的地址信息来判断这些“包”是否来自可信任的安全站点 ,一旦发现来自危险站点的数据包,防火墙便会将这些数据拒之门外。系统管理员也可以根据实际情况灵活制订判断规则。 包过滤技术的优点是简单实用,实现成本较低,在应用环境比较简单的情况下,能够以较小的代价在一定程度上保证系统的安全。 但包过滤技术的缺陷也是明显的。包过滤技术是一种完全基于网络层的安全技术,只能根据数据包的来源、目标和端口等网络信息进行判断,无法识别基于应用层的恶意侵入,如恶意的Java小程序以及电子邮件中附带的病毒。有经验的黑客很容易伪造IP地址,过包过滤型防火墙。 网络地址转化—NAT 网络地址转换是一种用于把IP地址转换成临时的、外部的、注册的IP地址标准。它允许具有私有IP地址的内部网络访问因特网。它还意味着用户不许要为其网络中每一台机器取得注册的IP地址。在内部网络通过安全网卡访问外部网络时,将产生一个映射记录。系统将外出的源地址和源端口映射为一个伪装的地址和端口,让这个伪装的地址和端口通过非安全网卡与外部网络连接,这样对外就隐藏了真实的内部网络地址。在外部网络通过非安全网卡访问内部网络时,它并不知道内部网络的连接情况,而只是通过一个开放的IP地址和端口来请求访问。OLM防火墙根据预先定义好的映射规则来判断这个访问是否安全。当符合规则时,防火墙认为访问是安全的,可以接受访问请求,也可以将连接请求映射到不同的内部计算机中。当不符合规则时,防火墙认为该访问是不安全的,不能被接受,防火墙将屏蔽外部的连接请求。网络地址转换的过程对于用户来说是透明的,不需要用户进行设置,用户只要进行常规操作即可。 代理型 代理型防火墙也可以被称为代理服务器,它的安全性要高于包过滤型产品,并已经开始向应用层发展。代理服务器位于客户机与服务器之间,完全阻挡了二者间的数据交流。从客户机来看,代理服务器相当于一台真正的服务器;而从服务器来看,代理服务器又是一台真正的客户机。当客户机需要使用服务器上的数据时,首先将数据请求发给代理服务器,代理服务器再根据这一请求向服务器索取数据,然后再由代理服务器将数据传输给客户机。由于外部系统与内部服务器之间没有直接的数据通道,外部的恶意侵害也就很难伤害到企业内部网络系统。 代理型防火墙的优点是安全性较高,可以针对应用层进行侦测和扫描,对付基于应用层的侵入和病毒都十分有效。其缺点是对系统的整体性能有较大的影响,而且代理服务器必须针对客户机可能产生的所有应用类型逐一进行设置,大大增加了系统管理的复杂性。 监测型 监测型防火墙是新一代的产品,这一技术实际已经超越了最初的防火墙定义。监测型防火墙能够对各层的数据进行主动的、实时的监测,在对这些数据加以分析的基础上,监测型防火墙能够有效地判断出各层中的非法侵入。同时,这种检测型防火墙产品一般还带有分布式探测器,这些探测器安置在各种应用服务器和其他网络的节点之中,不仅能够检测来自网络外部的攻击,同时对来自内部的恶意破坏也有极强的防范作用。据权威机构统计,在针对网络系统的攻击中,有相当比例的攻击来自网络内部。因此,监测型防火墙不仅超越了传统防火墙的定义,而且在安全性上也超越了前两代产品,虽然监测型防火墙安全性上已超越了包过滤型和代理服务器型防火墙,但由于监测型防火墙技术的实现成本较高,也不易管理,所以目前在实用中的防火墙产品仍然以第二代代理型产品为主,但在某些方面也已经开始使用监测型防火墙。基于对系统成本与安全技术成本的综合考虑,用户可以选择性地使用某些监测型技术。这样既能够保证网络系统的安全性需求,同时也能有效地控制安全系统的总拥有成本。 实际上,作为当前防火墙产品的主流趋势,大多数代理服务器(也称应用网关)也集成了包过滤技术,这两种技术的混合应用显然比单独使用具有更大的优势。由于这种产品是基于应用的,应用网关能提供对协议的过滤。例如,它可以过滤掉FTP连接中的PUT命令,而且通过代理应用,应用网关能够有效地避免内部网络的信息外泄。正是由于应用网关的这些特点,使得应用过程中的矛盾主要集中在对多种网络应用协议的有效支持和对网络整体性能的影响上。 相关性:毕业论文,免费毕业论文,大学毕业论文,毕业论文模板 入侵检测 入侵检测是防火墙的合理补充,帮助系统对付网络攻击,扩展了系统管理员的安全管理能力(包括安全审计、监视、进攻识别和响应),提高了信息安全基础结构的完整性。它从计算机网络系统中的若干关键点收集信息,并分析这些信息,看看网络中是否有违反安全策略的行为和遭到袭击的迹象。入侵检测被认为 是防火墙之后的第二道安全闸门,在不影响网络性能的情况下能对网络进行监测,从而提供对内部攻击、外部攻击和误操作的实时保护。这些都通过它执行以下任务来实现: 1.监视、分析用户及系统活动; 2.系统构造和弱点的审计; 3.识别反映已知进攻的活动模式并向相关人士报警; 4.异常行为模式的统计分析; 5.评估重要系统和数据文件的完整性; 6. 操作系统的审计跟踪管理,并识别用户违反安全策略的行为。 安全服务 网络是个动态的系统,它的变化包括网络设备的调整,网络配置的变化,各种操作系统、应用程序的变化,管理人员的变化。即使最初制定的安全策略十分可靠,但是随着网络结构和应用的不断变化,安全策略可能失效,必须及时进行相应的调整。针对以上问题和网管人员的不足,下面介绍一系列比较重要的网络服务。包括: 1.通信伙伴认证 通信伙伴认证服务的作用是通信伙伴之间相互确庥身份,防止他人插入通信过程。认证一般在通信之前进行。但在必要的时候也可以在通信过程中随时进行。认证有两种形式,一种是检查一方标识的单方认证,一种是通信双方相互检查对方标识的相互认证。 通信伙伴认证服务可以通过加密机制,数字签名机制以及认证机制实现。 2.访问控制 访问控制服务的作用是保证只有被授权的用户才能访问网络和利用资源。访问控制的基本原理是检查用户标识,口令,根据授予的权限限制其对资源的利用范围和程度。例如是否有权利用主机CPU运行程序,是否有权对数据库进行查询和修改等等。 访问控制服务通过访问控制机制实现。 3.数据保密 数据保密服务的作用是防止数据被无权者阅读。数据保密既包括存储中的数据,也包括传输中的数据。保密查以对特定文件,通信链路,甚至文件中指定的字段进行。 数据保密服务可以通过加密机制和路由控制机制实现。 4.业务流分析保护 业务流分析保护服务的作用是防止通过分析业务流,来获取业务量特征,信息长度以及信息源和目的地等信息。 业务流分析保护服务可以通过加密机制,伪装业务流机制,路由控制机制实现。 5.数据完整性保护 数据完整性保护服务的作用是保护存储和传输中的数据不被删除,更改,插入和重复,必要时该服务也可以包含一定的恢复功能。 数据完整性保护服务可以通过加密机制,数字签名机制以及数据完整性机制实现 6.签字 签字服务是用发送签字的办法来对信息的接收进行确认,以证明和承认信息是由签字者发出或接收的。这个服务的作用在于避免通信双方对信息的来源发生争议。 签字服务通过数字签名机制及公证机制实现。 安全技术的研究现状和动向 我国信息网络安全研究历经了通信保密、数据保护两个阶段,正在进入网络信息安全研究阶段,现已开发研制出防火墙、安全路由器、安全网关、黑客入侵检测、系统脆弱性扫描软件等。但因信息网络安全领域是一个综合、交叉的学科领域它综合了利用数学、物理、生化信息技术和计算机技术的诸多学科的长期积累和最新发展成果,提出系统的、完整的和协同的解决信息网络安全的方案,目前应从安全体系结构、安全协议、现代密码理论、信息分析和监控以及信息安全系统五个方面开展研究,各部分相互协同形成有机整体。国际上信息安全研究起步较早,力度大,积累多,应用广,在70年代美国的网络安全技术基础理论研究成果“计算机保密模型”(Beu& La padula模型)的基础上,指定了“ 可信计算机系统安全评估准则”(TCSEC),其后又制定了关于网络系统数据库方面和系列安全解释,形成了安全信息系统体系结构的准则。 结论 随着互联网的飞速发展,网络安全逐渐成为一个潜在的巨大问题。网络安全性是一个涉及面很广泛的问题,其中也会涉及到是否构成犯罪行为的问题。在其最简单的形式中,它主要关心的是确保无关人员不能读取,更不能修改传送给其他接收者的信息。此时,它关心的对象是那些无权使用,但却试图获得远程服务的人。安全性也处理合法消息被截获和重播的问题,以及发送者是否曾发送过该条消息的问题。 本论文从多方面描述了网络安全的解决方案,目的在于为用户提供信息的保密,认证和完整性保护机制,使网络中的服务,数据以及系统免受侵扰和破坏。比如防火墙,认证,加密技术等都是当今常用的方法,本论文从这些方法入手深入研究各个方面的网络安全问题的解决,可以使读者有对网络安全技术的更深刻的了解。 本文章共7330字
软件设计中安全性与易用性的考虑 计算 机安全界曾经有个笑话:“实现计算机系统安全很容易,把计算机的电源关掉,锁在保险箱里,然后把钥匙扔掉。”实际上,这个笑话一定程度上揭示了计算机的安全性与易用性之间的关系。 一、易用性和安全性之间的关系 在计算机的安全性和易用性设计之间存在权衡,一台不设口令的计算机非常方便使用,但是不安全;但是如果一台计算机每5分钟要求你做一次身份确认,输入口令甚至做血样检验,这样的计算机是安全的,但是不会有人愿意使用。一般说来,安全软件产品的操作要比其他软件产品的操作困难,因为实现机制复杂了,需要配置的参数也多了。 安全性和易用性在设计上有共同点 : (1)都需要从软件的整体考虑; (2)需要对系统结构、开发团队和市场份额等方面统筹考虑; (3)都要在系统设计的开始阶段考虑,在系统开发临近结束时无法临时增加;但是由于易用性和安全性是不同的技术,所以建立一个既有安全性又有易用性的系统比较昂贵。 (4)易用性方面出现 问题 可能会妨碍安全性的效果。 目前 安全性和易用性之间的接口成为计算机安全界 研究 的对象,被称作人机交互和安全性(HCI-SEC)。在2003年ACM人机交互大会召开了HCI-SEC研讨会,随后HCI-SEC的有关问题逐步提了出来。2004年计算机界把易用安全性列为信息安全研究者的“重大挑战”,有下面两个问题: 问题1 口令问题。每个人都面临口令问题,安全的口令都是难猜测的,但是难猜测的口令都是难记忆的。同时口令策略一般要求用户口令是唯一的并且要及时更新,如果一个人的帐户比较多,很难想象一个人可以完全凭借记忆牢记十多个不同的口令,并且不断地分别更新。 问题2 身份确认问题。当认识到传统的口令字不够安全后,用户需要新的身份确认手段。研究表明,人记忆图像的能力比字符强,因此图像口令字被作为字符口令字的替代方案,研究还发现,用户对图像口令字的选择与种族和性别高度关联。生物测量和硬件令牌也属于用户身份确认的 方法 ,但是现在还缺乏对这些身份确认手段的统一评价和比较方法。 二、易用安全性的实现途径 HCI-SEC的研究课题之一就是如何在某些特定的 应用 系统中实现易用的安全性,主要有三种类型的方法: (1)构造不需要用户干预就可以执行相关的安全和私有功能的系统。这种方法的问题是当用户不了解某些方面的安全问题时,他们的操作可能会无意中减弱到位的安全保护。 (2)开发一种安全和私有相关的隐喻模型,让用户自发地正确使用安全和私有软件。目前的钥匙和锁的隐喻模型显然是不完全和不准确的,但是目前也没有出现更具有广泛接受性的其他隐喻模型。 (3)教给用户有效使用私有和安全工具所需要的知识。但是以什么形式把这些信息教给用户,让用户少花时间去 学习 掌握,还是没有解决好的问题。 很容易想到利用一种基于上述方法混合的方法,但实际上这更困难,因为上述方法的思路和实现根本上就是不同的。 现在有人开始用HCI-SEC的方法对安全系统进行评估,测试结果发现用户在安全决策理解方面存在障碍,从而导致安全配置失误遭受危险,用户往往为了使用方便,而关闭某些安全防护。 Jerome Saltzer 和Michael Schroeder于1975年就在讨论易用性是否是安全系统必要的成分,他们提出了信息保护的8条原则[1],最后一条就是对信息保护系统的“心理可接受性”,但是有些安全系统对这些思想不够重视。此后30年来,HCI技术也有了很大的 发展 ,在技术市场上,开始有人应用HCI设计和评价技术对安全系统进行评价,他们发现最终用户在理解所面临的安全设计和决定方面非常困难,所以非常容易出现误配置的情况,而导致安全风险。很多时候用户为了工作方便停止或者忽略安全功能,例如取消口令或者共享口令,都会把系统置于高安全风险之下。 很多用户习惯将系统安全决策的权利交给系统管理员负责,但是当用户离开自己的工作场所,脱离了所在机构的防火墙保护,在家里或者在路上使用移动设备的时候,就必须根据自己的知识和经验做出安全决定,而不能依靠机构的安全管理员了。因此,需要开发把安全决策权放在用户手中的技术。 1983年,Don Norman指出许多引起数据损失的错误是由于糟糕的界面设计,虽然相关的操作需要用户确认,但是有时候用户确认只是出于习惯的机械点击,因此把系统操作动作设计成可见的和可以取消的并不能完全解决问题。 这里有一个说明问题的例子。在美国PARC研究中心建立无线局域网时,采用了基于PKI的方案,需要给200个用户证书,使用传输层安全认证协议EAP-TLS进行认证。统计表明许多人觉得PKI不容易理解,技术复杂和不易用。由于PARC中心对于PKI技术熟悉,他们认为有信心成功克服使用困难,但是他们错了。在无线局域网的第一个版本里,每个用户都必须从内部认证中心申请和安装一个证书,然后配置操作系统提供的客户软件来使用EAP-TLS认证协议。为了提交证书申请,用户必须决定和提供无线网卡的MAC地址和安装内部认证中心的CA根证书。在建立系统过程中,技术管理团队的大量时间花费在管理CA软件和钥匙上。利用Microsoft Windows XP提供的的无线配置软件,用户需要总共完成38步才能完成注册过程,每一步都强迫用户做出决定或者采取行动。为了帮助用户完成这个过程,系统管理员编写了一个详细的注册指南,但是用户很容易脱离这个指南自行其事,最后用户甚至不知道对计算机做了什么操作,如果出错,他们就会不知所措。尽管PKI提供了安全保护,但是降低了用户配置自己机器的能力。 三、易用安全软件的设计考虑 安全敏感的应用软件的设计要求在易用性和安全性之间是平衡的,如果修改现有的系统设计,提高易用性就可能降低安全性,而增强安全性,就有可能让软件难以使用或者难以理解。在设计一个软件系统时,安全性和易用性两者都不能忽略,这两方面的缺陷都可能导致产品无法使用。 1、安全性和易用性统筹考虑 在软件产品的设计过程中要注意将安全性和易用性统筹考虑: (1)安全和易用的元素不能撒胡椒面,应该把这两个元素合并在一起,贯穿整个设计过程。无论是安全性还是易用性都不能作为附加设计的 内容 。 (2)设计者要牢记安全性和易用性都是用户需求的一个方面,最后的取舍还是要根据用户的需要,系统的安全状态要和用户头脑中的模型相符合,并且两者都是随时间变化的。 3)尽量将安全性元素合并到用户现在已经使用的工作流程中,他们已经习惯了这样的工作方式,不容易对安全手段产生厌倦情绪。 2、避免安全性和易用性的冲突 在安全软件产品的设计过程中,安全性和易用性可能会产生冲突: (1)设计阶段的冲突 1)不恰当的安全性会损害易用性 让差不多要开发结束的产品变得更加安全是设计者可能会遇到的要求,但是设计者会发现在最后一分钟增加安全功能是多么困难和无效。尽管可以通过代码审查发现一些Bug,但是安全则是整个设计更深的属性,John Viega和Gary Mcgraw 认为“在一个现存系统上捆绑安全是一个糟糕的主意,安全不是一个在任何时间都能增加到系统上去的属性”[2]。如果不是从设计一开始就考虑安全性 问题 ,就可能不得不增加很多配置设置和提示,这种做法不能根本上解决问题,反而在出现问题的时候,容易将过错推给用户。 2)不适当的易用性会损害安全性 让差不多要开发结束的产品变得更加好用则是设计者可能会遇到的另外一种要求,但是这是同样困难的任务。好的易用性设计强调理解用户需求,在设计过程中溶入某种概念和风格,而不是仅仅玩弄一些表面的特色,比如动画或者界面外表。没有经过慎重考虑的易用性可能会向用户隐藏一些安全相关的决定或者选择松散的缺省设置,另外不容易理解的界面也会增加操作的复杂性和迷惑用户,降低产品的安全性。 3)集成的交互设计 安全性和易用性的 研究 者都赞成叠代的开发过程,执行重复的 分析 、设计和评估周期,而不是最后进行安全性测试或者易用性测试,将用户交互和安全手段的设计同时考虑非常重要,叠代提供了检查安全性和易用性相互 影响 的机会,如果一直割裂两个方面的设计几乎肯定会带来问题。 (2)使用中的冲突 从目标上讲,安全通常是使用户操作变得困难,而易用性是使操作变得更容易,安全性所引起的操作困难的结果通常是用户不情愿接受的,而易用性所带来的结果一般是用户所欢迎的,当系统设计不够好时,这两者可能发生冲突。 安全性对于用户来说永远是第二位的功能,用户使用 计算 机肯定不是要使用它的安全功能,用户使用计算机是为了使用资源和进行业务系统管理等,要求用户采用额外的安全步骤可能会打断他的工作流程,最后导致用户关闭掉让他烦恼的安全提示。这样 自然 造成易用性和安全性之间的冲突。解决的办法是尽量从自然的用户交互中提取安全信息,提取的安全信息越多,安全性对用户正常使用的干扰就越少。 (3)安全交互设计的原则 研究者曾经提出安全交互设计的10条原则[3]: (1)完成一个任务最自然的方式也是最安全的; (2)用户能够清楚理解授权过程,明确过程中的操作; (3)用户的交互界面应该能够吸引用户的吸引力; (4)影响安全决定的用户交互界面应该便于检查; (5)在任何时候都应该允许撤消做出的安全授权; (6)用户界面不应该让用户误以为拥有实际上没拥有的权限; (7)用户与授权实体之间的通讯渠道必须是不能被欺和不容易瘫痪; (8)确认实体与确认操作在界面上应该与其他实体和操作不同; (9)交互界面应该提供足够的表达能力让用户容易按照自己的目标表达安全决定; (10)在动作生效前应该让用户清楚授权操作的结果。 现在计算机的构件都被标注成可信的,可信不是一个yes 或者 no 的问题,不明确下述问题“可信”这个词是没有任何意义的。这些问题就是:(1)“被谁信任?”(2)“被信任做什么?”(3)“什么条件下不可信?”(4)“应对的安全风险是什么?” Simson Garfinkel 和Gene Spafford给出的定义是:“如果你能够依赖一台计算机和它上面的软件做出你期待的行为,就说它是安全的”[3],用户的期待是基于系统的概念模型,这个概念模型的基本元素是“谁”和做“什么”,对应“角色”和“能力”,每个角色有一系列的“能力”(可以影响用户的可能动作),可以通过有限状态机来模拟所有角色的所有可能动作。 安全性和易用性是贯穿软件开发过程的要求,不仅需要早期考虑,还需要同时兼顾。特别在大型系统的开发过程中,负责这两个方面的开发人员需要很好的沟通和交互。
随着我国现代化程度的不断提高,计算机软件被应用的领域愈发广泛,其本身的创造程度也越来越高,计算机产业现在已经成为一个规模庞大的产业。下面是我为大家整理的计算机软件论文,供大家参考。
计算机软件论文 范文 一:计算机软件开发中分层技术研究
摘要:在信息化建设水平不断提高的情况下,计算机软件在这一过程中得到了十分广泛的应用,此外,计算机软件开发在这一过程中也越来越受到人们的关心和关注。软件开发技术最近几年得到了很大的改进,这些技术当中分层的技术是非常重要的一个,所以,我们需要对其进行全面的分析和研究。
关键词:计算机;软件开发;分层技术
当前信息化时代已经悄然到来, 网络技术 的发展也使得人们越来越关注软件开发行业,计算机软件从原来的二元结构模式逐渐向多层结构模式发展,中间件也成为了应用层质量和性能非常重要的一个问题,此外,其也成为了计算机软件开发应用过程中非常关键的一个技术,其与数据库, 操作系统 共同形成了计算机基础软件。这一技术的应用能够使得软件系统扩展性更强,灵活性和适应性也在这一过程中得到了显著的提升,所以,分层技术也已经在现代计算机软件开发的过程中得到了越来越广泛的应用。
1计算机层次软件及其优点
计算机软件工程的最终目标就是研发质量和性能更好的软件产品,而在这一过程中基础构建和开发可以十分有效的为计算机软件的应用提供非常好的条件,构件是高内聚度软件包,其能够当作独立单元进行更加全面的开发处理,同时,其也为构件的组合提供了非常大的便利,对软件系统进行搭建可以很好的缩短软件开发的时长,同时还能十分有效的获得更多的质量保证。构件开发最为重要的一个目的就是广泛的应用,应用层次化软件结构设计 方法 的一个非常重要的目的就是可以更为科学合理的去应用构件技术。软件系统在进行了分解之后,形成了不同的构件模块,高层次构件通常被人们视为指定领域的构件。低层次构件只是与数据库或许是和物理硬件产生联系。层次划分是一个相对比较宽泛的概念,所以在层次关系方面并没有一个相对统一和规范的标准。不同构件内部的层次关系通常是上下层依附的关系。站在某个角度上来看,计算机软件的系统层次化就是指多层次技术的广泛应用,而根本原因是为了软件能够大范围的应用。采用分层模式可以非常好的展现出软件的可扩展性,系统某一层在功能上的变化仅仅和上下层存在着一定的关系,对其他层并不会产生非常明显的影响。分层模式也比较适合使用在一些标准组织当中,此外,其也是通过控制功能层次接口来保证其不会受到严重的限制。标准接口的应用能够使得不同软件可以自行开发,同时后期更新的产品也能够和其他软件具有良好的融合性。
2软件开发中多层次技术分析
两层与三层结构技术分析
在两层模式当中,一般都是由数据库的服务器和客户端构成,其中,客户端能够为客户提供一个操作界面,同时,其还具备非常好的逻辑处理功能,同时还要按照指令去完成数据库的查询,而服务器主要是接收客户端的指令,同时还要按照指令对数据库完成查询,同时还要返回到查询结果当中。这种逻辑处理结构就被人们称作Fat客户,这种二层技术的客户端类型在应用的过程中能够完成非常多的业务逻辑处理工作,随着客户端数量的增加,其扩充性和交互作业以及通信性能等等都会受到影响,此外还存在着非常明显的安全问题及隐患。而计算机技术在不断的完善,传统的二层技术已经不能适应系统应用的具体要求。在这样的情况下就出现了三层结构技术类型,这种技术主要是客户端、应用服务器交换机和应用服务器构成。其中,客户端主要是用来实现人机交互,数据服务器可以让操作人员完成数据信息的访问、存储以及优化工作,服务器的应用主要是能够完成相关业务的逻辑分析工作,这样也就使得客户端的工作压力有了非常显著的下降,我们一般将这样的客户称作瘦客户。三层结构和二层结构相比其具有非常强的可重复性、维护方面更加方便,同时其安全性和扩展性也明显增强,但是在用户数量并不是很多的时候,二层结构的优势则更加的明显,所以,在软件开发的过程中,我们一定要充分的结合实际的情况和要求。
四层结构技术
当前,计算机应用的环境在复杂性上有了非常显著的提升,客户对软件系统也提出了越来越高的要求,其主要表现在了软件开发周期不是很长,系统的稳定性很好,扩展性更强等方面,为了满足用户提出的更高要求,我们在开发的过程中将用户界面、业务逻辑个数据库服务器根据其功能模块进行全面的处理,将不同的模块分开,这样也就将相互之间的影响降到了最低水平。这个时候,如果使用三层分层技术就无法很好的实现这一功能,很多软件的开发人员会在数据库和逻辑层交互的过程中,增加一层数据库接口封装,这样也就实现了三层向四层的进化。四层结构体系主要包含web层、业务逻辑层、数据持久层与存储层。其中,web层可以使用模式1或模式2开发。在模式1中,基本是由JSP页面所构成,当接收客户端的请求之后,能直接给出响应,使用少量Java处理数据库的有关操作。模式1实现较为简单,可用于小规模项目快速开发,这种模式的局限性也很明显,JSP页面主要担当了控制器与视图View两类角色,其表现及控制逻辑被混为一体,有关代码重用功能较低,应用系统的维护性与扩展性难度加大,并不适合复杂应用系统开发。模式2主要是基于1vlvc结构进行设计的,JSP不再具有控制器职责,由Sen}let当作前端的控制器进行客户端请求的接收,并通过Java实施逻辑处理,而JSP仅具有表现层的角色,将结果向用户呈现,这种模型主要适合大规模项目的应用开发。业务逻辑层在数据持久层与web层间,主要负责将数据持久层中的结果数据传给web层,作为业务处理核心,具有数据交换的承上启下功能,业务逻辑层的技术依据业务及功能大小不同,能够分成JavaBean与EJB两种封装的业务逻辑,其中EJB简化了Java语言编写应用系统中的开发、配置与执行,不过EJB并非实现J2EE唯一的方法,支持EJB应用的程序器能应用任何分布式的网络协议,像与专有协议等。
3结论
当前,我国计算机应用的过程中面临的环境越来越复杂,同时在客户的要求方面也有了非常显著的提升,为了更好的满足软件应用者的要求,在软件开发工作中,分层技术得到了十分广泛的应用,以往的两层技术模式已经无法适应当今时代的建设和发展,在对两层和三层结构优缺点的分析之后,多层结构系统在应用的过程中发挥了非常大的作用,这样也就使得软件开发技术得到了显著的提升,从而极大的满足了客户对计算机软件的各项要求。
参考文献
[1]金红军.规范化在计算机软件开发中的应用[J].物联网技术,2016(01).
[2]赵明亮.计算机应用软件开发技术[J].黑龙江科技信息,2011(26).
[3]林雪海,吴小勇.计算机软件开发的基础架构原理研究[J].电子制作,2016(Z1).
计算机软件论文范文二:分层技术在计算机软件开发中的使用
【摘要】近年来,计算机技术和网络技术已经在人们的日常生活和工作中得到普遍应用。计算机开发技术已经得到了相关从业人员的普遍关注。笔者对计算机软件开发中分层技术的应用进行论述,以期提升计算机软件开发水平。
【关键词】计算机;软件开发;分层技术
1前言
科学技术快速发展,现代化进程逐渐加快,计算机软件开发也逐渐由传统二层结构开发模式转化为多层结构。其已经成为计算机软件开发过程中的重要内容和组成部分。近年来,网络环境日趋复杂,将分层技术应用到计算机软件开发中,能够提升软件系统的整体清晰度和辨识度,为人们提供一个灵活的软件应用环境,促进计算机研发技术又好又快发展。
2分层技术相关概述
分层技术的概念及应用计算机开发过程中要确保软件的灵活性和可靠性,实现软件的多功能应用。分层技术基于计算机软件内部结构原理,促进计算机软件应用过程中各种不同功能的实现。因此,将分层技术应用到计算机软件开发中具有一定的优势。同时,其能够改变传统的计算机软件单项业务处理模式,实现多层次技术的开发和应用[1]。
分层技术的特点在计算机软件开发中应用分层技术具有相应的特点和优势。首先,分层技术能够依据相关功能需求,对计算机软件进行扩展和计算机系统进行分解,实现对计算机软件的改造和更新,并对系统中功能层和上下层进行变革和修改。其次,分层技术能够提高计算机软件的开发质量和效率,也能够提高其软件运行的可靠性。通过对原有计算机系统的改造和变更,缩短复杂软件的开发时间,提高新产品的质量。第三,在计算机软件开发中应用分层技术,能够让计算机软件得到充分利用,并对功能层次的接口进行定义,实现软件的自动化开发,促进标准接口的应用和其端口的无缝隙对接[2]。
3分层技术在计算机软件开发中的应用
近年来,随着生活理念的革新,人们对计算机软件开发普遍关注。同时,计算机软件开发也对传统计算机软件单项业务处理模式进行变革,使其向多层次计算机软件开发转变。目前,计算机软件开发技术已经由原来的二层和三层技术转化为多层技术。
双层技术的应用
双层技术在计算机软件开发中的应用,能够提升计算机软件开发的质量和效率。双层技术是由客户端和服务器两个端点组成。客户端的功能是为用户提供相应的界面,并对计算机日常应用过程中的相关逻辑关系进行处理。服务器主要用来接受客户信息,并对用户相关信息进行整合,传递给客户端。
三层技术的应用
三层技术是对计算机开发过程中的双层技术进行不断完善。相较于传统的双层技术,三层技术能够确保在一定程度上增加应用服务器,同时也能够提高用户数据存储质量和效率。在计算机软件开发过程中应用三层技术,能够提高计算机信息访问效率,也能够确保计算机与人之间构建和谐的共性关系,确保计算机整体运行质量的提升,为人们提供一个良好的计算机应用环境。三层技术包括业务处理层次、界面层次和数据层次。业务处理层次主要目的是了解用户的需求,并结合用户需求对相关数据进行处理。界面层主要是搜集用户的需求,并对其进行加工,将相关结果传递给业务处理层次。数据层次主要用来对业务处理层的相关请求进行审核,并应用数据库对相关信息资源进行查询和整合。加之科学的分析,将其传递给业务层。三层技术能够提升计算机使用性能,但其用户环境比较复杂,增加了信息和数据处理难度[3]。
四层技术的应用
四层技术是基于三层技术进行完善的,其包括业务处理层、web层、数据库层和存储层。其在计算机软件开发过程中的应用原理是应用业务处理层分析用户需求,并将数据层处理结果传递给web层,应用数据交换和数据访问代码来反映数据库和计算机对象之间的关系。
中间件技术的应用
中间件技术被作为面向对象技术进行开发。中间件主要以分布式计算环境为背景,以实现互通和互联及资源共享应用功能,其是一种独立系统软件。它能够对异构和分布集成所带来的各种复杂技术的相关细节进行屏蔽,以降低相关技术难度。在操作系统、数据库与应用软件之间应用中间件,能够缩短开发周期,提升系统和软件运行的安全性。中间件的种类比较多。结合其相关技术特性,能将其划分为DM、MOM、OOM中间件和RPC与TPM中间件等,其已经被普遍应用到计算机软件实际开发中。
面向消息中间件信息同步传送和异步传送都可以应用MOM中间件技术。MOM能够实现异步通信、消息传递列队化和传递过程中的安全性和可靠性。MOM分层技术在计算机软件技术开发中应用很普遍。应用消息列队中间件进行应用编程,其主要通过中间件和对方实现间接通讯。同时,其能够应用队列管理器与远地或者本地应用程序进行通信。通信过程中,通信双方只需要将消息传递给队列管理器,不需要对消息的传递过程和传递安全性进行过多的关注,有利于软件开发过程的简化。
远程过程调用中间件在客户和服务器计算层面应用远程过程调用的中间件,其更加具有先进性和实用性。程序员可以结合客户的实际需求对相关应用进行编制。RPC比较灵活,其也能够适应于复杂的计算机环境中,并支持跨平台应用,对远端子程序进行调用,以满足编程过程中的相关细节。但是其在应用过程中仍然存在相应的缺陷,其采用同步通信方式,不利于在大型范围内进行使用,需要对网络故障和流量控制等诸多因素进行考虑。
面向对象的中间件基于组件技术在大型应用软件中的使用比较广泛,分布系统对各个节点中不同系统平台的新组件和老版组件进行集成应用。由于其面临各种问题,使用过程中具有一定的局限性,并不能够充分发挥其作用。基于对象技术和分布式技术,面向对象的中间件提供了全新通信机制,能够在异构分布的计算环境中对传递对象的相关请求进行满足。其来源主要是本地或者远程服务器。
4结语
计算机的应用环境越来越复杂,用户的相关要求也逐渐提高,增加了软件开发的难度。在计算机软件开发中应用分层技术,并对其进行不断地优化,能够实现其安全性和拓展性,缩短开发周期,提升其整体处理能力,有效满足了客户的日常应用需求。
参考文献:
[1]李大勇.关于分层技术在计算机软件中的应用研究与分析[J].计算机光盘软件与应用,2014,(20):78~79.
[2]杨博宁.浅谈计算机软件开发中分层技术[J].科技风,2015,(08):95.
[3]贾辉.刍议分层技术在计算机软件开发中的应用[J].中国高新技术企业,2015,(30):59~60.
计算机软件论文参考相关 文章 :
1. 计算机专业毕业论文大全参考
2. 计算机论文范文大全参考
3. 计算机专业毕业论文范文大全参考
4. 计算机专业毕业论文格式范文参考
5. 计算机专科论文范文参考
6. 计算机硕士论文范文参考
244 浏览 7 回答
344 浏览 8 回答
356 浏览 7 回答
112 浏览 6 回答
279 浏览 8 回答
84 浏览 3 回答
240 浏览 8 回答
350 浏览 5 回答
285 浏览 8 回答
130 浏览 8 回答
116 浏览 3 回答
113 浏览 3 回答
335 浏览 3 回答
187 浏览 6 回答
287 浏览 5 回答