173 2438 5004
KEROS加密芯片——品牌直销 | 免费样品 | 技术支持
当前位置:网站首页 > 资讯中心 正文 资讯中心

加密算法性能的比较研究论文

keros@mark 2022-10-25 资讯中心

本篇文章给大家谈谈加密算法性能的比较研究论文以及对应的知识点,希望对各位有所帮助。

本文目录一览

求毕业论文的论点(网络安全与数据加密技术)

网络安全分析及对策

摘 要:网络安全问题已成为信息时代面临的挑战和威胁,网络安全问题也日益突出。具体表现为:网络系统受病毒感染和破坏的情况相当严重;黑客活动已形成重要威胁;信息基础设施面临网络安全的挑战。分析了网络安全防范能力的主要因素,就如何提高网络的安全性提出几点建议:建立一个功能齐备、全局协调的安全技术平台,与信息安全管理体系相互支撑和配合。

关键词:网络安全;现状分析;防范策略

引言

随着计算机网络技术的飞速发展,尤其是互联网的应用变得越来越广泛,在带来了前所未有的海量信息的同时,网络的开放性和自由性也产生了私有信息和数据被破坏或侵犯的可能性,网络信息的安全性变得日益重要起来,已被信息社会的各个领域所重视。今天我们对计算机网络存在的安全隐患进行分析,并探讨了针对计算机安全隐患的防范策略。

目前,生活的各个方面都越来越依赖于计算机网络,社会对计算机的依赖程度达到了空前的记录。由于计算机网络的脆弱性,这种高度的依赖性是国家的经济和国防安全变得十分脆弱,一旦计算机网络受到攻击而不能正常工作,甚至瘫痪,整个社会就会陷入危机。

1 计算机网络安全的现状及分析。

2 计算机网络安全防范策略。

2.1防火墙技术。

2.2数据加密与用户授权访问控制技术。与防火墙相比,数据加密与用户授权访问控制技术比较灵活,更加适用于开放的网络。用户授权访问控制主要用于对静态信息的保护,需要系统级别的支持,一般在操作系统中实现。数据加密主要用于对动态信息的保护。对动态数据的攻击分为主动攻击和被动攻击。对于主动攻击,虽无法避免,但却可以有效地检测;而对于被动攻击,虽无法检测,但却可以避免,实现这一切的基础就是数据加密。数据加密实质上是对以符号为基础的数据进行移位和置换的变换算法,这种变换是受“密钥”控制的。在传统的加密算法中,加密密钥与解密密钥是相同的,或者可以由其中一个推知另一个,称为“对称密钥算法”。这样的密钥必须秘密保管,只能为授权用户所知,授权用户既可以用该密钥加密信急,也可以用该密钥解密信息,DES是对称加密算法中最具代表性的算法。如果加密/解密过程各有不相干的密钥,构成加密/解密的密钥对,则称这种加密算法为“非对称加密算法”或称为“公钥加密算法”,相应的加密/解密密钥分别称为“公钥”和“私钥”。在公钥加密算法中,公钥是公开的,任何人可以用公钥加密信息,再将密文发送给私钥拥有者。私钥是保密的,用于解密其接收的公钥加密过的信息。典型的公钥加密算法如RSA是目前使用比较广泛的加密算法。

2.3入侵检测技术。入侵检测系统(Intrusion Detection System简称IDS)是从多种计算机系统及网络系统中收集信息,再通过这此信息分析入侵特征的网络安全系统。IDS被认为是防火墙之后的第二道安全闸门,它能使在入侵攻击对系统发生危害前,检测到入侵攻击,并利用报警与防护系统驱逐入侵攻击;在入侵攻击过程中,能减少入侵攻击所造成的损失;在被入侵攻击后,收集入侵攻击的相关信息,作为防范系统的知识,添加入策略集中,增强系统的防范能力,避免系统再次受到同类型的入侵。入侵检测的作用包括威慑、检测、响应、损失情况评估、攻击预测和起诉支持。入侵检测技术是为保证计算机系统的安全而设计与配置的一种能够及时发现并报告系统中未授权或异常现象的技术,是一种用于检测计算机网络中违反安全策略行为的技术。入侵检测技术的功能主要体现在以下方面:监视分析用户及系统活动,查找非法用户和合法用户的越权操作。检测系统配置的正确性和安全漏洞,并提示管理员修补漏洞;识别反映已知进攻的活动模式并向相关人士报警;对异常行为模式的统计分析;能够实时地对检测到的入侵行为进行反应;评估重要系统和数据文件的完整性;可以发现新的攻击模式。

2.4防病毒技术。

2.5安全管理队伍的建设。

3 结论

随着互联网的飞速发展,网络安全逐渐成为一个潜在的巨大问题。计算机网络的安全问题越来越受到人们的重视,总的来说,网络安全不仅仅是技术问题,同时也是一个安全管理问题。我们必须综合考虑安全因素,制定合理的目标、技术方案和相关的配套法规等。世界上不存在绝对安全的网络系统,随着计算机网络技术的进一步发展,网络安全防护技术也必然随着网络应用的发展而不断发展。

