网络数据传输加密方案

2024-10-27

网络数据传输加密方案(精选11篇)

网络数据传输加密方案 篇1

随着网络信息流量的不断增大, 网络数据库在各行各业的应用范围也在逐渐扩大。云计算以及大数据技术的进步, 更是加大了互联网数据库的容量。从一些企业商业机密或者国家重要网站资料被泄密的案例来看, 网络数据库的安全性存在一定的问题。在这种情况下, 网络数据库的安全性日渐受到人们的重视。现阶段网络数据库已经成了很多企业或者个人存储资料数据的重要平台, 因此在防范黑客攻击方面, 迫切需要提高数据库的加密级别。

1 国内外数据库加密技术研究的基本概况

1.1 数据库加密算法研究

(1) 秘密同态技术。

秘密同态技术发展较早, 早在上世纪九十年代就有很多科学家开始使用这种基于秘密同态函数的算法, 对计算机网络传输的数据或者进行加密。这种加密技术, 在实际使用过程中, 有如下优点:第一, 在对加密数据进行运算时, 可以不用解密直接进行。这就在较大程度上降低了数据的处理成本;第二, 使用秘密同态技术, 对数据进行加密时, 可以提高数据的操作性, 这对于处理数据库的庞杂数据来说, 是非常有利的。

不过秘密同态技术, 在实际使用过程中, 还存在一些值得注意的问题。例如, 在抵抗入侵、攻击方面的能力不是很强, 因为这种加密技术, 是基于同态函数的, 而对于同态函数的破解, 通过线性方程组即可解密。在一些专门研究破解技术的计算机科学领域, 对于同态加密技术, 已经有了比较系统化的专业破解技术。再如, 同态加密技术虽然使用成本较低, 但是对于受到病毒入侵后, 造成损失的代价来说, 其成本的优势已经显得微乎其微, 并且在构建加密函数方面, 同态加密技术难度系数较大, 并且数据库的程序也十分复杂。

(2) 子密钥技术。

在2000年左右, 一些计算机领域的科学家开始提出子密钥加密技术。该技术的主要原理是, 在充分掌握数据库技术特点的基础上, 对数据程序的记录单位, 做加密处理, 这个记录单位, 是加密程序的关键。

对于这种加密数据的解密, 需要处理其中的字段, 并且只能是以单向数据库进行解密。在实际解密过程中, 加密的密钥与解密的密钥有着较大的区别, 具体来说, 加密的密钥更侧重于整个数据的记录, 而解密密钥只是对单个数据的子密钥。从技术特点上来看, 子密钥技术在实际使用过程中, 对于数据库中数据的解密, 只用一次模运算即可, 这就在很大程度上提高了提高了解密的效率。与此同时, 可以对子密钥的算法进行升级, 可以对相关的数据、程序进行必要的修改, 以及增加或删减。子密钥技术比较明显的缺陷就是, 处理大量数据库数据时, 由于记录众多, 单个记录生成的加密密钥数量过大, 不利于进行科学有效的管理。

1.2 密钥管理研究

在网络数据库加密过程中, 密钥的管理是一项非常重要的工作。从现阶段的研究情况来看, 主要的研究成果如, 字段一级数据库加密的密钥管理方法、对数据库进行加密的密钥设计方案、数据库加密的管理工作等。这些相关的研究, 对于解决密钥管理中, 出现的一些问题, 有着很大的帮助作用。随着现代网络数据库技术的日益进步, 对于加密技术的要求也越来越高。

2 网络数据库加密的相关技术

网络数据库加密, 主要有如下两个方面的内容:第一, 存储过程中的数据加密, 也就是人们通常所说的静态数据加密;第二, 传输过程中的数据加密, 这种加密也称之为动态数据加密。静态数据加密, 主要就是对数据库的服务器进行数据加密, 而动态数据加密, 就是对数据的传输过程进行加密, 这个过程包含网络数据传输的各个阶段, 主要目的就是为了保障客户数据的安全。

2.1 网络数据库加密技术的要求

现代网络数据库的数据存储量很大, 并且数据的存储时间也比较长, 根据这些特点, 在对网络数据库进行加密时, 首先要考虑的就是数据信息的安全性, 可以说, 安全性是对数据加密的最主要目的。由于数据在网络数据库中的存储时间较长, 因此, 在这种情况下, 就需要提高加密数据的强度。对于具体的数据来说, 就算一些密文不慎丢失, 如果没有相关的密钥, 也同样不能获取数据信息的真实内容。第二是高效性, 现代网络数据库信息量巨大, 如果加密技术的运作运行效率较慢, 则不能胜任大量的数据加密任务。因此, 对于加密技术的要求, 应该保证其操作的简单和高效率的工作。

2.2 网络数据库加密系统的功能

(1) 身份认证。身份的认证是实现网络数据库系统使用安全的基础, 访问控制是通过身份认证实现的, 网络用户在访问前需要提供正确的凭证进入网络数据库系统。对于一些陌生的身份, 数据库会予以自动识别, 拒绝访问, 这就大大降低了数据库外部人员, 泄露信息的几率。

(2) 数据储存加密。网络数据库系统对数据采用顶级加密的方式, 数据库中的不同记录以及每条记录的不同字段都需采用不同的密钥进行加密, 同时制定有效的检查措施保证数据库中数据的保密性, 避免数据被随意篡改和窃取。

(3) 数据库的加密设置。大量的数据储存加大了数据加密的难度, 然而在数据库中有很多数据是不需要加密的, 因此针对网络用户的需要只对重要数据进行加密。网络数据库加密系统进行数据库加密设置, 用户自主设置需要加密的数据库, 提高网络用户使用效率的同时也增强了数据库系统的安全性。

(4) 密钥管理。密钥的安全性往往影响着网络数据库的安全性, 由此可见密钥管理的重要性。加之网络数据库中的数据储存量大使得密钥的数量大, 对密钥的管理比较困难, 因而网络数据库加密系统应当设置科学安全的密钥管理功能。

(5) 安全备份。对于网络数据库中的内容, 一些重要的信息数据资料, 需要进行备份, 因为网络数据库有时会因为一些意外因素, 导致全部或者部分数据的丢失, 所以对于用户来说, 要对重要的信息数据进行备份。

2.3 加密算法

加密算法是实现网络数据库加密的关键, 对数据库加密的安全性有着直接的影响。加密算法的要求是密文的频率平衡、无规律可循、周期长而无重复现象, 遵循这些要求攻击者就难以从中分析出密文和密钥。现代密码学中主要包括对称密码和非对称密码, 而在实际网络数据库加密过程中, 则会将对称密码用于数据的加密, 非对称密码用于密钥的加密。其中对称加密算法包括序列加密和分组加密, 序列加密的安全性取决于密钥序列, 而分组加密是一次对一组固定长度数据用相同的密钥以及加密函数进行加密, 这种加密算法在网络数据库加密中的应用较为广泛。

3 结束语

网络数据库技术的快速发展, 在很大程度上降低了人们存储数据的成本, 一些传统的数据存储方式, 需要很多硬件设备, 而网络数据库以其开放性、及时性和高效性等优点, 得到了众多用户的信赖。不过对于一些重要的信息资料, 尤其是近些年来发生的一些信息失窃等现象, 对网络数据库的安全问题提出了警示。因此, 网络数据库的加密技术就变得非常重要。通过实际的网络数据库加密处理的经验可以得知, 网络数据库加密技术的运用应当将数据库的特点作为重要依据, 满足网络数据库对安全性的需求, 网络数据库系统的建立需要多方面的合理结合才能有效的保证数据库的安全性和高效性。

摘要:互联网技术迅速的发展, 提高了信息的传输效率。可以说, 目前互联网的发展, 已经在很大程度上影响了我们的生活, 以互联网+为代表的新型产业异军突起, 在我国的经济结构升级转型时期, 发挥着非常重要的作用。可以说, 在这个互联网几乎连接一切的时代, 网络信息的安全显得日益重要。基于此, 重点对网络数据库加密技术进行简要分析, 希望对互联网信息的安全提供一定的借鉴。

关键词:互联网信息,网络数据库,加密技术,密钥管理

参考文献

[1]潘华, 王淑营, 孙林夫, 等.面向产业链协同SaaS平台多源信息动态集成安全技术研究[J].计算机集成制造系统, 2015, (03) .

[2]徐芳, 冯炜锐.煤矿中网络数据库的加密技术研究与应用[J].煤炭技术, 2013, (08) .

[3]朱明.网络安全技术的发展现状及发展趋势[J].网络安全技术与应用, 2015, (02) .

[4]衣李娜.探讨ASP.NET网站开发中常用的加密技术[J].信息安全与技术, 2015, (04) .

网络数据传输加密方案 篇2

随着我国信息技术的快速发展以及企业管理信息化的提高,越来越多的企业将其信息利用计算机进行处理,从而其安全成为企业关注的重点。在计算机的网络安全中,由于不法分子、病毒等因素的影响,使得计算机的安全网络存在问题,进而影响企业的数据安全,更有甚者一旦企业的数据泄露就会对企业造成严重的经济损失。因此,加强计算机网络安全中的数据加密技术,通过其加密技术的使用,保障数据的安全和严密,进而提高计算机网络安全系数。

2数据加密技术的概述

在计算机的网络安全管理中,数据加密技术作为保障其信息安全的重要措施,对于数据传输的安全交流有着重要的作用。例如在计算机中,一些不法分子通过非法入侵、监控和监视等手段获取计算机的IP地址以及用户名等资料,进而对计算机中的数据进行窃取,使得计算机的数据出现泄漏和丢失的现象。

浅谈计算机网络中的数据加密 篇3

关键词:计算机;网络;信息;数据加密

中图分类号:TP393.08 文献标识码:A文章编号:1007-9599(2012)01-0000-02

Data Encryption in Computer Networks

Liu Xiangfei

(College of Applied Science and Technology of Hainan University,Haikou571101,China)

Abstract:This paper introduces the basic principles of data encryption,and more detail on the symmetric data encryption technology, non-symmetric data encryption and public key data encryption data encryption technology and their applications are discussed.

Keywords:Computer;Network;Information;Data encryption

随着计算机网络通信的快速发展和普及,其开放性、互联性、终端分布不均匀性、自身的薄弱性及各种人为因素,数据加密是现在网络通信中不可或缺的技术。而今人们越来越依赖网络信息,也就使得网络信息安全成为计算机网络安全的主要问题,即人们越来越看重对信息数据所采取的加密技术。加密技术也正是在这种信息安全的要求下发展起来的,是保证信息交换安全的必要手段。

一、计算机网络加密技术原理

