混合加密算法在网络数据传输中的应用研究






文章关键词: 网络   数据加密   信息安全  
    针对网络数据传输安全问题,对比分析了对称加密算法和不对称加密算法的原理和优缺点,提出了混合加密的算法,保证网络数据传输的安全,在网络应用程序开发中有很强的借鉴意义。
     1.引言

  Internet是一个面向大众的开放系统,在其设计之初,对于在网络上所传输信息的安全考虑得并不完备,随着网络技术的飞速发展,由此引起的网络安全问题也就日益严重,如何保护网络上传输的信息,也即网络传输数据的安全问题显得越来越重要。

  凡是涉及到网络信息的机密性、真实性、可用性、完整性和可控性的相关理论和技术都属于网络信息安全的研究领域,信息安全技术主要包括加密、检测、认证、监控、扫描、审计等几个方面,在保障信息安全的诸多技术中,加密技术(信息加密、解密及其变换的科学)是信息安全的核心和关键技术,通过数据加密技术,可以在一定程度上提高数据传输的安全性,保证传输数据的完整性,是对信息进行保护的最可靠、最实用的方法。

  在B/S架构模式网络应用程序成为主流开发方向的今天,加密技术是保证传输数据安全的重要手段,数据在网络上传输前,需要对传输数据进行加密处理,密文到达目的地后,需要对密文进行解密处理以供程序使用,本文研究了对称加密和不对称加密两种算法在网络数据传输中的混合应用,从而保证传输信息的安全。

  2.加密技术

  在网络数据传输中,加密就是采用数学方法对待传输数据(明文)进行再组织,将信息伪装起来并隐藏它的内容,加密后的数据(密文)通过网络传输出去,在传输过程中即使被非法入侵者截获或窃取,只能得到无法理解的密文,防止非法入侵者获取信息系统中的机密信息,而对于合法接收者,因为其掌握正确的密钥,可以通过解密过程得到原始数据,从而保证信息的安全。

  加密技术涉及四项内容:明文、密文、算法和密钥,待加密的消息称作明文,加密后的消息称为密文,对明文进行各种代换和变换的运算称为算法,算法的不同运算可用不同的参数来表示,这些参数称为密钥,把明文转换为密文的过程称为加密,把密文还原为明文的过程称为解密,利用加密技术实现信息加密传输的过程如下图1所示。

  图1 信息加密传输过程

  3.加密算法

  加密算法按密钥方式分为两种:对称(Symmetric)加密算法和不对称(Asymmetric)加密算法。

  A.对称加密算法

  该算法又称为私钥加密算法,其使用相同的密钥和初始化矢量完成数据的加密和解密过程,根据加密的方式不同,对称加密可分为流密码和分组密码。在流密码中,将明文按字符一个一个地加密;在分组密码中,将明文分成若干个组,每组含多个字符,一组一组地加密。

  a.流密码

  将明文m写成连续的符号,利用密钥流中的第i个元素ki对应明文中的第i个元素mi进行加密,若加密变换为E,则加密后的密文c为:

  设与加密变换E对应的解密变换为D,其中D满足:则通过解密运算可获得明文m为:

  从而完成一次密码通信过程,其通信模式如下图2所示。

  图2 流密码通信模式

  b.分组密码

  分组密码将明文按一定的位长分组,输出也是固定长度的密文,明文组经过加密运算得到密文组,密文组经过解密运算还原成明文组。将明文x编码表示成数字序列x1,x2,…,xm之后,再划分成长度为m的组x=(x1,x2,…, xm),各组分别在密钥k=( k1,k2,…, kt)的控制下变换成长度为n的密文y=( y1,y2,…, yn),其通信模式如下图3所示。

  图3分组密码通信模式

  目前,国际上公开的分组密码算法有100多种,如:DES、AES、IDEA、SAFER等,典型算法是1977年美国国家标准局公布的DES算法。对称加密算法算法简单、加密速度快,但密钥管理复杂,适用于加密大量数据。

  B.不对称加密算法

  该算法又称为公钥加密算法,拥有两个不同的密钥,一个密钥用于加密数据,称为公开密钥(Public Key),而另一个不同但相关的密钥用于解密数据,称为私有密钥(Private Key)。在不对称加密算法中两个相关密钥中任何一个都可以用作加密而让另一个用作解密,仅仅知道加密算法和公开密钥而要确定解密密钥,在计算上是不可能的。

  公钥加密算法加解密过程的重要步骤:网络上的接收方产生一对用于将接收的报文进行加密和解密的密钥。(2)接收方把自己的加密密钥公布出来,这就是公开密钥K,另一个则是私有密钥D。如果A想给B发送一个报文,A就用B的公开密钥K加密报文。B收到密文后用自己的私有密钥D进行解密,其他收到这个密文的人都无法解密它,因为只有B才有相关的私有密钥D,公钥密钥加密过程如下图4所示。

  图4公钥密钥加密过程

  公钥加密算法的私有密钥是唯一可以解密用公开密钥加密的数据的密钥,私有密钥一般不在网络上传输,能够保证数据的安全,任何时候,都可以更改它的私有密钥并公开相应的公开密钥来替代它原来的公开密钥。常用的公钥加密算法有RSA和DSA,其中著名的是RSA算法,其由Rivest、Shamir和Adleman于1977年提出,因而得名RSA,不对称加密算法加密强度高,信息安全性好,管理简单,但算法复杂,加密速度慢,适合加密少量数据和网络传输。

  4.NET加密服务类

  .NET Framework通过System.Security.Cryptography命名空间封装复杂加密算法提供了保证数据安全的加密服务类,实现密钥管理、加密和解密数据、验证数据的完整性以确保数据没有被篡改等功能。利用.NET Framework 提供的加密服务类,使我们可以开发安全的网络应用程序,保证传输数据的安全。

  .NET Framework提供了:①DESCryptoServiceProvider,② RC2CryptoServiceProvider

  ③ RijndaelManaged,④ TripleDESCryptoServiceProvider四个类实现私钥加密算法,使用这些类,实现网络传输数据私钥加密的功能。.NET Framework 提供了:①DSACryptoServiceProvider,②RSACryptoServiceProvider两个类实现公钥加密算法,利用这些类,实现网络传输数据公钥加密的功能。同时提供了RNGCryptoServiceProvider类,实现使用随机数生成器生成密钥的功能。

  5.混合加密算法

  DES算法是典型的对称加密算法,计算花费少,加密速度快,但安全性不高,存在容易被暴力破解的危险,RSA算法是典型的不对称加密算法,安全性高,但计算花费多,加密速度慢。鉴于对称加密算法和不对称加密算法的优缺点,在DES算法的基础上,使用RSA算法加解密对称密钥,保证对称密钥的安全,对称密钥加密传输数据,通过混合加密(即DES用于明文加密,RSA用于DES对称密钥加密)及两次传送,从而实现安全可靠,快速加密的目的。

  发送方向接收方发送数据之前,首先公布一个公开密钥,接收方用发送方提供的公开密钥加密接收方的对称密钥并回传给发送方,发送方用私有密钥解密接收方的对称密钥并用接收方的对称密钥加密需要传输的数据发送给接收方,接收方用对称密钥解密发送方传递过来的数据,从而完成一次数据传输任务,反之亦然,混合加密算法通信模式如下图5所示。

  图5 混合加密算法通信模式

  其对应的具体工作流程如下:

  ①发送方建立与接收方的链接并发布公开密钥给接收方。

  ②接收方从发送方接收公开密钥并用公开密钥加密对称密钥。

  ③接收方把加密后的对称密钥回传给发送方。

  ④发送方用私有密钥解密接收方加密过的对称密钥。

  ⑤发送方用解密的对称密钥加密要传输的数据。

  ⑥发送方通过网络把加密数据发送给接收方。

  ⑦接收方用对称密钥解密发送方传输过来的加密数据,完成一次混合加密数据处理过程。

  混合加密算法利用对称加密算法的快速和不对称加密算法的安全等优点,弥补了两种算法的不足,从而保证了网络传输数据的安全,在网络应用程序开发中有很强的借鉴意义。
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值