参考文献

[1]国家计算机网络应急中心2007年上半年网络分析报告.

[2]王达.网管员必读——网络安全第二版.

多媒体信息加密技术论文

多媒体多媒体信息加密技术论文是解决网络安全问要采取的主要保密安全 措施 。我为大家整理的多媒体多媒体信息加密技术论文论文,希望你们喜欢。

多媒体多媒体信息加密技术论文论文篇一

多媒体信息加密技术论文研究

摘要:随着 网络 技术的 发展 ,网络在提供给人们巨大方便的同时也带来了很多的安全隐患,病毒、黑客攻击以及 计算 机威胁事件已经司空见惯,为了使得互联网的信息能够正确有效地被人们所使用,互联网的安全就变得迫在眉睫。

关键词:网络;加密技术;安全隐患

随着 网络技术 的高速发展,互联网已经成为人们利用信息和资源共享的主要手段,面对这个互连的开放式的系统,人们在感叹 现代 网络技术的高超与便利的同时,又会面临着一系列的安全问题的困扰。如何保护 计算机信息的安全,也即信息内容的保密问题显得尤为重要。

数据加密技术是解决网络安全问要采取的主要保密安全措施。是最常用的保密安全手段,通过数据加密技术,可以在一定程度上提高数据传输的安全性,保证传输数据的完整性。

1 加密技术

数据加密的基本过程就是对原来为明文的文件或数据按某种算法进行处理。使其成为不可读的一段代码,通常称为“密文”传送,到达目的地后使其只能在输入相应的密钥之后才能显示出本来内容,通过这样的途径达到保护数据不被人非法窃取、修改的目的。该过程的逆过程为解密,即将该编码信息转化为其原来数据的过程。数据加密技术主要分为数据传输加密和数据存储加密。数据传输加密技术主要是对传输中的数据流进行加密,常用的有链路加密、节点加密和端到端加密三种方式。

2 加密算法

信息加密是由各种加密算法实现的,传统的加密系统是以密钥为基础的,是一种对称加密,即用户使用同一个密钥加密和解密。而公钥则是一种非对称加密 方法 。加密者和解密者各自拥有不同的密钥,对称加密算法包括DES和IDEA;非对称加密算法包括RSA、背包密码等。目前在数据通信中使用最普遍的算法有DES算法、RSA算法和PGP算法等。

2.1 对称加密算法

对称密码体制是一种传统密码体制,也称为私钥密码体制。在对称加密系统中,加密和解密采用相同的密钥。因为加解密钥相同,需要通信的双方必须选择和保存他们共同的密钥,各方必须信任对方不会将密钥泄漏出去,这样就可以实现数据的机密性和完整性。对于具有n个用户的网络,需要n(n-1)/2个密钥,在用户群不是很大的情况下,对称加密系统是有效的。DES算法是目前最为典型的对称密钥密码系统算法。

DES是一种分组密码,用专门的变换函数来加密明文。方法是先把明文按组长64bit分成若干组,然后用变换函数依次加密这些组,每次输出64bit的密文,最后将所有密文串接起来即得整个密文。密钥长度56bit,由任意56位数组成,因此数量高达256个,而且可以随时更换。使破解变得不可能,因此,DES的安全性完全依赖于对密钥的保护(故称为秘密密钥算法)。DES运算速度快,适合对大量数据的加密,但缺点是密钥的安全分发困难。

2.2 非对称密钥密码体制

非对称密钥密码体制也叫公共密钥技术,该技术就是针对私钥密码体制的缺陷被提出来的。公共密钥技术利用两个密码取代常规的一个密码:其中一个公共密钥被用来加密数据,而另一个私人密钥被用来解密数据。这两个密钥在数字上相关,但即便使用许多计算机协同运算,要想从公共密钥中逆算出对应的私人密钥也是不可能的。这是因为两个密钥生成的基本原理根据一个数学计算的特性,即两个对位质数相乘可以轻易得到一个巨大的数字,但要是反过来将这个巨大的乘积数分解为组成它的两个质数,即使是超级计算机也要花很长的时间。此外,密钥对中任何一个都可用于加密,其另外一个用于解密,且密钥对中称为私人密钥的那一个只有密钥对的所有者才知道,从而人们可以把私人密钥作为其所有者的身份特征。根据公共密钥算法,已知公共密钥是不能推导出私人密钥的。最后使用公钥时,要安装此类加密程序,设定私人密钥,并由程序生成庞大的公共密钥。使用者与其向 联系的人发送公共密钥的拷贝,同时请他们也使用同一个加密程序。之后他人就能向最初的使用者发送用公共密钥加密成密码的信息。仅有使用者才能够解码那些信息,因为解码要求使用者知道公共密钥的口令。那是惟有使用者自己才知道的私人密钥。在这些过程当中。信息接受方获得对方公共密钥有两种方法:一是直接跟对方联系以获得对方的公共密钥;另一种方法是向第三方即可靠的验证机构(如Certification Authori-ty,CA),可靠地获取对方的公共密钥。公共密钥体制的算法中最著名的代表是RSA系统,此外还有:背包密码、椭圆曲线、EL Gamal算法等。公钥密码的优点是可以适应网络的开放性要求,且密钥 管理问题也较为简单,尤其可方便的实现数字签名和验证。但其算法复杂,加密数据的速率较低。尽管如此,随着现代 电子 技术和密码技术的发展,公钥密码算法将是一种很有前途的网络安全加密体制。