实际上,网络中应用系统的任何服务都是基于数据的传输来运行的,可见数据的安全性对整个网络稳定运行的重要程度。其原理是对信息进行重新编码,达到隐藏真实数据的目的,使非相关人员无法获取真实数据的内容的一种技术手段,主要应用于信息鉴别、数字签名等技术中。一般来讲计算机网络中的数据加密的一般模型如下:从A向B传输数据,以防E从中获取此信息,因而在A端进行加密,再以密文的形式向B传送数据,B端得到密文后便解密,从而得到原数据,模型如下图1所示:

图1 加密通信模型

二、现代密码学加密体制

现代密码学对于信息数据的加密和解密都采用函数的概念进行,其分类方法是依据密钥的类型而分类。

(一)对称密钥算法

对称密钥算法也称为传统密码算法,在对称密钥算法中,加密密钥Ke和解密密钥Kd相同或相近,由其中一个很容易得出另一个,加密密钥和解密密钥都是保密的。在大多数对称密钥算法中,加密密钥和解密密钥是相同的,即Ke=Kd=K,对称密钥算法的算法是公开的,其安全性依赖于密钥的安全。

在计算机网络中广泛使用的对称加密算法有DES、TDEA、IDEA、AES等。

其中,DES(Data Encryption Standard,数据加密标准)是具有代表性的一种算法,它采用的是以56位密钥对64位数据进行加密的算法,被公认为世界上第一个实用的密码算法标准,具有算法容易实现、速度快、通用性强等优点。DES的缺点是密钥位数太短,而且算法是对称的,使得这些密钥中存在一些弱密钥和半弱密钥,因此容易被采用穷尽密钥方法解密,而且由于DES算法完全公开,其安全性完全依赖于对密钥的保护,因此,其密钥管理过程非常复杂,不适合在网络环境下单独使用。

(二)非对称密钥算法

非对称密钥算法也叫做公开密钥算法。在该算法中,信息发送方和接收方所使用的密钥是不同的,即加密密钥Ke与解密密钥Kd不同,并且由其中的一个很难导出另一个。其中一个密钥是公开的,称为公钥,另一个密钥是保密的,称为私钥。通常,加密密钥是公开的,解密密钥是保密的,加密和解密的算法也是公开的。

常用的公钥加密算法有:RSA算法、ElGamal算法、背包算法、拉宾(Rabin)算法和散列函数算法(MD4、MD5)等。

RSA算法是典型的非对称密钥密码算法,利用非对称密钥密码算法进行加密和数字签名的大多数场合都使用RSA算法,其安全性建立在难于对大数进行质因数分解的基础上,因此大数是否能够被分解是RSA算法安全的关键。由于用RSA算法进行的都是大数运算,使得RSA算法无论是用软件实现还是硬件实现,其速度要比DES慢得多。因此,RSA算法一般只用于加密少量数据。

三、计算机网络中数据加密技术的应用

计算机网络中对数据进行的加密可以有效的防止非法人来窃取信息的目的。而要如何应用数据加密技术,首要问题是确定加密目标,即需明确下述问题:在什么设备上有什么机密信息;机密信息的存储位置及存储类型;机密信息在局域网传输中是否安全;网络通信过程中是是否带有机密信息,通过这四点来确定加密目标,然后便是选择加密方案,一般有以下几种网络信息加密方案。

(一)对称数据加密技术

此技术是在加密和解密过程中使用同一个密钥,这种加密技术的前提条件是必须保证密钥未泄露,如此才能确保数据交流的完整性和保密性,此加密过程较易实现。对称数据加密技术有一典型算法数据加密标准,即DES,其是分组对称式的加密解密算法,是一种处理二元数据的加密算法,其主要原理是采用64位密钥对64位数据进行加密或解密,其在加密或解密过程中有一系列的转换和代换操作:第一步,首先将数据划分成64位的分组,使用56位长度的密钥,另8位密钥用于奇偶检验;第二步,对每一组采用应的密钥来进行异或运算等过程,以得到64位的加密数据,对每个分组的处理过程要经19步进行,每次的输出即是下一步的输入,如此类推直至使用完K(16),然后进行逆初始转换操作,此算法的加密过程便完成。此算法的加密方式并不是绝对安全,其较短的密钥长度,在因特网的分布式计算能力面前难以承受住攻击,因而要满足数据加密安全性的需求,增加算法的密钥长度成为必然,这些变异的算法大多是DES算法的变异如3DES。对称数据加密技术还有一典型算法AES,其与DES有所不同的是密钥长度较长,在网络通信过程中具有高安全性、高性能、高效率等特点,其同样采用对称分组密码体制,设计密钥长度有128、192、256位,此算法是目前美国高级加密标准算法,是下一代加密算法标准。

(二)非对称数据加密技术

此算法是在加密和解密过程中使用不同的密钥,一般分为“公钥”、“私钥”,顾名思义,公钥是允许公开,采用此加密技术,只需要收件人采用私钥对密文进行解密即可,可以有效的防止信息泄露或窃听。该加密技术有一典型算法RSA密钥机制,其加密操作步骤为:1)对所有字母重新制定新的编码;2)选定一较大的数字n,n=p*q,p、q分别为较大的素数;3)寻找到一数k,使(k,(p-1)*(q-1))=1,此k即加密密钥;4)将所要传输数据划分成多个部分,如可以在数据中将每个字母当作一部分;5)对每组的数据二进制编码以连接起来并转换成整数;6)对每组求其k次方,同时进行模n运算,此时密文便已形成。解密过程步骤:只需寻找出数m使得k*m=1mod((p-1)*(q-1))即可。k的数值便是解密密钥。

此算法的密钥较长,因而其安全性良好,但因加密计算量庞大导致加密速度缓慢,也就限制了其应用范围。一情况下,往往结合DES与RSA两种算法的优势,弥补各自缺点,如利用DES加密速度快的优点来对明文进行加密,然后利用RSA的安全性特点来加密DES密钥,以解决DES密钥管理问题,此类算法结合的应用非常广泛。

(三)公开密钥的数据加密技术

此技术拥有两不同的密钥,一是加密密钥,是用于加密数据;二是解密密钥,是用于解密数据。两个密钥往往成对出现,其数学相关性非常强,不过两个密钥均不能相互推算出对方来。数据信息被加密过后,密文只能由相应的解密密钥才能获取真实信息的内容。在加密和解密过程中的运算可以相互对调。此算法往往与非对称数据加密算法结合起来,如RSA算法,两者的结合可以有效的减少计RSA大量的计算量。

四、数据加密技术的应用

计算机网络中有各种典型的应用加密技术的活动,如在电子商务、软件保护等。现今,电子商务要求顾客在网络上进行各种商务活动而不必为信用卡或帐号被盗而担心,以往大多商务活动都是基于电话定货之后再使用信用卡付款来完成。RSA加密技术有效的保证了信用卡交易的安全。软件是智力劳动的结晶,因而有效的措施来防止软件被盗用是必须的,是现今知识经济时代所要求的。用户从网络得到软件资源之后,往往都会有免费使用时间限制,一旦过期便需要注册才可以继续使用,用户注册时获得相应的注册码,在特定的步骤下填写注册码并通过软件验证其合法性之后,才能延续使用时间或解除使用限制。一般情况下非对称数据加密技术软件注册机制可以很好的防治破解软件注册以达到保护软件的目的。

五、结束语

信息时代降临,网络中不乏恶意攻击、木马病毒的冲击,网络通信安全被高度重视起来,操作系统和防火墙都无法阻挡住黑客的进攻,许多病毒防治措施往往都是从经验上来判断,这对大众而言,总是免不了遭受各种网络信息安全威胁。因此,在现有的防护体系下,网络安全应该提升到新的保护层次,以有效的保证用户的信息。

参考文献:

[1]周黎明.计算机网络的加密技术[J].科技信息(科学教研),2007(22)

[2]赵义祥,基于计算机网络的数据安全技术及加密算法分析[J]. 科技经济市场,2006(02)

网络安全和数据加密技术 篇4

随着网络技术的发展网络安全性问题日益突出, 网络安全对策研究显得尤为重要。现代电脑加密技术为一般电子商务活动提供了安全保障, 如在网络中进行文件传输、电子邮件往来和进行合同文本的签署等。虽然各种网络安全产品的名称和功能各种各样, 但其无一例外地要使用加密技术, 加密技术的安全性对产品起着至关重要的作用。一个好的加密算法首先表现在它的安全性上;其次要考虑到它在软硬件方面实现的难易度;第三要看使用此加密算法时会不会影响到数据的传输速度, 致使传输速度太慢。

1 信息加密技术

信息加密技术是所有网络上通信安全所依赖的技术, OS (开放系统互联) 参考模型的七层协议体系结构的提出, 最终确定了网络环境的信息安全框架, 在OSI不同层次可以采用不同的安全机制来提供不同的安全服务。网络加密也是网络信息安全的基本技术之一, 理论上数据加密可以在OSI的任意一层实现, 实际应用中加密技术主要有链路加密、节点加密和端对端加密等3种方式, 它们分别在OSI不同层次使用加密技术。

1.1 链路加密

链路加密是传输数据仅在物理层前的数据链路层进行加密。加密设备对所有通过的数据加密, 这种加密方式对用户是透明的, 接收方是传送路径上的各台节点机, 信息在每台节点机内都要被解密和再加密, 依次进行, 直至到达目的地。主要用以对信道或链路中可能被截获的部分进行保护。

对于在两个网络节点间的某一次通信链路, 链路加密能为网上传输的数据提供安全保证。对于链路加密 (又称在线加密) , 所有消息在被传输之前进行加密, 在每一个节点对接收到的消息进行解密, 然后先使用下一个链路的密钥对消息进行加密, 再进行传输。在到达目的地之前, 一条消息可能要经过许多通信链路的传输。

由于在每一个中间传输节点消息均被解密后重新进行加密, 因此, 包括路由信息在内的链路上的所有数据均以密文形式出现。这样, 链路加密就掩盖了被传输消息的源点与终点。由于填充技术的使用以及填充字符在不需要传输数据的情况下就可以进行加密, 这使得消息的频率和长度特性得以掩盖, 从而可以防止对通信业务进行分析。

尽管链路加密在计算机网络环境中使用得相当普遍, 但它并非没有问题。链路加密通常用在点对点的同步或异步线路上, 它要求先对在链路两端的加密设备进行同步, 然后使用一种链模式对链路上传输的数据进行加密。这就给网络的性能和可管理性带来了副作用。在线路/信号经常不通的海外或卫星网络中, 链路上的加密设备需要频繁地进行同步, 带来的后果是数据丢失或重传。另一方面, 即使仅一小部分数据需要进行加密, 也会使得所有传输数据被加密。而网络节点地理分布的广阔性使得这一过程变得复杂, 同时增加了密钥连续分配时的费用。

1.2 节点加密

