网络安全数字签名与加密
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
网络安全数字签名与加密
摘要:目前国内经济发展迅速,市场的全球化竞争已成为趋势,尤其在21世纪的十年里,伴随这激烈的竞争个企业不断改进管理模式,加大了在企业信息化和办公自动化方面的投入,使得信息网络产业发张迅速。中小企业网络化能够促进产业的发展,加大工作效率。而这一切将以信息化平台为基础,以网络安全为保证。从实际情况出发把这个中小型企业的实际需要应用到网络中去,是企业的内部网络能够安全、快速和便捷。主要包括硬件的安全、策略的安全、数字签名、和加密安全等内容。介绍了数字签名的产生、分类和功能,接着介绍了基于RSA 和椭圆曲线的数字签名算法,其中具体讲了一下椭圆曲线的原理。再者阐述了椭圆曲线密码体制,根据已有的MV 加密算法提出一种改进的MV 加密算法。最后总结有关椭圆曲线密码算法,对以后的工作研究进行展望。
关键词:信息安全;数字签名;RSA;椭圆曲线;加密算法
1、物理安全策略
物理安全策略的目的是保护计算机系统、网络服务器、打印机等硬件实体和通信链路免受自然灾害、人为破坏和搭线攻击;验证用户的身份和使用权限;确保计算机系统有一个良好的电磁兼容工作环境;防止非法进入计算机控制室和各种偷窃、破坏活动的发生。
2、访问控制策略
访问控制是网络安全防范和保护的主要策略,它的主要任务是保证网络资源不被非法使用和非常访问。它也是维护网络系统安全、保护网络资源的重要手段,可以说是保证网络安全最重要的核心策略之一。。
(1)网络的权限控制。可以指定用户对这些文件、目录、设备能够执行哪些操作。受托者指派和继承权限屏蔽(IRM)可作为其两种实现方式。
(2)目录级安全控制。网络应允许控制用户对目录、文件、设备的访问。用户在目录一级指定的权限对所有文件和子目录有效,用户还可进一步指定对目录下的子目录和文件的权限。
(3)网络服务器安全控制。网络服务器的安全控制包括可以设置口令锁定服务器控制台,以防止非法用户修改、删除重要信息或破坏数据;可以设定服务器登录时间限制、非法访问者检测和关闭的时间间隔。
(4)防火墙控制。当一个网络接上Internet之后,系统的安全除了考虑计算机病毒、系统的健壮性之外,更主要的是防止非法用户的入侵,而目前防止的措施主要是靠防火墙技术完成。
3、信息加密策略
信息加密过程是由形形色色的加密算法来具体实施,它以很小的代价提供很大的安全保护。如果按照收发双方密钥是否相同来分类,可以将这些加密算法分
为常规密码算法和公钥密码算法。
4、密码学简介
密码学的发展为人们提供了保障网络信息安全的核心技术,加密可以实现信息传递的机密性,而数字签名可以实现信息的认证性和完整性。数字签名作为传统手写签名或印章的代替物,在网络社会应用非常广泛。密码编码学就是研究对数据进行变换的原理、手段和方法的技术和科学,其目的是隐藏数据的真实内容,以防止数据被无察觉的篡改和非法使用。密码分析学是为了取得秘密的消息,而对密码系统及其流动的数据进行分析,是对密码原理、手段和方法进行分析、攻击的技术和科学。密码编码学和密码分析学相互矛盾,又相互促进。密码学的基本思想就是隐藏、伪装信息,使未经授权者不能得到消息的真正含义,伪装信息的方法就是进行一组可逆的数字变换。伪装(变换)之前的信息是原始信息,称为明文,伪装之后的信息,看起来是一串无意义的乱码,称为密文。把明文伪装成密文的过程称为加密,该过程使用的数学变换就是加密算法。把密文还原成明文的过程称为解密,该过程使用的数学变换,通常是加密时数学变换的逆变换,就是解密算法。加密与解密通常需要参数控制,我们把该参数称为密钥,有时也称为密码。加密时使用的叫加密密码(加密密钥),解密时使用的叫解密密码(解密密钥)。一个密码系统是由明文空间、密文空间、密钥空间、加密算法与解密算法五个部分组成。明文、密文、密钥空间分别表示全体明文、全体密文、全体密钥的集合,加密算法和解密算法。
5、数字签名研究
数字签名主要的功能是:保证信息传输的完整性、发送者的身份认证、防止交易中的抵赖发生。数字签名技术是将摘要信息用发送者的私钥加密,与原文一起传送给接收者。接收者只有用发送的公钥才能解密被加密的摘要信息,然后用Hash 函数对收到的原文产生一个摘要信息,与解密的摘要信息对比。如果相同,则说明收到的信息是完整的,在传输过程中没有被修改,否则说明信息被修改过,因此数字签名能够验证信息的完整性。签名算法用于对消息产生数字签名,它通常受一个签名密钥的控制,签名算法或者签名密钥是保密的,有签名者掌握;验证算法用于对消息的数字签名进行验证,根据签名是否有效验证算法能够给出该签名为“真”或者“假”的结论。验证算法通常也受一个验证密钥的控制,但验证算法和验证密钥应当是公开的,以便需要验证签名的人(1)防冒充(伪造):其他人不能伪造对消息的签名,因为私有密钥只有签名者自己知道,所以其他人不可能构造出正确的签名结果数据。可鉴别身份:由于传统的手工签字一般是双方直接见面的,身份可以很清楚;在网络环境中,接收方必须能够鉴别发送方宣称的身份。接收者使用发送者的公开密钥对签名报文进行
解密运算,如其结果为明文,则签名有效,证明对方身份是真实的。(2)防篡改(防破坏信息的完整性):数字签名时,签名与原有文件已经形成了一个混合的整体数据,不可能篡改,从而保证了数据的完整性。(3)防重放:在数字签名中,如果采用了对签名报文添加流水号、时戳等技术,可以防止重放攻击。(4)防抵赖:数字签名可以鉴别身份,不可能冒充伪造,那么,只要保存好签名的报文,
就好似保存好了手工签署的合同文本,也就是保留了证据,签名者就无法抵赖。以上是签名者不能抵赖,如果接收者确已收到对方的签名报文,要防接收者的抵赖,在数字签名体制中,要求接收者返回一个自己签名的表示收到的报文,给对方或者是第三方,或者引入第三方机制,如此操作,双方均不可抵赖。(5)机密性(保密性):有了机密性保证,截收攻击也就失效了。手工签字的文件是不具备保密性的,文件一旦丢失,文件信息就极可能泄露。数字签名,可以加密要签名的信息。
6、基于RSA 的数字签名
RSA 是目前使用最为广泛、最著名的公开密钥系统,它是由麻省理工学院的三位学者Rivest、Shamir 和Adleman 于1978 年提出的。RSA 密码系统可以完成数据加密、数字签名[9] 以及密钥交换等功能,其安全性是建立在大素数因子分解困难问题上的。设n=pq,p、q 是两个大素数,消息空间和签名空间为P=A=Zn,定义K={(n,p,q,a,b)ln=pq,p,q 为素数,ab=l(mod (n))}。值n 和 b 公开的,p、q、a 是保密的。对K=(n,p,q,a,b),签名及验证算法定义如下:签名算法:y=Sigk (x)=xamodn,n∈Z;(3.2)验证算法:V erk (x,y)=真x=y6 modn,x,y∈Zn。如果 B 使用RSA 解密规则Dk 签一个消息x,那么 B 是能产生签名的唯一的人,这是因为Dk 是保密的。验证算法使用RSA 的加密规则Ek,因为Ek 是公开的,保存在公开的信任机构服务器中,所以任何人能验证一个签名。RSA 数字签名方案的弱点如下:(1) 随着计算机速度的提高,以及集群计算技术的应用,RSA 算法已经不足够安全,对RSA 的破解也成为可能。RSA 算法运行中所需要的密钥长度变得越来越大,使其计算量也猛增。[10] 经过实验得到,密钥长度为1024 位至2048 位是比较合理的,既可以保证系统的安全性,计算量又可以接受。然而密钥长度的猛增,对RSA 的应用带来严重的负面影响,使其应用范围越来越受到制约。
7、基于椭圆曲线的数字签名
椭圆曲线密码体制与基于有限域上乘法群的离散对数的密码体制(如EIGamal,Diffile-HelIman 等)及RSA 相比,有以下优点:(1)在安全性相当的前提下,椭圆曲线可以使用较短的密钥;(2)椭圆曲线建立在椭圆曲线离散对数的数学难题之上,没有亚指数攻击算法;(3)椭圆曲线资源丰富,椭圆曲线上可以提供无数的有限Abel 群,并且这种群的结构丰富,易于实际计算。若设f(X,Y,Z)=Y2Z+alXYZ+a3YZ2- X3+a2X2Z+a4XZ2+a6Z3,记E(F)={(X,Y,Z)I(X,