RSA算法得基本思想是:先找出两个非常大的质数P和Q,算出N=(P×Q),找到一个小于N的E,使E和(P-1)×(Q-1)互质。然后算出数D,使(D×E-1)Mod(P-1)×(Q-1)=0。则公钥为(E,N),私钥为(D,N)。在加密时,将明文划分成串,使得每串明文P落在0和N之间,这样可以通过将明文划分为每块有K位的组来实现。并且使得K满足(P-1)×(Q-1I)K3 加密技术在 网络 中的 应用及 发展

实际应用中加密技术主要有链路加密、节点加密和端对端加密等三种方式,它们分别在OSI不同层次使用加密技术。链路加密通常用硬件在物理层实现,加密设备对所有通过的数据加密,这种加密方式对用户是透明的,由网络自动逐段依次进行,用户不需要了解加密技术的细节,主要用以对信道或链路中可能被截获的部分进行保护。链路加密的全部报文都以明文形式通过各节点的处理器。在节点数据容易受到非法存取的危害。节点加密是对链路加密的改进,在协议运输层上进行加密,加密算法要组合在依附于节点的加密模块中,所以明文数据只存在于保密模块中,克服了链路加密在节点处易遭非法存取的缺点。网络层以上的加密,通常称为端对端加密,端对端加密是把加密设备放在网络层和传输层之间或在表示层以上对传输的数据加密,用户数据在整个传输过程中以密文的形式存在。它不需要考虑网络低层,下层协议信息以明文形式传输,由于路由信息没有加密,易受监控分析。不同加密方式在网络层次中侧重点不同,网络应用中可以将链路加密或节点加密同端到端加密结合起来,可以弥补单一加密方式的不足,从而提高网络的安全性。针对网络不同层次的安全需求也制定出了不同的安全协议以便能够提供更好的加密和认证服务,每个协议都位于 计算 机体系结构的不同层次中。混合加密方式兼有两种密码体制的优点,从而构成了一种理想的密码方式并得到广泛的应用。在数据信息中很多时候所传输数据只是其中一小部分包含重要或关键信息,只要这部分数据安全性得到保证整个数据信息都可以认为是安全的,这种情况下可以采用部分加密方案,在数据压缩后只加密数据中的重要或关键信息部分。就可以大大减少计算时间,做到数据既能快速地传输,并且不影响准确性和完整性,尤其在实时数据传输中这种方法能起到很显著的效果。

4 结语

多媒体信息加密技术论文作为网络安全技术的核心,其重要性不可忽略。随着加密算法的公开化和解密技术的发展,各个国家正不断致力于开发和设计新的加密算法和加密机制。所以我们应该不断发展和开发新的多媒体信息加密技术论文以适应纷繁变化的网络安全 环境。

多媒体多媒体信息加密技术论文论文篇二

信息数据加密技术研究

[摘 要] 随着全球经济一体化的到来,信息安全得到了越来越多的关注,而信息数据加密是防止数据在数据存储和和传输中失密的有效手段。如何实现信息数据加密,世界各个国家分别从法律上、管理上加强了对数据的安全保护,而从技术上采取措施才是有效手段,信息数据加密技术是利用数学或物理手段,对电子信息在传输过程中和存储体内进行保护,以防止泄漏的技术。

[关键字] 信息 数据加密 对称密钥加密技术 非对称密钥加密技术

随着全球经济一体化的到来,信息技术的快速发展和信息交换的大量增加给整个社会带来了新的驱动力和创新意识。信息技术的高速度发展,信息传输的安全日益引起人们的关注。世界各个国家分别从法律上、管理上加强了对数据的安全保护,而从技术上采取措施才是有效手段,技术上的措施分别可以从软件和硬件两方面入手。随着对信息数据安全的要求的提高,数据加密技术和物理防范技术也在不断的发展。数据加密是防止数据在数据存储和和传输中失密的有效手段。信息数据加密技术是利用数学或物理手段,对电子信息在传输过程中和存储体内进行保护,以防止泄漏的技术。信息数据加密与解密从宏观上讲是非常简单的,很容易掌握,可以很方便的对机密数据进行加密和解密。从而实现对数据的安全保障。

1.信息数据加密技术的基本概念

信息数据加密就是通过信息的变换或编码,把原本一个较大范围的人(或者机器)都能够读懂、理解和识别的信息(这些信息可以是语音、文字、图像和符号等等)通过一定的方法(算法),使之成为难以读懂的乱码型的信息,从而达到保障信息安全,使其不被非法盗用或被非相关人员越权阅读的目的。在加密过程中原始信息被称为“明文”,明文经转换加密后得到的形式就是“密文”。那么由“明文”变成“密文”的过程称为“加密”,而把密文转变为明文的过程称为“解密”。