链路加密的全部报文都以明文形式通过各节点的处理器, 在节点数据容易受到非法存取的危害。节点加密是对链路加密的改进, 在协议运输层上进行加密, 加密算法要组合在依附于节点的加密模块中, 所以明文数据只存在于保密模块中, 克服了链路加密在节点处易遭非法存取的缺点。

尽管节点加密能给网络数据提供较高的安全性, 但它在操作方式上与链路加密是类似的, 两者均在通信链路上为传输的消息提供安全性;都在中间节点先对消息进行解密, 然后进行加密。因为要对所有传输的数据进行加密, 所以加密过程对用户是透明的。然而, 与链路加密不同, 节点加密不允许消息在网络节点以明文形式存在, 它先把收到的消息进行解密, 然后采用另一个不同的密钥进行加密, 这一过程是在节点上的一个安全模块中进行。

节点加密要求报头和路由信息以明文形式传输, 以便中间节点能得到如何处理消息的信息。因此这种方法对于防止攻击者分析通信业务是脆弱的。

1.3 端对端加密

端对端加密是把加密设备放在网络层和传输层之间或在表示层以上对传输的数据加密, 用户数据在整个传输过程中以密文的形式存在, 不需要考虑网络低层, 下层协议信息以明文形式传输, 由于路由信息没有加密, 易受监控分析。

采用端对端加密是在应用层完成, 即传输前的高层中完成。除报头外的的报文均以密文的形式贯穿于全部传输过程。只是在发送端和最终端才有加、解密设备, 而在中间任何节点报文均不解密, 因此, 不需要有密码设备。同链路加密相比, 可减少密码设备的数量。另一方面, 信息是由报头和报文组成的, 报文为要传送的信息, 报头为路由选择信息。由于网络传输中要涉及到路由选择, 在链路加密时, 报文和报头两者均须加密。而在端对端加密时, 由于通道上的每一个中间节点虽不对报文解密, 但为将报文传送到目的地, 必须检查路由选择信息, 因此, 只能加密报文, 而不能对报头加密。这样就容易被某些通信分析发觉, 而从中获取某些敏感信息。

1.4 加密传输方式的比较

数据保密变换使数据通信更安全, 但不能保证在传输过程中绝对不会泄密。因为在传输过程中, 还有泄密的隐患。

采用链路加密方式, 从起点到终点, 要经过许多中间节点, 在每个节点地均要暴露明文 (节点加密方法除外) , 如果链路上的某一节点安全防护比较薄弱, 那么按照木桶原理 (木桶水量是由最低一块木板决定) , 虽然采取了加密措施, 但整个链路的安全只相当于最薄弱的节点处的安全状况。

采用端对端加密方式, 只是发送方加密报文, 接收方解密报文, 中间节点不必加、解密, 也就不需要密码装置。此外, 加密可采用软件实现, 使用起来很方便。在端对端加密方式下, 每对用户之间都存在一条虚拟的保密信道, 每对用户应共享密钥 (传统密码保密体制, 非公钥体制下) , 所需的密钥总数等于用户对的数目。对于几个用户, 若两两通信, 共需密钥n* (n-1) /2种, 每个用户需 (n-1) 种。这个数目将随网上通信用户的增加而增加。为安全起见, 每隔一段时间还要更换密钥, 有时甚至只能使用一次密钥, 密钥的用量很大, 代价很高。

总之, 链路加密对用户来说比较容易, 使用的密钥较少, 而端———端加密比较灵活, 用户可见。对链路加密中各节点安全状况不放心的用户也可使用端———端加密方式。不同加密方式在网络层次中侧重点不同, 网络应用中可以将链路加密或节点加密同端对端加密结合起来, 可以弥补单一加密方式的不足, 从而提高网络的安全性。

2 加密技术

现代的电脑加密技术就是适应了网络安全的需要而应运产生的, 它为我们进行一般的电子商务活动提供了安全保障。如在网络中进行文件传输、电子邮件往来和进行合同文本的签署等。

2.1 对称加密技术

在对称加密方法中, 对信息的加密和解密都使用相同的密钥。也就是说, 一把钥匙开一把锁。使用对称加密方法将简化加密的处理, 双方都不必彼此研究和交换专用的加密算法, 而是采用相同的加密算法并只交换共享的专用密钥。如果进行通信的双方能够确保专用密钥在密钥交换阶段未曾泄露, 那么机密性和报文完整性就可以通过对称加密方法加密机密信息, 通过随报文一起发送报文摘要或报文散列值来实现。对称加密技术存在着在通信的双方之间确保密钥安全交换的问题。

比较著名的对称加密算法有:美国的DES及其各种变形, 比如Triple DES, GDES, New DES和DES的前身Lucifer;欧洲的IDEA;日本的FEAL N, LOKI 91, Skipjack, RC4, RCS以及以代换密码和转轮密码为代表的古典密码等。在众多的常规密码中影响最大的是DES密码。

数据加密标准 (DES) 由美国国家标准局提出, 是目前广泛采用的对称加密方式之一, 主要应用于银行业中的电子资金转账 (EFT) 领域。DES的密钥长度为56位。三重DES是DES的一种变形。这种方法使用两个独立的56位密钥对交换的信息 (如EDI数据) 进行3次加密, 从而使其有效密钥长度达到112位。RC2和RC4方法是RSA数据安全公司的对称加密专利算法。RC2和RC4不同于DES, 它们采用可变密钥长度的算法。通过规定不同的密钥长度, RC2和RC4能够提高或降低安全的程度。

2.2 非对称加密

公共密钥加密技术的不对称加密技术:允许任何人对信息进行加密处理后, 将它发送给另一个人, 而不需要预先交换密钥。但该过程对于互相了解的或属于同一组织的两个人之间是不可行的。在公共密钥加密过程中, 实现Internet上的敏感数据报文的交换, 需要提供两种密钥支持:公共密钥和私人密钥。公共密钥是由其主人加以公开的, 而私人密钥必须保密存放。为发送一份保密报文, 发送者必须使用接收者的公共密钥对数据进行加密, 一旦加密, 只有接收方用其私人密钥才能加以解密。

比较著名的公钥密码算法有:Rs A、背包密码、Mc Eliece密码、Diffe Hellman, Rabin, Ong Fiat Shamir、零知识证明的算法、椭圆曲线、EIGamal算法等等。最有影响的公钥密码算法是RSA, 它能抵抗到目前为止已知的所有密码攻击。

2.3 混合密钥加密技术

PGP加密系统是采用公开密钥加密与传统密钥加密相结合的一种加密技术。它使用一对数学上相关的钥匙, 其中一个 (公钥) 用来加密信息, 另一个 (私钥) 用来解密信息。

实际上是RSA和传统加密的杂合算法。因为RSA算法计算量极大, 在速度上不适合加密大量数据, PGP实际上用来加密的不是RSA本身, 而是采用了一种叫IDEA的传统加密算法。传统加密, 一般来说就是用一个密匙加密明文, 然后用同样的密匙解密。这种方法的代表是DES, 也就是乘法加密, 它的主要缺点就是密匙的传递渠道解决不了安全性问题, 不适合网络环境邮件加密需要。IDEA的加 (解) 密速度比RSA快得多, 所以实际上PGP是以一个随机生成密匙 (每次加密不同) 用IDEA算法对明文加密, 然后用RSA算法对该密匙加密。这样收件人同样是用RSA解密出这个随机密匙, 再用IDEA解密邮件本身。这样的链式加密就做到了既有RSA体系的保密性, 又有IDEA算法的快捷性。PGP利用这种链式加密, 既保证了保密性, 又保证了加密的速度。

鉴于对称加密技术和公开密钥加密技术的特点:对称密钥加密技术的处理速度快, 公钥加密技术的保密性较好。所以, 在电子商务中, 最好采用两者相结合的混合加密技术, 即结合使用DES/IDEA和RSA, 在网络中传输的数据可用DES或IDEA加密, 而加密用的密钥可用RSA加密传送。

3 未来加密技术的发展方向

3.1 生物识别技术

生物识别技术 (Biometric Identification Technology) 就是, 通过计算机与光学、声学、生物传感器和生物统计学原理等高科技手段密切结合, 利用人体固有的生理特性, (如指纹、脸象、红膜等) 和行为特征 (如笔迹、声音、步态等) 来进行个人身份的鉴定。

生物识别技术比传统的身份鉴定方法更具安全、保密和方便性。生物特征识别技术具有不易遗忘、防伪性能好、不易伪造或被盗、随身“携带”和随时随地可用等优点。生物特征是唯一的 (与他人不同) , 可以测量或可自动识别和验证的生理特性或行为方式, 分为生理特征和行为特征。生物识别系统对生物特征进行取样, 提取其唯一的特征并且转化成数字代码, 并进一步将这些代码组成特征模板, 人们同识别系统交互进行身份认证时, 识别系统获取其特征并与数据可中的特征模板进行比对, 以确定是否匹配, 从而决定接受或拒绝该人。

3.2 量子加密技术

量子密码术是密码术与量子力学结合的产物, 它利用了系统所具有的量子性质。美国科学家威斯纳于1970年首先提出将量子物理用于密码术。1984年, 贝内特和布拉萨德提出了第一个量子密码术方案, 称为BB84方案。1992年, 贝内特又提出一种更简单, 但效率减半的方案, 即B92方案。量子密码术并不用于传输密文, 而是用于建立, 传输密码本。

量子密码系统三大基本原理:量子互补原理。Heisenberg测不准 (不确定性) 关系表明, 任何对量子系统相干信道的窃听, 都会导致不可避免的干扰, 从而马上被通讯的合法用户所发现。可以使我们对信息进行共扼编码, 从而保证保密通讯模式。

量子不可克隆定理保证了通过精确地复制密钥来进行密码分析的经典物理方法, 对基于单光子技术的量子密码系统完全无效。

单个量子的不可完全擦除定理表明, 量子相干性不允许对信息的载体———量子态任意地施行如存储在经典信息载体上的0, 1这类经典信息进行复制和任意擦除, 量子态只可以转移, 但不会擦除 (湮灭) 。

量子密码术突破了传统加密方法的束缚, 以量子状态作为密钥具有不可复制性, 可以说是“绝对安全”的。量子加密的主要难题是无法远距离发送信息。科学家们多年来一直希望量子加密能够成为传输加密数据的无敌手段。存在的问题是如何使这个技术适用于远距离环境。现在, 此问题正在显示出解决的迹象。

参考文献

[1]尹俊艳, 赵跃龙.基于加密的网络安全技术[J].中国科技信息, 2005 (3) .

[2]杨祯明.基于数据加密技术的网络安全研究[D].青岛:青岛科技大学, 2006.

[3]孟洋, 徐向阳, 刘英娜.量子加密技术探讨[J].长沙民政职业技术学院学报, 2006 (2) .

[4]龚静.浅谈网络安全与信息加密技术[J].华南金融电脑, 2005 (6) .

网络数据传输加密方案 篇5

【关键词】计算机网络安全 数据加密技术

随着计算机的快速发展,人们对其的依赖程度也不断的加深,成为人们生活和工作的必备工具,然而,由于计算机的设计缺陷,导致计算机网络安全也随之出现,人们的私人信息也遭到了恶意的威胁和破坏,黑客、木马和病毒等成为主要的威胁。数据加密技术成为了人们解决这一问题的有效手段。

一、计算机网络安全存在的现状

(一)计算机操作系统安全隐患

计算机操作系统是程序运行的基础,如果计算机的网络密钥被恶意的破解,那么入侵者就会通过操作系统的漏洞窃取用户的信息。CPU程序存在的漏洞是计算机安全的主要隐患,可能导致系统服务器瘫痪甚至遭到严重损坏,影响计算机的正常运行。

(二)网络应用中存在的安全隐患

用户通过网络收发信息,在这个过程中安全也容易受到威胁。网络应用存在的主要安全威胁在于破坏网络协议、攻击传输线和破坏电脑软件等方面。

(三)数据库管理系统中存在的安全威胁

数据库存储了大量的用户信息,因而也成为了入侵者攻击的主要对象。然而由于数据库本身存在的缺陷和分级管理的漏洞,数据库很容易被攻破,造成了大量的经济损失。

二、数据加密技术的分类

(一)对称加密技术

对称加密技术也被称为共享密钥加密技术,指的是传输者和接受者采取的加密和解密方式是相同的,即密钥是通用的。因此,对于一组加密信息,传输者和接受者必須同时保证密钥的安全,否者就会造成信息的丢失。

(二)非对称加密技术

非对称加密技术也叫公钥加密技术,其信息传输者和接受者各自拥有各自加密和解密密钥,公开密钥和私有密钥通过组合组成了密钥。公钥加密技术就是通过对密钥协议的互换,实现通信。这样就增强了其绝密性,确保了在密钥交换过程中的安全。非对称加密技术通常采用的是RSA算法。

三、计算机网络安全中数据加密技术的应用

数据加密技术是计算机安全防护的核心技术,有效地确保了计算机数据和信息的安全。然而由于解密技术的发展,科学家们需要研究新的加密技术,以确保计算机网络安全。数据加密技术就是为了防止数据被泄露,通过重新编辑数据,隐藏了信息内容的一项计算机安全技术。

(一)数据机密技术在加密工具中的应用

加密工具分为硬件加密工具和光盘加密工具。硬件加密是指运用计算机的USB端口以及主机端口,通过对端口进行密码设置,限制登陆者的权限,从而保证了数据的安全;光盘加密的主要原理是通过对镜像文件的可视化存储、修改和隐藏,扩大一般性文件的隐藏和隐私设置,从而提高了系统的安全性能。压缩包是用户RAR传递的主要手段,把复杂的内容压缩为较为传送的文件。RAR和ZIP是两种常见的压缩格式。在重要文件的压缩、传送和解压的过程中,通过使用数据加密技术,达到数据安全的目的。数据加密技术运用了循环冗余校验技术,该技术是根据文件数据进而产生的16位或32位校验和的散列函数校验算法,在校验过程中,丢失一位数字就会产生校验错误,使文件不能传送。

然而,对于加密的算法,并不是没有缺点的。对于DES算法而言,56位的有限密钥长度过短,已经不能满足人们对数据安全性的需要,此外,DES算法中存在的弱密钥也是其致命的弱点;RSA算法的安全性虽然相对较高,但是也有其缺点:第一,产生密钥很麻烦,由于受到素数产生技术的限制,很难做到一次一密;第二,分组长度太长,运算速度慢且代价很高,在实际计算中很难实现。

(二)数据机密技术在电子商务中的应用

电子商务改变了传统的商业运作模式,为人们带来了极大的便利,已经成为人们购物、经营的主流。与此同时,电子商务的安全问题也越来越受到人们的重视。电子商务的安全威胁主要存在于网络交易平台和网络交易信息,其在运营中主要运用数据加密技术为SST安全协议、SSL安全协议和数字签名。安全协议保证了用户和服务器的合法性,并对交易数据进行了加密隐蔽传送,保护了数据的安全和完整。数字签名是附加在数据单元上一些数据,在交易过程中,交易发送者通过自己的私钥对数据进行校验,完成对数据的“签名”,并且数字无法被伪造,是交易者身份的证明,接收者利用对方的公钥解读接收到的“数字签名”,并将结果进行完整性校验,以此确认签名的合法性。安全协议和数字签名在虚拟的电子商务中确认了双方的身份,在技术上和法律上都有保证,有效地防止了入侵者的窃取和破坏,促进了电子商务的持续、健康发展。

(三)数据加密技术在网络数据库中的应用

Windows操作系统拥有世界最多的用户,在NT和Unix下进行操作,计算机的安全等级也从高到低,级别不等,一般为C1或C2两个等级。安全级别低的计算机的数据容易遭到窃取,导致数据和密码的丢失。数据库加密的算法可分为序列密码、分组密码和公钥密码,通过对密钥的二级管理实现数据库加密。一级密钥为主密钥,二级密钥为工作密钥,主密钥对二级密钥信息的加工产生工作密钥,工作密钥的作用就是对数据库进行加密和解密。工作密钥的信息长度为64位,前56位为记录名,后8位是临时生成的、是数据库表的字段信息。当用户录入数据时,系统会自动生成记录名数据,每条数据都做到了记录数据但不会重复。把主密钥存放在安全区域内,使用时会中解密。这样,主密钥保护了工作密钥,工作密钥保护了重要数据,以此提高了数据库的安全性,减少了由与信息被盗取而造成的经济损失。

四、总结

随着计算机技术的进步和信息化水平的提高,计算机网络安全越来越受到重视,数据加密技术成为了主要研究对象。通过数据加密技术的应用,可以极大地提高网络安全系数,减少了用户信息的泄露,为计算机网络安全打下了基础,并且应用越来越广泛。相信在未来,数据加密技术必将更加有效地保证数据的安全,将更加有力地促进计算机网络的健康发展。

参考文献:

[1]李晓利.数据加密技术在计算机网络安全中的应用探讨[J].数字技术与应用,2011(6).

数据加密技术在网络中的应用 篇6

近年来计算机技术和网络技术得到迅猛的发展, 计算机网络信息传输已经成为当前人们数据传递信息的主要手段。网络的发展为人们的生活带来极大的方便, 打破了人与人空间距离的约束, 促进了人与人之间的交流。但是网络安全问题也随之而来, 并日益突出, 网络安全对策成为我们重点关注的问题。

1 网络安全受到威胁的主要因素

1.1 计算机操作系统存在隐患

计算机软件系统分为应用软件和系统软件, 计算机操作系统属于系统软件。操作系统是整个计算机的基础, 它的好坏直接决定了电脑中程序的环境的好坏。一旦操作系统存在隐患, 给网络入侵者以突破口, 让他们得到用户口令, 入侵者将操纵整个计算机并获取用户信息, 甚至捣毁计算机的整个软件系统。如果在用户进行数据传输, 或者安装程序的地方产生隐患, 那么入侵者将对用户的传递过程、传递信息内容进行窥视。所以, 我们在安装程序的时候要避免使用来路不明, 或者不了解的软件。

1.2 网络中存在的不安全隐患

计算机网络的主要目的就是实现数据传输和数据共享, 所以网络面临的威胁也是多方面的。入侵者可以针对传输线路进行攻击, 也可以对网络协议进行攻击, 甚至对计算机的软硬件进行攻击。其中入侵者对网络协议的攻击是最关键的安全问题。计算机最终要的协议就是TCP/IP协议簇, 另外还有Telnet、FPT、NFS、UDP等协议, 如果在这些协议中存在了漏洞, 那么网络入侵者就能够根据这些漏洞进行用户名搜索, 可以大致推测出机器密码口令, 进而对计算机发起攻击。

1.3 数据库管理系统的不安全隐患

数据库管理系统是数据库系统的核心软件, 它存在着先天性的缺陷。由于它是基于分级管理的理念而建立的, 所以数据库的不安全就会导致我们上网痕迹、网上存储的信息及我们的用户名密码发生泄漏, 对我们的隐私和财产安全造成极大的威胁。

2 数据加密技术的类型与应用

2.1 数据加密

数据加密主要手段是通过把明文数据变成密码数据, 使用不同的密钥可以把同一个明文加密成不同的密文, 从而达到对数据有效保护的作用。目前主要有三种数据加密方式:链路加密、节点加密、端到端加密。比如时下“网上银行”非常流行, 给人们的消费和金钱交换提供了诸多的方便, 但是网上银行的安全问题也是人们最为关心的问题。新一级别的安全措施也应运而生。各大银行都纷纷采用数据加密技术与网络交换设备联动, 为用户的账户和密码提供了有力的安全保障。

2.2 密码密钥技术的应用

密钥就是对于数据的加密和解密的过程, 它可以分为私人密钥和公用密钥两个方面。私人密钥是指在加密和解密过程中都要使用相同的密钥, 这种方法需要得到双方的认可, 所以使得安全性显著提高。私人密钥有着自身的缺陷, 体现在针对不同目的而采用的密钥不同, 这时容易发生错误。解决这一问题的途径就是使用公用密钥, 这样在传递信息时, 传递者可以使用公用密钥加密, 接受者可以使用私人密钥解密。

2.3 数字签名认证技术的应用

认证技术的应用要核对用户身份信息, 这样才能够有效保障网络的使用安全, 数字签名技术是认证技术中最常用的一项技术。这种技术也是在加密技术中的基础技术, 是对加密解密计算方式来进行信息核实的一种技术, 其应用最多的地方就是私人密钥的数字签名与公用密钥的数字签名两个方面。

3 常用的数据加密工具的运用

随着网络应用越来越深入, 人们对网络安全提出了更高的要求, 相关的数据加密工具也相继产生, 目前常用的加密工具有以下几种。

硬件加密工具:这种工具是在计算机的USB接口或者并行口进行加密, 可以对计算机软件和数据进行加密, 有效保护了用户的账户信息和隐私。

光盘加密工具:它是通过对相关的镜像文件进行修改, 把光盘的镜像文件隐藏起来。把普通文件进行放大处理, 将普通目录改为文件目录, 从而有效地保护了光盘上比较隐私的信息。而且这种工具简单好用, 深受广大用户的欢迎。

压缩包解压密码:我们现在最普遍使用的压缩工具就是ZIP和RAR, 两种压缩工具都具有解压密码的功能, 也就是用户在对文件解压之前需要提供正确的密码, 这样在传递信息的过程中, 才能够有效防止第三方窃取问题的发生。