2. 信息数据加密技术分类

信息数据加密技术一般来说可以分为两种,对称密钥加密技术及非对称密钥加密技术。

2.1 对称密钥加密技术

对称密钥加密技术,又称专用密钥加密技术或单密钥加密技术。其加密和解密时使用同一个密钥,即同一个算法。对称密钥是一种比较传统的加密方式,是最简单方式。在进行对称密钥加密时,通信双方需要交换彼此密钥,当需要给对方发送信息数据时,用自己的加密密钥进行加密,而在需要接收方信息数据的时候,收到后用对方所给的密钥进行解密。在对称密钥中,密钥的管理极为重要,一旦密钥丢失,密文将公开于世。这种加密方式在与多方通信时变得很复杂,因为需要保存很多密钥,而且密钥本身的安全就是一个必须面对的大问题。

对称密钥加密算法主要包括:DES、3DES、IDEA、FEAL、BLOWFISH等。

DES 算法的数据分组长度为64 位,初始置换函数接受长度为64位的明文输入,密文分组长度也是64 位,末置换函数输出64位的密文;使用的密钥为64 位,有效密钥长度为56 位,有8 位用于奇偶校验。DES的解密算法与加密算法完全相同,但密钥的顺序正好相反。所以DES是一种对二元数据进行加密的算法。DES加密过程是:对给定的64 位比特的明文通过初始置换函数进行重新排列,产生一个输出;按照规则迭代,置换后的输出数据的位数要比迭代前输入的位数少;进行逆置换,得到密文。

DES 算法还是比别的加密算法具有更高的安全性,因为DES算法具有相当高的复杂性,特别是在一些保密性级别要求高的情况下使用三重DES 或3DES 系统较可靠。DES算法由于其便于掌握,经济有效,使其应用范围更为广泛。目前除了用穷举搜索法可以对DES 算法进行有效地攻击之外, 还没有发现 其它 有效的攻击办法。

IDEA算法1990年由瑞士联邦技术协会的Xuejia Lai和James Massey开发的。经历了大量的详细审查,对密码分析具有很强的抵抗能力,在多种商业产品中被使用。IDEA以64位大小的数据块加密的明文块进行分组,密匙长度为128位,它基于“相异代数群上的混合运算”设计思想算法用硬件和软件实现都很容易且比DES在实现上快的多。

IDEA算法输入的64位数据分组一般被分成4个16位子分组:A1,A2,A3和A4。这4个子分组成为算法输入的第一轮数据,总共有8轮。在每一轮中,这4个子分组相互相异或,相加,相乘,且与6个16位子密钥相异或,相加,相乘。在轮与轮间,第二和第三个子分组交换。最后在输出变换中4个子分组与4个子密钥进行运算。

FEAL算法不适用于较小的系统,它的提出是着眼于当时的DES只用硬件去实现,FEAL算法是一套类似美国DES的分组加密算法。但FEAL在每一轮的安全强度都比DES高,是比较适合通过软件来实现的。FEAL没有使用置换函数来混淆加密或解密过程中的数据。FEAL使用了异或(XOR)、旋转(Rotation)、加法与模(Modulus)运算,FEAL中子密钥的生成使用了8轮迭代循环,每轮循环产生2个16bit的子密钥,共产生16个子密钥运用于加密算法中。

2.2 非对称密钥加密技术

非对称密钥加密技术又称公开密钥加密,即非对称加密算法需要两个密钥,公开密钥和私有密钥。有一把公用的加密密钥,有多把解密密钥,加密和解密时使用不同的密钥,即不同的算法,虽然两者之间存在一定的关系,但不可能轻易地从一个推导出另一个。使用私有密钥对数据信息进行加密,必须使用对应的公开密钥才能解密,而 公开密钥对数据信息进行加密,只有对应的私有密钥才能解密。在非对称密钥加密技术中公开密钥和私有密钥都是一组长度很大、数字上具有相关性的素数。其中的一个密钥不可能翻译出信息数据,只有使用另一个密钥才能解密,每个用户只能得到唯一的一对密钥,一个是公开密钥,一个是私有密钥,公开密钥保存在公共区域,可在用户中传递,而私有密钥则必须放在安全的地方。

非对称密钥加密技术的典型算法是RSA算法。RSA算法是世界上第一个既能用于数据加密也能用于数字签名的非对称性加密算法,RSA算法是1977年由Ron Rivest、Adi Shamirh和LenAdleman在(美国麻省理工学院)开发的。RSA是目前最有影响力的公钥加密算法,它能够抵抗到目前为止已知的所有密码攻击,已被ISO推荐为公钥数据加密标准。

RSA算法的安全性依赖于大数分解,但现在还没有证明破解RSA就一定需要作大数分解。所以是否等同于大数分解一直没有理论证明的支持。由于RSA算法进行的都是大数计算,所以无论是在软件还是硬件方面实现相对于DES算法RSA算法最快的情况也会慢上好几倍。速度一直是RSA算法的缺陷。