4 结语

随着计算机网络的普及, 数据量的传递越来越多, 网络中的恶意攻击软件肆意横行, 使得网络安全问题成为计算机网络的重要问题。相关研究人员需要不断完善防护体系, 加强网络安全管理, 提升网络数据传递的安全性。

参考文献

[1]张金辉, 郭晓彪, 符鑫.AES加密算法分析及其在信息安全中的应用[J].信息网络安全, 2011 (5) .

[2]孙志峰, 屈雷.数据加密技术在计算机安全中的应用分析[J].计算机光盘软件与应用, 2014 (2) .

网络数据传输加密方案 篇7

由于在支付交易时所涉及到的数据字段内容并不多, 具体包括的数据有:交易类型、帐号、帐户类型、密码、交易金额、交易手续费、日期时间、商户代码、2磁3磁数据、交易序列号等。因此金融行业普遍采用ISO8583报文协议来传递交易数据和信息。

ISO8583包 (简称8583包) 是一个国际标准的包格式, 最多由128个字段域组成, 每个域都有统一的规定, 并有定长与变长之分。8583包前面一段为位图bitmap, 用来确定包的字段域组成情况。位图是8583包的灵魂, 它是打包解包确定字段域的关键, 而了解每个字段域的属性则是填写数据的基础。交易双方在发送信息时, 需将ISO8583包的相关字段填入数值, 并在BITMAP中设置发送字段相应的位, 封装后再将数据转换成二进制码流后从发送模块进行发送。接收时, 也是根据BITMAP中相应字段位置来依此取出封装数据。

其中位图BITMAP定义如下:常用的ISO8583的字段包括:

交易报文遵循ISO8583报文格式 (编码为ASCII) 。对于所有报文, 前面是4个字节的报文长度字段, 类型为N4。后面跟报文体。

2 基于.NET加密机制

众所周知, 在网络上传送的数据都有可能被类似Sniffer、Snort、Iris等网络监听工具嗅探到。对于涉及到客户交易方面的敏感数据 (如交易账户、密码) 极可能被黑客下载后轻而易举的获取、或者被拦截和修改。

因此为了防范网络监听必须对敏感数据进行加密处理后再发送。一般来说, 通过加密可以达到以下目的:

(1) 保密性:防止用户的标识或数据被读取;

(2) 数据完整性:防止数据被更改;

(3) 身份验证:确保数据发自特定的一方。

目前, 微软的.NET框架提供的System.Security.Cryptogrlaphy的命名间包含了实现安全方案的类, 例如加密和解密数据、管理密钥、验证数据的完整性并确保数据没有被篡改等等。有了这些类, 用.NET语言进行网络编程时, 数据的加密/解密就是一个比较容易的过程。

.NET框架提供了4类加密算法类:对称加密、不对称加密、散列加密和数字签名。

2.1 对称加密

对称加密算法是应用较早的加密算法, 技术成熟。在对称加密算法中, 数据发信方将明文 (原始数据) 和加密密钥一起经过特殊加密算法处理后, 使其变成复杂的加密密文发送出去。收信方收到密文后, 若想解读原文, 则需要使用加密用过的密钥及相同算法的逆算法对密文进行解密, 才能使其恢复成可读明文。在对称加密算法中, 使用的密钥只有一个, 发收信双方都使用这个密钥对数据进行加密和解密, 这就要求解密方事先必须知道加密密钥。

对称加密算法的特点是算法公开、计算量小、加密速度快、加密效率高。不足之处是, 交易双方都使用同样钥匙, 安全性得不到保证。此外, 每对用户每次使用对称加密算法时, 都需要使用其他人不知道的惟一钥匙, 这会使得发收信双方所拥有的钥匙数量成几何级数增长, 密钥管理成为用户的负担。而与公开密钥加密算法比起来, 对称加密算法能够提供加密和认证却缺乏了签名功能, 使得使用范围有所缩小。

在计算机专网系统中广泛使用的对称加密算法有DES和IDEA等。美国国家标准局倡导的AES即将作为新标准取代DES。

.NET框架提供的对称加密算法类有:

(1) DESCrypto Service Provider:实现DES加密算法;

(2) RC2Crypto Service Provider:实现RC2加密算法;

(3) Rijndael Managed:实现Rijndael加密算法;

(4) Triple DESCrypto Service Provider:实现三重DES寂寞算法。

2.2 不对称加密

不对称加密算法使用两把完全不同但又是完全匹配的一对钥匙—公钥和私钥。在使用不对称加密算法加密文件时, 只有使用匹配的一对公钥和私钥, 才能完成对明文的加密和解密过程。

不对称加密算法加密明文时采用公钥加密, 解密密文时使用私钥才能完成, 而且发信方 (加密者) 知道收信方的公钥, 只有收信方 (解密者) 才是唯一知道自己私钥的人。不对称加密算法的基本原理是, 如果发信方想发送只有收信方才能解读的加密信息, 发信方必须首先知道收信方的公钥, 然后利用收信方的公钥来加密原文;收信方收到加密密文后, 使用自己的私钥才能解密密文。不对称算法拥有两个密钥, 特别适用于分布式系统中的数据加密。广泛应用的不对称加密算法有RSA算法和美国国家标准局提出的DSA。不对称算法类有:

(1) RSA Crypto Service Provider:实现RSA加密;

(2) Crypto Service Provider:实现DSA/DSS加密。

2.3 散列加密

散列加密是基于散列函数 (Hash Function) 来实现的一种单向算法, 一旦数据被转换, 将无法再获得其原始值。散列函数是一种从任何一种数据中创建小的数字“指纹”的方法。该函数将数据打乱混合, 重新创建一个叫做散列值的指纹。散列函数的基本特性是:如果两个散列值是不相同的 (根据同一函数) , 那么这两个散列值的原始输入也是不相同的。这个特性是散列函数具有确定性的结果。

NET开发使用多种散列算法类。最常用的是SHA1和MD5。

2.4 数字签名

数字签名就是附加在数据单元上的一些数据, 或是对数据单元所作的密码变换。这种数据或变换允许数据单元的接收者用以确认数据单元的来源和数据单元的完整性并保护数据, 防止被人 (例如接收者) 进行伪造。它是对电子形式的消息进行签名的一种方法, 一个签名消息能在一个通信网络中传输。基于公钥密码体制和私钥密码体制都可以获得数字签名, 目前主要是基于公钥密码体制的数字签名。包括普通数字签名和特殊数字签名。普通数字签名算法有RSA、El Gamal、Fiat-Shamir、Guillou-Quisquarter、Schnorr、Ong-Schnorr-Shamir数字签名算法、Des/DSA、椭圆曲线数字签名算法和有限自动机数字签名算法等。特殊数字签名有盲签名、代理签名、群签名、不可否认签名、公平盲签名、门限签名、具有消息恢复功能的签名等, 它与具体应用环境密切相关。

可以用以下加密类构成数字签名:

3 加密数据的传输机制

在运营商订单系统与银行支付系统间交互数据过程中, 可基于上述加密策略对ISO8583报文协议中相应消息类型包数据进行加密。一般除签到数据包以外的消息类型均采用对称/非对称加密类进行加密, 同时在加密前还有通过MD5数字签名策略对原始明文数据包做数字签名, 并将签名后的值作为填充到第64位后再进行加密处理, 接受方在收到数据后首先按照之前约定的密钥和解密方式进行解密, 在解密后还要对提取出的明文字段值重新运算一次数字签名, 并同发送方送的MAC数字签名值进行比对, 若完全一致则证明数据有效, 可以继续执行后续流程。

以下是基于ISO8583报文协议, 发收双方实现支付交易流程的主要步骤:

(1) 签到:运营商订单系统发送签到报文, 获取所需工作密钥。

(2) 订单号获取:运营商支付系统发送订单号获取报文, 银行系统返回订单号报文。

(3) 商户支付请求:电信运营商发送支付请求报文, 对持卡人发起交易请求, 验证通过后发送结果报文, 电信运营商收到结果报文后断链, 待交易完毕后发送交易结果报文到电信运营商提供的接收端。

(4) 支付请求通知:电话支付系统在完成用户支付后。电话支付系统发送支付结果报文给电信运营商, 电信运营商验证通过后告知电话支付系统接收成功。

(5) 订单查询:电信运营商发送订单查询报文, 按订单号查询本商户相关订单信息。

上图中运营商和银行系统的网络连接可基于数字专线、互联网。网络协议可基于TCP/IP, 利用SCOKET套接字以短连接的方式建立会话来进行信息交换 (ISO8583报文) 。但在信息进入网络前须用生成数字签名信息和加密报文, 保证信息传输的安全性, 再通过网关进入数字专线或互联网网络进行传输。运营商需要向银行支付系统提供监听IP和端口, 以保证订单系统服务器能够监听到银行支付服务器发来的处理结果。

运营商侧的加密机和银行侧加密机组成了一个点对点的数据加解密网络。

4 结语

由于篇幅限制, 本文仅仅将ISO8583报文协议规范、.NET框架System.Security.Cryptography名字空间中的部分加密类做了简单介绍, 并结合常用的支付交易流程作了网络安全传输的阐述。考虑到实际应用场景的复杂性和特殊性的情况, 在实施具体项目时, 还需选择多种加密算法和网络接入手段来提高通讯的安全性, 在原本并不安全的信道上构建安全的通讯信道。

参考文献

[1][美]克罗克齐科, 吴旭超译..NET网络高级编程[M].清华大学出版社, 2003

[2][美]Bill Evjen著.ASP.NET4高级编程:涵盖C#和VB.NET (第7版) [M].清华大学出版社, 2010

关于网络数据库相关加密技术概探 篇8

1 网络数据库相关加密技术

数据在存储与传输时的加密是网络数据库加密的两种情形, 其中静态数据加密是指加密存储在数据库服务器中的数据, 动态数据加密则是指对传输过程中的数据进行加密。动态数据加密能够有效防止会话攻击与重放攻击, 一般来说动态数据加密的标准包括SSL标准﹑TLS标准及IPSEC标准等。然而静态的数据加密相比于动态数据加密还存在加密算法及密钥管理等问题。

1.1 网络数据库加密的技术要求与系统功能

1.1.1 数据库加密的技术要求

总的来说, 因为网络数据库具有数据存储时间较长﹑数据量大及随机访问频繁的特点, 数据加密通常情况下要达到安全性﹑高效性﹑灵活性及完整性要求。首先由于数据库信息存储的数据保存的时间较长, 所以要确保在未知密钥的条件下, 都不能借助解密算法推算出相应的密钥;其次要确保密钥算法在工程上容易实现, 提高运行效率, 进而满足用户对响应时间的需要;密文要尽可能地和加密前的数据长度相当, 能够满足用户对数据库不同粒度访问需要;加密系统需要提高一套灵活安全的密钥管理机制, 密钥有效期要长;最后要确保数据库中相关加密数据的完整性。

1.1.2 加密系统的功能及特性

一般来说, 一个完善的网络数据库加密系统首先要有身份认证的功能, 身份认证不仅是网络数据库系统的安全入口, 同时是实现访问控制的前提, 因此用户一定要依据系统安全要求提供相关的安全凭证, 例如终端密钥;其次是数据存储加密的功能, 也就是说数据库中的不同记录及不同字段都采用不同的密钥加密, 避免数据非授权访问与修改;网络数据库加密系统提供的加密设置功能, 可以让用户设置所要加密的数据库, 进而有利于用户平衡效率和安全性;密钥管理的功能, 在网络数据库加密系统中, 密钥的安全性决定着数据加密后的安全性, 所以要求系统能够提供有效的密钥管理功能;安全备份的功能, 安全备份可以恢复紧急情况下的系统与数据, 防止系统故障或者人为破坏所导致的数据与密钥丢失;最后是通信加密的功能, 确保通信的完整性功能。

1.2 网络数据库加密方式﹑加密算法及加密粒度

1.2.1 加密方式

DBMS内部加密与DBMS外部加密是网络数据库较常见的两种加密方式, 其中DBSM内部加密是指数据在物理存取之前通过DBSM内部标准组件完成加密与解密任务, 具有提高各种粒度加密﹑有效保护数据机应用程序相对透明等优点, 同时具有数据加密与解密在数据库服务端运行, 降低系统运行性能﹑密钥密文未分开存储, 增大密钥管理风险及修改DBSM的较困难等缺陷。DBMS外部加密具有在加密与解密过程中在应用程序端减少了数据服务和DBMS的运行负担﹑能够把加密密钥和所加密的数据分开存储, 提高安全性及服务器和客户端配合能够实现端到端网上密文传输等优点。但同时DBSM外部加密具有不能支持各种加密粒度﹑不能加密元数据与索引数据﹑不能对加密后的数据进行完整性检验等缺陷。

1.2.2 加密算法

加密算法是网络数据库加密的核心, 一般来说加密算法的好与坏将直接影响到数据加密的安全性能, 一个良好的加密算法所产生的密文应随机没有重码规律, 同时所选用的加密算法运行速度要快, 尽可能地降低系统对用户的响应时间。依据加密密钥是否公开可以将密码体制分为传统密码体制与非对称密钥体制, 传统密码算法加密密钥与解密密钥是相同的, 而非对称加密算法所使用的密钥由公钥与私钥组成, 具有运行速度较快﹑适合加密大块数据的优点。

1.2.3 加密粒度

加密最小的单位是加密粒度, 加密的单位越小, 适用的范围就越广, 然而实现的难度也会越大。一般要依据应用时具体的要求选择不同的方法, 比如对数据库级加密时, 就是将数据库文件作为一个整体, 采用加密密钥与加密算法把整个数据库中所有的用户数据表急索引进行加密, 确保数据的完整性与真实性, 这种方法具有密钥数量少﹑管理简单的优点;对表级加密则是加密数据库中对安全需求较高的表, 采用表级加密粒度, 可以有效改善查询性能, 但是表级加密要修改DBSM内核;记录级加密是加密处理数据表中的整条记录, 和数据库级加密相比, 记录级加密具有选择上的灵活性, 然而这种加密也需要修改DBSM内核;字段级加密是对关系表中的某个字段进行加密, 实现字段级加密能够不仅可以在DBSM外部也可以在DBSM内部实现;属性级加密是对记录中某个字段值进行加密, 这种方法能够度数据库中单个数据元素进行加密, 具有良好的灵活性与适应性。

1.3 网络数据库密钥管理及密文攻击方法

1.3.1 密钥管理

和传统的通信加密与文件加密相比, 网络数据库加密具有数据保存时间长﹑数据数量多﹑密钥分配困难等特点。首先网络数据库的数据一般需要保存很长时间, 用来加密的密钥也要保存同样长的时间, 此外要对密钥进行更新, 确保数据的安全性;其次, 在网络数据库中, 需要加密的数据数量较多, 需要使用不同的密钥进行加密, 增加其安全性;最后, 密钥分配具有一定的难度, 一般来说, 一个良好的网络数据库加密系统一定要有一个好的密钥管理系统来完成对密钥的产生﹑密钥的存储﹑密钥的分发使用及更新消亡。

1.3.2 密文数据库攻击方法

网络数据库加密以后, 数据是以密文的形式存在, 攻击者侵入数据库后, 获得密文数据可以借助多种方式获得相应的明文, 通常情况下, 攻击者会采用比如获取密钥﹑统计攻击﹑对比明文攻击机字典攻击等方法来攻击加密数据库。随着加密技术在网络数据库中的广泛应用, 攻击密文数据的方法也会逐渐增多, 所以加密数据库的数据时, 应当选择良好的加密算法, 且采用有效的管理方法, 保证密钥的安全性。

2 结论

总之, 由于网络数据库具有数据存储时间较长﹑数据量大及随机访问频繁的特点, 所以数据加密要达到安全性﹑高效性﹑灵活性及完整性等技术要求, 一个好的网络数据库加密系统要具备身份认证﹑数据存储加密﹑加密设置﹑密钥管理及通信加密等功能。和传统的通信加密相比的网络数据库加密需要选择适当的加密方式﹑加密粒度﹑加密算法及加密管理方式, 进而满足网络数据库对安全性与效率需要。通过改善现有密钥管理方案, 例如分级密钥管理机制﹑分段密钥管理机制及密钥转换等, 选用能够抵抗现有的各种加密算法, 确保密钥的安全性, 进而实现保护数据库安全性的目标。

摘要:网络的开放性使网络数据库每时每刻都有可能受到内外部攻击者的入侵, 其中数据加密存储是保护数据安全的一个重要手段。网络数据库数据加密需要满足安全性﹑高效性﹑灵活性及完整性等技术要求, 加密系统要有身份认证﹑数据存储加密及安全备份功能。一个良好的网络数据库加密系统一定要选择合适的加密方式﹑加密粒度﹑加密算法及加密管理方法才能够实现网络数据库对安全性与效率的需要。随着加密技术在网络数据库中的广泛应用, 攻击密文数据的方法也会逐渐增多, 所以加密网络数据库时, 应当选择能够抵抗几种常用的攻击方式。

关键词:网络数据库,加密技术,密钥管理

参考文献

[1]刘淑娴.网络数据库加密技术研究与实现[J].西安电子科技大学, 2009.

[2]余祥宣, 崔永泉.分布式环境下数据库加密密钥管理方案[J].华中科技大学学报, 2002.

网络数据传输加密方案 篇9

关键词:网络安全,数据加密技术,应用

1 数据加密技术原理解析

数据加密技术主要涉及明文、密文、算法和秘钥。原始未变换处理信息时称之为明文,较为浅显易懂,而通过明文处理加工后的信息内容则称之为密文,其理解难度较高。明文到密文的转换过程即为数据加密,一般情况下由特定加密算法实现。密文到明文的恢复变化过程中则被称之为数据解密,一般情况下由加密数据算法对应的解密算法加以实现。

计算机信息网络信息数据加密处理环节和数据解密处理环节还涉及发送方和接收方,明文处理变换之后会形成密文,随之将密文进行发送,发送者此时被称为发送方,而所接收密文的接受者则被称为接收方。发送方将明文进行加密,加密操作后形成密文,之后在此基础上进行接收方位置传递,接受方收到密文之后,运用秘钥进行密文解密,通过密文解密处理形成原始明文,此种模式传输过程中若出现信息窃取状况,那么电脑攻击者只能单纯获取原始密文,没有秘钥则无法解析,运用此种方式便可以对计算机信息网络信息有保护作用。

2 数据加密技术的类型

2.1 链路加密

链路加密具体指的是针对网络节点里面的通信链路实施加密,以确保网络传输安全。链路加密,也可以称作“在线加密”。链路加密需要在数据传输之前就完成信息加密,之后在网络节点之间予以解密,之后再次加密,如此往复,并应用不同的密钥,从而达到数据安全防护的目的。

2.2 节点加密

节点加密技术采用一个与节点机设备相互连接的一种密码装置,密文在此类装置内部会被合理解密和再次重新加密,虽然节点加密可在一定程度上提升网络数据传输安全性,但节点解密模式中,其操作方式与链路加密操作方式基本等同,上述二者均在通信链路上进行可靠性消息提供,节点加密技术和链路加密技术在中间节点对消息进行深度解密与二次加密,由于此时需要对整体传输数据信息内容进行加密操作,因此计算机信息网络通信安全加密过程相对透明。

计算机信息网络安全数据节点加密技术要求报头和路由信息均应以明文传输形式存在,这样的话就会给中间节点提供可靠且科学的消息处理办法,所以节点加密技术对遏制网络攻击者分析进行通信业务分析环节相对薄弱。节点加密技术缺陷明显,在实际操作环节内需要合理保障节点两端位置处加密识别等级达到高度同步,加之合理配合才能完成最终加密操作流程,此类中海外信息数据丢失现象和特殊状况下信息数据丢失现象时有发生。

2.3 端到端加密技术要点分析

端到端加密技术主要是指在数据传输过程中,本体数据传输模式为密文传输,当数据传输接收之前的所有环节均不能进行解密操作,达成高度计算机信息网络中数据的安全保护目的。端到端加密技术可有效遏制节点解密缺陷,最为常见的例子即为节点损坏问题,此处需要特殊提到的一点是,端到端加密技术具备价格低廉特点、技术设计简单特点、技术维护便利特点和技术操作简易特点以及技术操作人性化特点等。

3 计算机信息网络安全中数据加密技术的应用

3.1 网络数据库方案中数据加密技术的应用

Windows与Unix是当前网络数据库管理系统的主要实施平台,其安全凭借等级是C1级或C2级,由此可见无论是数据传输公共信道还是计算机存储系统都显得较为脆弱,极易被PC机窃取数据密码。由此不难分析,数据加密技术在计算机信息网络安全中的应用显得尤为必要。对于网络数据库用户而言,通常采用的方式为口令加密或是访问权限加密设置,这对于数据信息而言是不可缺少的保护路径。

3.2 电子商务方案中数据加密技术的应用

网络交易信息安全以及网络平台安全属于电子商务安全体系的两大重要部分,电子商务一般选择数字证书以及数字签名等手段进行加密处理,以上数据加密手段均能够为交易信息安全提供良好保障,防止不法人员或者网络黑客对信息资源进行窃取或者破坏,有利于促进电子商务的持续、高效发展。