3. 总结

随着计算机网络的飞速发展,在实现资源共享、信息海量的同时,信息安全达到了前所未有的需要程度,多媒体信息加密技术论文也凸显了其必不可少的地位,同时也加密技术带来了前所未有的发展需求,加密技术发展空间无限。

参考文献:

[1] IDEA算法 中国信息安全组织 2004-07-17.

看了“多媒体多媒体信息加密技术论文论文”的人还看:

1. ssl加密技术论文

2. 详解加密技术概念加密方法以及应用论文

3. 浅谈计算机安全技术毕业论文

4. 电子信息技术论文范文

5. 计算机网络安全结课论文

网络数据加密毕业论文

数据加密技术

-------------------------------------------------------------------------------

我们经常需要一种措施来保护我们的数据,防止被一些怀有不良用心的人所看到或者破坏。在信息时代,信息可以帮助团体或个人,使他们受益,同样,信息也可以用来对他们构成威胁,造成破坏。在竞争激烈的大公司中,工业间谍经常会获取对方的情报。因此,在客观上就需要一种强有力的安全措施来保护机密数据不被窃取或篡改。数据加密与解密从宏观上讲是非常简单的,很容易理解。加密与解密的一些方法是非常直接的,很容易掌握,可以很方便的对机密数据进行加密和解密。

一:数据加密方法

在传统上,我们有几种方法来加密数据流。所有这些方法都可以用软件很容易的实现,但是当我们只知道密文的时候,是不容易破译这些加密算法的(当同时有原文和密文时,破译加密算法虽然也不是很容易,但已经是可能的了)。最好的加密算法对系统性能几乎没有影响,并且还可以带来其他内在的优点。例如,大家都知道的pkzip,它既压缩数据又加密数据。又如,dbms的一些软件包总是包含一些加密方法以使复制文件这一功能对一些敏感数据是无效的,或者需要用户的密码。所有这些加密算法都要有高效的加密和解密能力。

幸运的是,在所有的加密算法中最简单的一种就是“置换表”算法,这种算法也能很好达到加密的需要。每一个数据段(总是一个字节)对应着“置换表”中的一个偏移量,偏移量所对应的值就输出成为加密后的文件。加密程序和解密程序都需要一个这样的“置换表”。事实上,80x86 cpu系列就有一个指令‘xlat’在硬件级来完成这样的工作。这种加密算法比较简单,加密解密速度都很快,但是一旦这个“置换表”被对方获得,那这个加密方案就完全被识破了。更进一步讲,这种加密算法对于黑客破译来讲是相当直接的,只要找到一个“置换表”就可以了。这种方法在计算机出现之前就已经被广泛的使用。

对这种“置换表”方式的一个改进就是使用2个或者更多的“置换表”,这些表都是基于数据流中字节的位置的,或者基于数据流本身。这时,破译变的更加困难,因为黑客必须正确的做几次变换。通过使用更多的“置换表”,并且按伪随机的方式使用每个表,这种改进的加密方法已经变的很难破译。比如,我们可以对所有的偶数位置的数据使用a表,对所有的奇数位置使用b表,即使黑客获得了明文和密文,他想破译这个加密方案也是非常困难的,除非黑客确切的知道用了两张表。

与使用“置换表”相类似,“变换数据位置”也在计算机加密中使用。但是,这需要更多的执行时间。从输入中读入明文放到一个buffer中,再在buffer中对他们重排序,然后按这个顺序再输出。解密程序按相反的顺序还原数据。这种方法总是和一些别的加密算法混合使用,这就使得破译变的特别的困难,几乎有些不可能了。例如,有这样一个词,变换起字母的顺序,slient 可以变为listen,但所有的字母都没有变化,没有增加也没有减少,但是字母之间的顺序已经变化了。

但是,还有一种更好的加密算法,只有计算机可以做,就是字/字节循环移位和xor操作。如果我们把一个字或字节在一个数据流内做循环移位,使用多个或变化的方向(左移或右移),就可以迅速的产生一个加密的数据流。这种方法是很好的,破译它就更加困难!而且,更进一步的是,如果再使用xor操作,按位做异或操作,就就使破译密码更加困难了。如果再使用伪随机的方法,这涉及到要产生一系列的数字,我们可以使用fibbonaci数列。对数列所产生的数做模运算(例如模3),得到一个结果,然后循环移位这个结果的次数,将使破译次密码变的几乎不可能!但是,使用fibbonaci数列这种伪随机的方式所产生的密码对我们的解密程序来讲是非常容易的。

在一些情况下,我们想能够知道数据是否已经被篡改了或被破坏了,这时就需要产生一些校验码,并且把这些校验码插入到数据流中。这样做对数据的防伪与程序本身都是有好处的。但是感染计算机程序的病毒才不会在意这些数据或程序是否加过密,是否有数字签名。所以,加密程序在每次load到内存要开始执行时,都要检查一下本身是否被病毒感染,对与需要加、解密的文件都要做这种检查!很自然,这样一种方法体制应该保密的,因为病毒程序的编写者将会利用这些来破坏别人的程序或数据。因此,在一些反病毒或杀病毒软件中一定要使用加密技术。

循环冗余校验是一种典型的校验数据的方法。对于每一个数据块,它使用位循环移位和xor操作来产生一个16位或32位的校验和 ,这使得丢失一位或两个位的错误一定会导致校验和出错。这种方式很久以来就应用于文件的传输,例如 xmodem-crc。 这是方法已经成为标准,而且有详细的文档。但是,基于标准crc算法的一种修改算法对于发现加密数据块中的错误和文件是否被病毒感染是很有效的。

二.基于公钥的加密算法

一个好的加密算法的重要特点之一是具有这种能力:可以指定一个密码或密钥,并用它来加密明文,不同的密码或密钥产生不同的密文。这又分为两种方式:对称密钥算法和非对称密钥算法。所谓对称密钥算法就是加密解密都使用相同的密钥,非对称密钥算法就是加密解密使用不同的密钥。非常著名的pgp公钥加密以及rsa加密方法都是非对称加密算法。加密密钥,即公钥,与解密密钥,即私钥,是非常的不同的。从数学理论上讲,几乎没有真正不可逆的算法存在。例如,对于一个输入‘a’执行一个操作得到结果‘b’,那么我们可以基于‘b’,做一个相对应的操作,导出输入‘a’。在一些情况下,对于每一种操作,我们可以得到一个确定的值,或者该操作没有定义(比如,除数为0)。对于一个没有定义的操作来讲,基于加密算法,可以成功地防止把一个公钥变换成为私钥。因此,要想破译非对称加密算法,找到那个唯一的密钥,唯一的方法只能是反复的试验,而这需要大量的处理时间。

rsa加密算法使用了两个非常大的素数来产生公钥和私钥。即使从一个公钥中通过因数分解可以得到私钥,但这个运算所包含的计算量是非常巨大的,以至于在现实上是不可行的。加密算法本身也是很慢的,这使得使用rsa算法加密大量的数据变的有些不可行。这就使得一些现实中加密算法都基于rsa加密算法。pgp算法(以及大多数基于rsa算法的加密方法)使用公钥来加密一个对称加密算法的密钥,然后再利用一个快速的对称加密算法来加密数据。这个对称算法的密钥是随机产生的,是保密的,因此,得到这个密钥的唯一方法就是使用私钥来解密。

我们举一个例子:假定现在要加密一些数据使用密钥‘12345’。利用rsa公钥,使用rsa算法加密这个密钥‘12345’,并把它放在要加密的数据的前面(可能后面跟着一个分割符或文件长度,以区分数据和密钥),然后,使用对称加密算法加密正文,使用的密钥就是‘12345’。当对方收到时,解密程序找到加密过的密钥,并利用rsa私钥解密出来,然后再确定出数据的开始位置,利用密钥‘12345’来解密数据。这样就使得一个可靠的经过高效加密的数据安全地传输和解密。

一些简单的基于rsa算法的加密算法可在下面的站点找到:

三.一个崭新的多步加密算法

现在又出现了一种新的加密算法,据说是几乎不可能被破译的。这个算法在1998年6月1日才正式公布的。下面详细的介绍这个算法:

使用一系列的数字(比如说128位密钥),来产生一个可重复的但高度随机化的伪随机的数字的序列。一次使用256个表项,使用随机数序列来产生密码转表,如下所示:

把256个随机数放在一个距阵中,然后对他们进行排序,使用这样一种方式(我们要记住最初的位置)使用最初的位置来产生一个表,随意排序的表,表中的数字在0到255之间。如果不是很明白如何来做,就可以不管它。但是,下面也提供了一些原码(在下面)是我们明白是如何来做的。现在,产生了一个具体的256字节的表。让这个随机数产生器接着来产生这个表中的其余的数,以至于每个表是不同的。下一步,使用"shotgun technique"技术来产生解码表。基本上说,如果 a映射到b,那么b一定可以映射到a,所以b[a[n]] = n.(n是一个在0到255之间的数)。在一个循环中赋值,使用一个256字节的解码表它对应于我们刚才在上一步产生的256字节的加密表。

使用这个方法,已经可以产生这样的一个表,表的顺序是随机,所以产生这256个字节的随机数使用的是二次伪随机,使用了两个额外的16位的密码.现在,已经有了两张转换表,基本的加密解密是如下这样工作的。前一个字节密文是这个256字节的表的索引。或者,为了提高加密效果,可以使用多余8位的值,甚至使用校验和或者crc算法来产生索引字节。假定这个表是256*256的数组,将会是下面的样子:

crypto1 = a[crypto0][value]

变量'crypto1'是加密后的数据,'crypto0'是前一个加密数据(或着是前面几个加密数据的一个函数值)。很自然的,第一个数据需要一个“种子”,这个“种子” 是我们必须记住的。如果使用256*256的表,这样做将会增加密文的长度。或者,可以使用你产生出随机数序列所用的密码,也可能是它的crc校验和。顺便提及的是曾作过这样一个测试: 使用16个字节来产生表的索引,以128位的密钥作为这16个字节的初始的"种子"。然后,在产生出这些随机数的表之后,就可以用来加密数据,速度达到每秒钟100k个字节。一定要保证在加密与解密时都使用加密的值作为表的索引,而且这两次一定要匹配。