3.3 虚拟专用网络方案的应用

虚拟专用网络中数据加密技术的应用采用路由器数据硬件自动加密的方式实现对互联网中密文方式的有效传输,一旦密文内容到传送点后便会由路由器对其实施解密操作,对应的明文内容就会到达虚拟专用网络中的接收者处。

3.4 软件加密方案中的应用

网络信息时代的到来使得黑客入侵、木马病毒等问题更加频繁,网络通信安全遭遇重大威胁。面对强大的网络威胁侵袭,仅仅依赖于主观经验判断或是防火墙技术显然难以达到预期的防范目的,病毒侵入杀毒软件还会使得数字签名信息的检查更加困难。因此,加密程序的实施首先需要对特定文件的加密状态展开检查,确定其是否存在计算机病毒感染问题,以此完成软件加密方案中数据加密技术的有效应用。

3.5 促进密码密钥数据技术中的公、私用密匙结合

私用密匙指的是信息传达双方事前已经就密匙形成共识,同时借助一样的密匙进行信息加密处理,给予科学解密,通过这种方式保证信息安全。公用密匙在安全性方面比私用密匙要高,该类密匙在文件正式发送出去前就已经给予加密处理,可以防止信息泄露,另外,公用密匙的应用还可以弥补私用密匙的不足,进一步强化加密效果,提高网络安全。

4 结语

在网络信息时代飞速发展的背景下,各种木马、病毒以及黑客行为也层出不穷,因而更加凸现了网络通信安全的重要性,特别是在拟上市企业的信息披露安全方面,确保信息安全应符合CIAA标准,加强信息安全意识,注重社会工程学防范、离职员工信息设备管理和各系统密码管理等。针对普通用户来说,网络信息安全的威胁非常明显,而数据加密技术的运用,实现了良好的保密效果,在做到随时汲取新技术的同时,为网络用户营造了更加安全的计算机信息网络环境。目的在数据信息安全各层级上力求做到使之进不来、拿不走、看不懂、改不了、跑不掉及可审查。

参考文献

[1]郑志凌.探析数据加密技术应用在计算机信息网络安全的对策[J].网络安全技术与应用,2015(1):94-95.

网络数据传输加密方案 篇10

关键词:JAVA;AES;RSA

中图分类号:TP311文献标识码:A文章编号:1009-3044(2007)15-30742-02

由于Internet网络协议本身存在着安全问题,网上信息传输存在着巨大的安全风险,电子商务的安全问题越来越突出。加密技术是电子商务中最主要的安全技术,加密方法的选取直接影响着电子商务活动中信息的安全程度。由于JAVA 一开始就是面向网络应用的,它十分重视数据的安全性,在JDK1.1中就已支持DES加密技术。因此JAVA在电子商务中得到了广泛的应用。本文主要介绍在Java环境下使用AES和RSA加密算法对数据文件进行加密和解密。

1 JAVA中的数据加密技术

加密技术根据一般可以分为对称加密技术和非对称加密技术。对称加密技术属于传统的加密技术,它的加密和解密的密匙是相同的,它的优点是:运算速度快,加密强度高,可以通过硬件方式来实现,适合大批量数据的加密处理,它的缺点是:加密和解密由于使用相同的密匙,密匙的分发与保密比较困难,目前常用的对称加密技术有DES、3DES和AES,DES是旧的加密标准,它的密匙长度为56位,加密强度较低,已被认为不是安全的加密技术。3DES是对DES的改进,对明文用三个不同的DES密匙进行DES加密、解密和再加密,这样可以提高加密强度。AES是新的加密标准,它是DES的替代者,它的密匙长度有128、192和256三种,目前还没有被人攻破。非对称加密技术属于现加密技术,它的加密与解密的密匙是不相同的,一个是私匙,一个是公匙,它的特点是:加密强度比较小,加密的速度比较慢,常用于数字鉴名和加密密匙,目前使用的非对称加密技术主要有RSA和ECC,其中1024位的RSA是目前使用最为广泛的非对称加密技术。

JAVA语言的安全性是十分出色的,在JAVA中通过“SunJCF”提供对各种加密技术的支持。在JAVA还可以安装其它公司的加密包,使用“SunJCF”所不支持的其它加密算法。早在JDK1.1中就已支持DES数据加密技术,在JDK1.5中支持DES、3DES、AES等对称加密技术,在非对称加密技术方面支持RSA技术。

2 JAVA中的数据加密类

(1)KeyGenerator类用于获得各类对称加密技术的密匙,主要的方法有:

getInstance(“加密算法字符串”),用于设置要获得的密匙的加密算法

init(),用于初始化对称加密的密匙对象

generateKey(),从对称加密的密匙对象中取得密匙

(2)KeyPairGenerator类用于获得非对称加密技术的密匙,主要的方法有:

getInstance(“非对称加密算法字符串”),用于设置要获得的密匙的加密算法

initialize(密匙长度),用于初始化非对称加密的密匙对象

generateKeyPair(),返回非对称密匙组对象

getPublic(),从非对称密匙组中取得公匙

getPrivate(),从非对称密匙组中用于取得私匙

(3)Cipher类是JAVA加密的主要类,用于按一定的算法对数据进行加密、解密、包装和返包装。主要的方法有:

getInstance(“加密算法字符串”),用于设置要使用的加密算法

Init(“类型”,密匙),按提供的类型和密匙初始化加密对象

getBLockSize(),用于返回加密算法的输入分组长度

getOutputSize(),用于返回加密算法的输出分组长度

update(inBytes,blockSize,outBytes),对inBytes进行加密或解密处理,并将处理结果输出到outBytes中

doFinal(),对要不足分组长度的数据进行填充处理

3 JAVA中实现AES和RSA相结合的数据加解密

3.1根据前面有关对称加密技术和非对称加密技术的分析,在电子应用于一般采用对称加密技术和非对称加密技术相结合的方法。在下面的例子中利用AES(对称加密技术)加密数据文件,利用RSA(非对称加密技术)加密AES加密密匙,这样即可以提高加密的速度,又可以解决AES密匙自身的安全性。由于数据文件进行了加密因此可以通过普通的电子邮件系统完成加密文件的传输。AES和RSA相结合的数据文件加解密过程如下:

(1)接受方:生成1024位的RSA密匙对,然后通过电子邮件向发送方发送自己的公匙数据。

(2)发送方:第一步通过电子邮件取得接受方的RSA公匙数据;第二步随机生成AES密匙;第三步用获得的RSA公匙和RSA加密算法加密AES密匙并将加密后的AES密匙写入数据文件的头部;第四步用AES密匙和AES加密算法加密数据,并将加密后的数据写出入数据文件的尾部;最后通过电子邮件,以附件的形式将数据文件发送给接收方。

(3)接收方:第一步从接受到的邮件的附件中读取加密后的AES密匙;第二步用自己的私匙和RAS算法解密AES密匙;第三步接着从接受到的邮件的附件中读取加密数据,用解密后的AES密匙和ASE算法解密加密数据,并将解密后的数据写入数据文件。

3.2在JAVA中实现上述AES和RSA算法相结合的数据加解密过程是十分容易的,具体源程序如下:

import java.io.*;

import java.security.*;

import javax.crypto.*;

import javax.crypto.spec.*;

public classAes_Rsa_ Encrypt

{ public static void main(String[] args)

{ try

{ if(args[0].equals("-g")) //生成RSA密匙对

{ KeyPairGenerator keyGen = KeyPairGenerator.getInstance("RSA");

SecureRandom random=new SecureRandom();

keyGen.initialize(1024,random);

KeyPair keypair = keyGen.generateKeyPair();

ObjectOutputStream out =new ObjectOutputStream(new FileOutputStream ("pub_key"));

out.writeObject(keypair.getPublic());

out.close();

out =new ObjectOutputStream(new FileOutputStream("pri_key"));

out.writeObject(keypair.getPrivate());

out.close(); }

else if(args[0].equals("-e"))//对指定的数据文件进行加密处理

{ KeyGenerator keyGen = KeyGenerator.getInstance("AES");

keyGen.init(128);

SecretKey key=keyGen.generateKey();

ObjectInputStream keyIn =new ObjectInputStream(new FileInputStream ("pub_key"));

Key publicKey=(Key)keyIn.readObject();

keyIn.close();

Cipher cipher=Cipher.getInstance("RSA");

cipher.init(Cipher.WRAP_MODE,publicKey);

byte[] wrappedKey=cipher.wrap(key);

DataOutputStream out=new DataOutputStream(new FileOutputStream(args[2]));

out.writeInt(wrappedKey.length);

out.write(wrappedKey);

InputStream in=new FileInputStream(args[1]);

cipher=Cipher.getInstance("AES");

cipher.init(Cipher.ENCRYPT_MODE,key);

crypt(in,out,cipher);

in.close();

out.close(); }

else if(args[0].equals("-d"))

//对指定的加密文件进行解密处理

{ DataInputStream in=new DataInputStream(new FileInputStream(args[1]));

int length=in.readInt();

byte[] wrappedKey=new byte[length];

in.read(wrappedKey,0,length);

ObjectInputStream keyIn =new ObjectInputStream(new FileInputStream ("pri_key"));

Key privateKey=(Key)keyIn.readObject();

keyIn.close();

Cipher cipher=Cipher.getInstance("RSA");

cipher.init(Cipher.UNWRAP_MODE,privateKey);

Key key=cipher.unwrap(wrappedKey,"AES",cipher.SECRET_KEY);

OutputStream out=new FileOutputStream(args[2]);

cipher=Cipher.getInstance("AES");

cipher.init(Cipher.DECRYPT_MODE,key);

crypt(in,out,cipher);

in.close();

out.close(); } }

catch (IOException exception)

{ exception.printStackTrace();}

catch (GeneralSecurityException exception)

{ exception.printStackTrace(); }

catch (ClassNotFoundException exception)

{exception.printStackTrace();} }

public static void crypt(InputStream in,OutputStream out,Cipher cipher) throws IOException,GeneralSecurityException//自己定义的加密函数

{ int blockSize=cipher.getBlockSize();

int outputSize=cipher.getOutputSize(blockSize);

byte[] inBytes=new byte[blockSize];

byte[] outBytes=new byte[outputSize];

int inLength=0;

boolean more=true;

while(more)

{ inLength=in.read(inBytes);

if(inLength==blockSize)

{ int outLength=cipher.update(inBytes,0,blockSize,outBytes);

out.write(outBytes,0,outLength); }

else

{ more=false;} }

if(inLength>0)

outBytes=cipher.doFinal(inBytes,0,inLength);

else

outBytes=cipher.doFinal();

out.write(outBytes); }

public static final int KEYSIZE=1024; }