加密时所产生的伪随机序列是很随意的,可以设计成想要的任何序列。没有关于这个随机序列的详细的信息,解密密文是不现实的。例如:一些ascii码的序列,如“eeeeeeee"可能被转化成一些随机的没有任何意义的乱码,每一个字节都依赖于其前一个字节的密文,而不是实际的值。对于任一个单个的字符的这种变换来说,隐藏了加密数据的有效的真正的长度。

如果确实不理解如何来产生一个随机数序列,就考虑fibbonacci数列,使用2个双字(64位)的数作为产生随机数的种子,再加上第三个双字来做xor操作。 这个算法产生了一系列的随机数。算法如下:

unsigned long dw1, dw2, dw3, dwmask;

int i1;

unsigned long arandom[256];

dw1 = {seed #1};

dw2 = {seed #2};

dwmask = {seed #3};

// this gives you 3 32-bit "seeds", or 96 bits total

for(i1=0; i1 256; i1++)

{

dw3 = (dw1 + dw2) ^ dwmask;

arandom[i1] = dw3;

dw1 = dw2;

dw2 = dw3;

}

如果想产生一系列的随机数字,比如说,在0和列表中所有的随机数之间的一些数,就可以使用下面的方法:

int __cdecl mysortproc(void *p1, void *p2)

{

unsigned long **pp1 = (unsigned long **)p1;

unsigned long **pp2 = (unsigned long **)p2;

if(**pp1 **pp2)

return(-1);

else if(**pp1 *pp2)

return(1);

return(0);

}

...

int i1;

unsigned long *aprandom[256];

unsigned long arandom[256]; // same array as before, in this case

int aresult[256]; // results go here

for(i1=0; i1 256; i1++)

{

aprandom[i1] = arandom + i1;

}

// now sort it

qsort(aprandom, 256, sizeof(*aprandom), mysortproc);

// final step - offsets for pointers are placed into output array

for(i1=0; i1 256; i1++)

{

aresult[i1] = (int)(aprandom[i1] - arandom);

}

...

变量'aresult'中的值应该是一个排过序的唯一的一系列的整数的数组,整数的值的范围均在0到255之间。这样一个数组是非常有用的,例如:对一个字节对字节的转换表,就可以很容易并且非常可靠的来产生一个短的密钥(经常作为一些随机数的种子)。这样一个表还有其他的用处,比如说:来产生一个随机的字符,计算机游戏中一个物体的随机的位置等等。上面的例子就其本身而言并没有构成一个加密算法,只是加密算法一个组成部分。

作为一个测试,开发了一个应用程序来测试上面所描述的加密算法。程序本身都经过了几次的优化和修改,来提高随机数的真正的随机性和防止会产生一些短的可重复的用于加密的随机数。用这个程序来加密一个文件,破解这个文件可能会需要非常巨大的时间以至于在现实上是不可能的。

四.结论:

由于在现实生活中,我们要确保一些敏感的数据只能被有相应权限的人看到,要确保信息在传输的过程中不会被篡改,截取,这就需要很多的安全系统大量的应用于政府、大公司以及个人系统。数据加密是肯定可以被破解的,但我们所想要的是一个特定时期的安全,也就是说,密文的破解应该是足够的困难,在现实上是不可能的,尤其是短时间内。

参考文献:

1 . pgp!

cyber knights(new link)

(old link: )

2 . crypto chamber

3 . ssh cryptograph a-z (includes info on ssl and https)

4 . funet' cryptology ftp (yet another finland resource)

a great enigma article, how the code was broken by polish scientists

5 . ftp site in uk

6 . australian ftp site

7 . replay associates ftp archive

8 . rsa data security (why not include them too!)

netscape's whitepaper on ssl

MD5算法的毕业设计

摘 要 随着计算机网络的普及,网络攻击、计算机犯罪也随之不断增多。尤其是针对缺少技术支持的个人用户。与公司机关等大型用户相比,个人用户的防护较简单,防护意识差,使得个人隐私容易泄露,网络侵权不断发生。如何满足个人用户的保密、加密需求,采用什么样的加密模型,就成为了值得研究的问题。本文通过研究现有的三维魔方加密,将三维三阶的魔方映射成用数组表示的虚拟魔方,仿照魔方的移动规律设计并改进了虚拟魔方的加密方式,该方式通过一定的随机步骤移动达到加密置乱的效果。在此基础上将虚拟魔方扩展到N维,分析了加密效率与加密强度随着维度增加的关系,同时结合主流破解方式,分析魔方加密的抗攻击能力。根据魔方加密的特性,找出魔方加密模型运用到文字加密上的不足,结合椭圆曲线加密算法改进N维魔方加密模型。并且针对汉字是象形文字与以字母为基础的拉丁语系不同的特性,加入伪随机数置乱,提高魔方加密对汉字的加密能力。在此研究基础上给出一个简单的实现,该实现是改进后的魔方加密模型。用该实现与DES算法进行对比试验,根据实验结果进行了加密性能和加密效率的总体算法分析。论文最后对全文进行了总结,并对后续工作进行了展望。 关键词:加密, N维, 魔方, 椭圆, 伪随机第一章 魔方加密算法设计与分析 1 1.1 魔方加密思想 魔方,于20世界70年代末期由匈牙利人Erno Rubik发明,是当时最著名的智力游戏。由3 * 3 * 3个方块组成,在整个魔方的每个小块暴露在外的面上刷有不同的颜色。任意一个3 * 3 * 1的面可以相对于其它面旋转或者扭曲90、180、270度。游戏目标状态是魔方的每一个面颜色调成一致,而任务就是把魔方还原成初始状态。魔方问题相当的复杂,有4.3252 * 1019种不同状态。如果采用魔方来加密的话,一个密钥对应一种状态。理论上密钥空间可以达到4.3252 * 1019 种,假设计算机一秒钟可以尝试255次密码的话,最糟糕的情况需要55.4亿年才能够完全破解。对于普通的个人用户来说,这样的加密强度已经是绰绰有余了,理论上魔方加密算法在个人文件加密上应该有很大的应用前景。但是,现在魔方加密的主要应用是在图像加密方面。 1.1 加密算法的对比与选择 两种加密方法的体制,总体来说主要有三个方面的不同:管理方面:公钥密码算法只需要较少的资源就可以实现目的,在密钥的分配上,两者之间相差一个指数级别(一个是n一个是n2)。所以私钥密码算法不适应广域网的使用,而且更重要的一点是它不支持数字签名。安全方面:由于公钥密码算法基于未解决的数学难题,在破解上几乎不可能。对于私钥密码算法,到了aes虽说从理论来说是不可能破解的,但从计算机的发展角度来看。公钥更具有优越性。速度上来看:aes的软件实现速度已经达到了每秒数兆或数十兆比特。是公钥的100倍,如果用硬件来实现的话这个比值将扩大到1000倍。 本文来源于:

几种常用数据加密算法的比较

几种对称性加密算法:aes,DES,3DES

DES是一种分组数据加密技术(先将数据分成固定长度的小数据块,之后进行加密),速度较快,适用于大量数据加密,而3DES是一种基于DES的加密算法,使用3个不同密匙对同一个分组数据块进行3次加密,如此以使得密文强度更高。

相较于DES和3DES算法而言,aes算法有着更高的速度和资源使用效率,安全级别也较之更高了,被称为下一代加密标准。

几种非对称性加密算法:RSA,DSA,ECC

RSA和DSA的安全性及其它各方面性能都差不多,而ECC较之则有着很多的性能优越,包括处理速度,带宽要求,存储空间等等。

几种线性散列算法(签名算法):MD5,SHA1,HMAC

这几种算法只生成一串不可逆的密文,经常用其效验数据传输过程中是否经过修改,因为相同的生成算法对于同一明文只会生成唯一的密文,若相同算法生成的密文不同,则证明传输数据进行过了修改。通常在数据传说过程前,使用MD5和SHA1算法均需要发送和接收数据双方在数据传送之前就知道密匙生成算法,而HMAC与之不同的是需要生成一个密匙,发送方用此密匙对数据进行摘要处理(生成密文),接收方再利用此密匙对接收到的数据进行摘要处理,再判断生成的密文是否相同。

对于各种加密算法的选用:

由于对称加密算法的密钥管理是一个复杂的过程,密钥的管理直接决定着他的安全性,因此当数据量很小时,我们可以考虑采用非对称加密算法。

在实际的操作过程中,我们通常采用的方式是:采用非对称加密算法管理对称算法的密钥,然后用对称加密算法加密数据,这样我们就集成了两类加密算法的优点,既实现了加密速度快的优点,又实现了安全方便管理密钥的优点。

如果在选定了加密算法后,那采用多少位的密钥呢?一般来说,密钥越长,运行的速度就越慢,应该根据的我们实际需要的安全级别来选择,一般来说,RSA建议采用1024位的数字,ECC建议采用160位,aes采用128为即可。

产品的开发快则一个月,慢则一年,那么如何杜绝市面上各种山寨也成为了我们必须要关注的问题,加密芯片可以做到这点,在保障开发者权益的同时也保护了消费者权益,KEROS加密芯片作为该领域的领头者,一直在尽力贡献一份力。特点如下:接口:标准I2C协议接口;算法: 标准aes256 / KAS算法;特殊接口:Random Stream Cipher for Interface;工作温度:工业级 -40℃ ~+85℃;频率:400Khz;存储:2K字节EEPROM(可选);电压:1.8V~3.6V;封装:SOT23-6,SOP8,TDFN-6。加密算法性能的比较研究论文的介绍就聊到这里吧,感谢你花时间阅读本站内容,谢谢。

本文标签:加密算法性能的比较研究论文

产品列表
产品封装
友情链接