本程序可以完成RSA密匙的生成、数据加密和数据解密。运行前用javac进行对Aes_Rsa_ Encrypt.java文件进行编译,然后按如下方法执行:

(1)生成RSA算法的私匙文件(文件名为pri_key)和公匙文件(文件名为pub_key)

java Aes_Rsa_Encrypt-gkeyfile

(2)对指定的数据文件中的内容进行加密,并将结果写出入指定的加密文件

java Aes_Rsa_Encrypt-e数据文件名 加密文件名

(3)对指定的加密文件中的内容进行解密,并将结果写出入指定的解密文件

java Aes_Rsa_Encrypt-d 加密文件名 解密文件名

本程序在JDK1.5下测试通过。

参考文献:

[1](美)Cay S.Horstmann,王建华.等 译.Java核心技术卷Ⅱ:高级特性[M].北京:机械工业计,2005年9月.

[2]丁玲 等.JAVA与网络安全[J].科技信息(学术研究),2007年,17期:201.

[3]徐甜.Java平台及应用Java技术的安全问题研究[J].微计算机信息,2007年18期,216-218.

[4]赵航涛 等.我国电子商务中的安全问题及对策 [J].无锡职业技术学院学报,2006年03期,76-78.

[5]熊聪聪 等.基于Java的DES加密算法[J].天津师范大学学报(自然科学版),2003年04期,70-72.

网络数据传输加密方案 篇11

密码系统是用于加密解密的系统, 明文和加密密钥作为密码系统的输入参数, 经过一定的加密变化处理后得到输出密文。一个完整的密码系统包括明文空间, 密钥空间, 以及算法。加密算法主要要考虑的因素有两个, 一是混乱, 即明文与密钥以及密文之间的关系尽量复杂化, 使破译者无法理出相互间的依赖关系。二是扩散, 是指让明文中的每一位包括密钥中的每一位直接或者间接影响输出密文中的许多位或让密文中的每一位受制于输入密文以及密钥中的若干位, 把联想记忆神经网络用于加密, 利用网络迭代的非线性变化达到混乱的目的, 采用分组密码增加算法的扩散性。

目前, 还找不出一种对所有样本都可逆的Hopfield网络, 所以无法单纯的靠网络来加密。如果利用不可逆的网络, 就必须把原文构造成网络的稳定点。这样就相当于把受畸变的样本作为密文。很显然, 具有高容错能力的网络的安全性能也相对较高, 并且构造这样的网络难度也较大, 所以我们换个思考问题的方式把通过网络最终迭代的样本最为加密的密钥。这样既提高了密钥计算的难度, 同时也提高了密文的安全性。

联想记忆神经网络的用途很广泛, 目前主要应用于动态联想记忆、混沌优化及预测、模式分类和模式识别上, 本文主要研究它在数据加密的应用上。

二、加密过程

密码体制分两大类, 单钥密钥和双钥密钥, 本文采用了传统的单钥密钥, 即系统的保密性取决于密钥的安全性。当然, 如果不对外公开加密算法, 该密码系统的安全级别会更高。传统的加密系统中, 加密算法和解密算法的操作通常是在一组密钥的控制下进行的, 分别称为加密密钥和解密密钥加密。具体的加密及解密过程如上图所示。

本文的加密原理是把原网络的样本和作为密钥的添加大量噪声的样本一起传输过去, 假设该密码系统中包含n1个神经网络, 其中有个n2网络样本, 有n3个是作为密钥的, 它们不参与网络权值的计算。我们假设属于网络1的样本数为, 属于网络2的样本数为, 属于网络n1的样本数为, 这样, 同时还要传输的是神经网络的参数, 其中包括各个网络的起始位置, 样本的个数, 以及网络的维数, 有的还需要包括迭代的次数。因为由于我们网络样本选取的随机性, 很多样本并不是网络的稳定点。为了该加密系统的安全, 网络参数我们通过安全通道传输, 而网络的样本则接在密文后边传输过去。事实上, 我们可以用不同的神经网络作为密钥的载体, 这里我们采用的是离散的Hopfiled网络, 为了方便阐述该密码系统, 假设作为单个网络的样本是连续存放的, 在该网络前面的样本按照网络的维数划分成几个该网络的样本。当然, 作为网络样本的向量分散存放会使破译的难度大大增加, 但是同时也增大的密钥空间。

三、加密算法

假设有一个长度为256的明文, 我们将其分组进行加密, 分别与我们按上述过程生成的密钥进行异或, 或者利用别的更高级加密算法。

加密的重点在于密钥的生成, 因此为了方便说明加密原理, 关于加密算法我们就简单的使用生成一个2进制序列, 和原文异或, 完全可以反复利用密钥对原文多次不同算法的加密。

四、破译复杂度

首先破译者要知道密文的长度, 这样才能得出网络样本。破译者无法知道我们使用了几个网络, 也无法得知我们各个网络的维数以及样本个数, 本为仅计算在最简单情况下破译的代价, 最简单的情况只用一个网络。我们假设网络样本总数为n, 考虑到网络的样本至少有2个, 所以网络的样本维数应在2到 之间, 相应的网络可能有 种情况。由于我们采用的并不是hopfield网络的稳定点, 所以破译者无法通过网络的存储上先来帮助其排出上述的任何一种情况, 加上破译者无法知道我们的样本需要迭代的次数, 如果我们采用n个网络, 那么破译者首先要知道我们使用了几个网络, 所以破译的复杂度在原来的基础上扩大了几何级数倍。所以我们认为计算代价很大, 在不知道密钥的情况下在有限时间内是不可解的。

对于网络的参数传输我们传输几对这样的序列, 当然在传输的时候是连续的, 分别是网络的起始位置, 网络的维数, 样本产生密钥需要迭代的次数。如果分散传输, 就大大的增大了网络的参数, 因为我们要指出是第几个网络的样本, 第几个网络的输入, 如果更复杂的, 同一个网络的输入我们可以规定不同的迭代次数。

五、仿真过程及结果

我们生成一个64位的密钥来举例说明, 我们用两个Hopfiled网络, 网络一的样本维数是4, 网络二的样本是维数是5, 网络一的样本为 (1, 0, 1, 0) , (0, 0, 1, 1) , (1, 1, 0, 0) 网络二的样本为 (1, 1, 0, 1, 0) , (0, 1, 1, 0, 0) , 我们把其中的0换成-1, 首先我们根据hebb规则计算出两个网络的权值, 该规则的公式为 我们把网络样本代入计算, 网络一的权值为 , 网络二的权值为 我们让网络一的6个输入迭代5次作为密钥, 让网络二的8个输入迭代3次作为密钥, 其中网络一的6个输入模式分别是 (1, 1, 1, 1) , (0, 1, 0, 1) , (0, 0, 0, 1) , (1, 1, 1, 0) , (0, 1, 0, 0) , (1, 1, 0, 1) , 网络二的8个输入样本分别是 (1, 1, 1, 0, 0) , (0, 0, 0, 1, 1) , (0, 0, 1, 0, 1) , (1, 0, 0, 1, 1) , (1, 1, 0, 1, 1) , (1, 0, 1, 0, 1) , (0, 1, 0, 1, 0) , (1, 1, 0, 0, 1) , 我们通过仿真得到迭代的结果分别是 (1, 1, 0, 0) , (0, 1, 0, 1) , (0, 0, 1, 1) , (1, 1, 0, 0) , (1, 1, 0, 1) , (1, 1, 0, 1) , 以及 (0, 1, 1, 0, 0) , (1, 0, 0, 1, 1) , (0, 0, 1, 0, 1) , (1, 0, 0, 1, 1) , (1, 1, 0, 1, 1) , (0, 0, 1, 0, 1) , (1, 1, 0, 1, 0) , (1, 1, 0, 1, 1) 由于我们选取的网络样本数较小, 维数较低, 所以有一部分密钥暴露在明文的后边, 但只要我们规定合理的网络样本, 网络维数, 以及具体输入的迭代次数, 要完全隐藏密钥的信息是完全可行的。

假设我们要秘密传送的网络参数是 (24, 4, 3, 5) , (55, 5, 2, 6) , 其中它们代表的意义分别是网络开始的位置, 网络的样本维数, 网络的样本数, 输入样本需要迭代的次数。

接受方按照把明文后的向量截取下来, 对照通过相对安全的通道传输过来的网络参数, 把该向量的第24位, 每四位截取一个向量, 共截取3个网络样本, 按照协议的公式计算出网络的权值, 并把其前边的样本也按四个每组截成若干个输入, 进入网络迭代5次得出的结果, 和从第24+4*3到第54位的数按5个一组输入从第55位开始取10位数分解成2个5维的样本构成的网络进行迭代3次的结果便是密钥, 将密钥和密文异或变得出明文。

本文采用基本的Hopfiled网络作为加密模型, 简单的外积法计算权值。事实上, 我们可以利用各种网络模型以及改进的权值计算方法来获得网络的权值, 只要传递给接受方相应的参数, 这样既增大的破译的难度, 又使该算法有很大的灵活性。

本算法也存在一定有待改善的缺陷, 由于网络的一些样本在迭代有限步内就成为网络的冗余吸引子, 继续迭代也不再发生变化, 这是一个明显的安全漏洞, 所以我们对加密模型的研究还在于尽量使用不收敛的网络输入, 这样能提高该密码系统的安全性。

六、结论

数据加密技术是现代信息社会急需的热门技术之一, 本文主要分析Hopfiled联想记忆神经网络在数据加密上的用途, 详细介绍了加密的原理及过程。对于采用神经网络的方法实现数据加密提供了一种新的思路。

摘要:本文首先介绍了数据加密的基本原理, 在此基础上说明了神经网络在数据加密的实现过程, 并以Hopfield神经网络为例详细阐述了加密、仿真过程及破译复杂度, 为神经网络在数据加密中的应用开辟了一条新路。

关键词:神经网络,加密,密钥

参考文献

[1]Ohta Masaya.Chaotic Neural Networks with Reinforced self-feedbacks and Its application to N-queen Problem[J].Mathematics and Computers in Simulation, 2002, 59 (4) :305-317

[2]Adachi M, Aihara K.Associative Dynamics in a Chaotic Neural Network[J].Neural Networks, 1997, 10 (1) :83-98

[3]He G G, Gao Z T, Zhu P, et al.Controlling Chaos in a Chaotic Neural Network[J].Neural Networks, 2003, 16 (8) :1195-1200

[4]何国光朱萍曹志彤等:混沌神经网络的Lyapunov指数与混沌区域[J].浙江大学学报, 2004, 31 (7) :387-390

[5]Xinshun Xu, Zheng Tang, Jiahai Wang.A method to improve the transiently chaotic neural network[J].Neurocomputing67 (2005) :456-463

上一篇:财务管理策略下一篇:结核药物性肝病