人人范文网 范文大全

基于U盘和网络的加密解密系统

发布时间:2020-03-03 21:46:36 来源:范文大全 收藏本文 下载本文 手机版

软件 2016年32卷

IT传媒品牌

基于U盘和网络的加密解密系统

许永正[1]

(1.连云港杰瑞深软科技有限公司,江苏 连云港 222006) 摘要:本文提出并实现了一种基于U盘和网络的加密解密系统,介绍了系统的功能和组成。整个系统由相对独立的加密系统、解密系统和校核系统三个部分组成,利用成熟的加密算法和数字签名等技术对传输的数据进行加密、解密和校验。实验结果表明,该系统极大的提高了数据的保密性和安全性。 关键词:信息安全技术;加密;解密;数据安全

中图分类号:TP393.09 文献标识码:A

An Encryption and Decryption System Based on U-disk and

Network

XU Yong-zheng

(Lian Yun Gang JARI Deep Soft Technology Co.,Ltd,Lian Yun Gang

222006,China) Abstract: This paper proposes and implements a encryption to decrypt system based on u-disk and network, this paper introduces the system function and composition.The whole system consists of relatively independent system of encryption, decryption and checking system of three parts, using the mature encryption algorithm and digital signature technology for the transmiion of data encryption, decryption and validation.The experimental results show that the system greatly improves the privacy and the security of data.Key words: information security technology, encryption, decryption, data security

0、引言

随着计算机网络技术的发展和Internet的普及,病毒、木马、黑客等问题日益威胁着计

[1]算机和网络的正常使用,信息安全技术越来越受到人们的重视,尤其是在商业、军事等对数据的保密性、安全性要求很高的领域。

在日常工作中, 网络由于数据传输方便快捷,U盘等可读写的移动存储介质由于携带方便、可重复使用等特点,已经成为人们传输数据的主要手段和工具,但是网络数据传输容易被他人截取,移动存储介质上的数据一般都是明文存储,他人可以直接读取,数据的保密性和安全性很低。

本文实现的加密解密系统不管是通过网络还是U盘传输数据,都可以方便的对数据进行加密和解密,极大的提高了数据保密性和安全性。

1、定义

1.1 加密算法

加密解密系统的技术难点在于加密算法,如何选择合适加密算法,产生强固的密钥,提升系统安全性可靠性,是所有加密系统都要仔细考虑的。目前流行的加密算法分为单向散[3][3][3]列算法、公开密钥算法、对称算法三类。

[8]软件 2016年32卷

IT传媒品牌

1.2 单项散列算法

单项散列函数算法也称为Hash算法,是一种将任意长度的消息压缩到某一固定长度(消息摘要)的函数(不可逆过程)。Hash函数主要用于数字签名、消息的完整性检测、消息起源的认证检测等。常见的散列算法有MD

5、SHA、N-hash、PIPI-MD、HAVAL等。

1.3 公开密钥算法

公开密钥算法也称为非对称算法,用作加密的密钥不同于用作解密的密钥,而且解密密钥不能根据加密密钥计算出来。加密密钥可以公开,即陌生人能用加密密钥加密信息,但只有用相应的解密密钥才能解密。加密密钥叫公钥,解密密钥称为私钥。公开密钥算法的安全性都是基于复杂的数学难题,根据所基于的数学难题分类,以下三类系统目前被认为是安全有效的:大整数因子分解系统(代表性的有RSA算法)、离散对数系统(代表性的有DSA、EIGamal算法)和椭圆曲线离散对数系统(ECC算法)。公钥算法的主要局限在于,这种加密形式的速度相对较低。

1.4 对称算法

对称加密算法的加密密钥和解密密钥完全相同,所以也称为共享密钥加密或机密密钥加密。其安全性依赖于以下两个因素:第

一、加密算法必须是足够强,仅仅基于密文本身去解密信息在实践中是不可能的;第

二、加密数据的安全性依赖于密钥的秘密性,而不是算法的秘密性。衡量对称算法优劣的主要尺度是其密钥的长度。密钥越长,在找到解密数据所需的正确密钥之前必须测试的密钥数量就越多。需要测试的密钥越多,破解这种算法就越困难。有了好的加密算法和足够长的密钥,如果有人想在一段实际可行的时间内逆转转换过程,并从暗文中推导出明文,从计算的角度来讲,这种做法是行不通的。典型的对称加密算法包括:DES、BlowFish等。

1.5 数字签名

对文件进行加密只解决了传送信息的保密问题,而防止他人对传输的文件进行破坏,以

[5]及如何确定发信人的身份还需要采取其它的手段,这一手段就是数字签名。在电子商务安全保密系统中,数字签名技术有着特别重要的地位,在电子商务安全服务中的源鉴别、完整性服务、不可否认服务中,都要用到数字签名技术。在电子商务中,完善的数字签名应具备签字方不能抵赖、他人不能伪造、在公证人面前能够验证真伪的能力。

电子商务中数据传输的几个安全性需求 :

(1)数据的保密性:用于防止非法用户进入系统及合法用户对系统资源的非法使用;通过对一些敏感的数据文件进行加密来保护系统之间的数据交换,防止除接收方之外的第三方截获数据及即使获取文件也无法得到其内容。如在电子交易中,避免遭到黑客的袭击使信用卡信息丢失的问题。

(2)数据的完整性:防止非法用户对进行交换的数据进行无意或恶意的修改、插入,防止交换的数据丢失等。

(3)数据的不可否认性:对数据和信息的来源进行验证,以确保数据由合法的用户发出;防止数据发送方在发出数据后又加以否认;同时防止接收方在收到数据后又否认曾收到过此数据及篡改数据。

上述需求对应于防火墙、加密、数字签名、身份认证等技术,但其关键在于数字签名技术。

1.6 密钥管理体制

密码系统的两个基本要素是加密算法和密钥管理。加密算法是一些公式和法则,它规定了明文和密文之间的变换方法。由于密码系统的反复使用,仅靠加密算法已难以保证信息的安全了。事实上,加密信息的安全可靠依赖于密钥系统,密钥是控制加密算法和解密算法的关键信息,它的产生、传输、存储等工作是十分重要的。 [5]软件 2016年32卷

IT传媒品牌

2、概述

本文实现的系统由加密系统、解密系统和校核系统三个部分组成。加密系统负责对待加密文件进行加密并产生密钥,将加密后的数据按照自定义格式存入移动存储介质(在本文中称之为目标卡),密钥存入另一个移动存储介质(在本文中称之为解锁卡)。同时加密系统还提供网络接口,将目标密文文件和解锁文件传输给解密系统,将待加密文件传送给校核系统;解密系统是加密系统的逆过程,它从网络接口或者可移动存储介质获得目标密文文件和密钥,将目标密文文件解密为明文,同时解密系统提供的网络接口将解密后的明文发送给校核系统;校核系统通过网络接口或者移动存储介质获得待加密文件和明文,对二者进行比对验证,并得出验证结果。三个系统分别安装在三台计算机上,它们通过预定义的接口进行通信和数据交换。

系统流程图如图1所示: 软件 2016年32卷

IT传媒品牌

加密系统加密操作选择待加密文件加密处理甲密文文件储存目标卡密钥文件储存解锁卡校核处理乙乙校核系统验证结果* 解密系统目标卡甲密文文件甲解锁卡甲密钥文件+*解密处理乙+乙明文备注:+ : 表示取甲数据或者乙数据,二者之一* : 表示取甲数据和乙数据,二者缺一不可: 表示数据流从网络传输:表示移动存储介质数据:表示存储数据:表示处理过程图1 加密解密系统流程图

由上述系统功能可见,加密数据安全性主要取决于解锁卡,需要防止非法人员同时获取解锁卡和目标卡后进行破解,所以系统还要对解锁卡中密钥进行二级加密,即采用所谓的二级密钥管理体制。

在实际使用中,如果没有校核系统,为了保证解密后数据的正确性,需要采用数字签名技术,对加密数据和密钥进行签名验证。这样保证了解密时使用的密文数据与密钥是由合法的加密系统产生的,并且没有被修改或破坏,最终确保解密后数据的正确性。

同时,解密系统需要加强密码保护机制,因为其中有用于验证签名文件的密钥文件,保护这些密钥,成为保卫系统安全的最后一道屏障。 软件 2016年32卷

IT传媒品牌

由于三个系统之间需要交换数据,它们之间的数据接口也容易成为攻破系统保密措施的一个弱点。因此需要合理设计数据接口,交换数据时采用安全的加密协议。

3、加密系统

加密系统的功能为选择加密算法对原始数据进行加密,并生成密钥。然后将加密后的数据按照自定义格式存入目标卡(防止别人直接读取数据),密钥存入解锁卡。流程图如图2所示:

原原原原原原*原/原原原原原原原原原原原原原原原原原原原原原原原原原原原原*原原原原原原RSA原原原原原原原原*原原原原原原原原G0原原原原原原原原原原原原原原原原原原原原原*原原原原原原原原原原原原原原原原原原原原原原原原原原原原原原原原原原*原原原原原S0 RSA原原原原原原原原原原原原原原原原原原原原原原原原原原原原原原原原原原原原原原原原原*原原原原原原原原原原原原原原原原原原原*原原原* : 原原原原原原原原原原原原原原原原原原原原原原原原:原原原原原:原原原原原原原原原原:原原原原原原原原:原原原原图2 加密系统流程图

:原原原原原原首先用户选择加密算法对原始数据进行加密,所有的加密算法都封装在DLL中,其优点一是隐藏了算法的实现细节,二是增强了系统的可维护性和扩展性。原始数据加密后生成密文和主密钥,密文和其签名文件储存到目标卡,主密钥进行RSA加密生成工作密钥,并对工作密钥进行数字签名,然后再对RSA算法产生的私钥S0进行加密,最后将这些结果储存到解锁卡中。系统启动时调用RSA算法产生了一对安全的密钥(公钥G0和私钥S0),利用公钥G0对主密钥加密,同时进行签名文件的加密(见1.1),另外也对私钥S0进行了加密软件 2016年32卷

IT传媒品牌

(见1.2),增强系统的安全性。

加密时,系统处理流程按以下步骤进行:

(1)用户输入待加密原始数据文件(定义为OF),然后选择加密算法。 (2)系统调用的加密算法程序(定义为DLL),选择的算法序号为XH, 生成“主密钥”(定义为PK),并用PK和DLL对原始数据OF加密,生成密文文件(定义为SF)。

(3)系统调用RSA算法,生成密钥对(公钥G0,私钥S0),该过程定义为WK。 (4)用G0对SF进行数字签名,生成签名文件(定义为SSF)。 (5)将SF与SSF合并,生成合成为已加密目标文件(定义为MSF),并保存到目标卡中; (6)用WK中的公钥G0对PK加密,生成“工作密钥”(定义为SPK)。 (7)用G0对SPK进行数字签名,生成签名文件(定义为SSPK)。

(8)利用算法对WK中的私钥S0进行加密,生成“加密后内容”(定义为SS0)。 (9)将XH、SS0、SPK、SSPK合并,生成合成解锁文件(定义为MSPK),并保存到解锁卡中。

3.1 数字签名及签名文件加密处理流程

数字签名及签名文件处理完成两个功能:数字签名和签名文件加密。签名文件加密时采用加密系统产生的公钥G0进行加密,因为公钥G0是随机产生的,安全性较高,并且解密用到的私钥S0也经过了加密。流程图如图3所示:

来自待签名、加密文件Hash函数计算密文散列值RSA随机算法生成的公钥G0图3 数字签名及签名文件加密流程图

RSA加密

3.2 私钥S0加密处理流程

流程图如图4所示:

随机获得一组RSA密钥对来自私钥S0甲*公钥G1*乙密钥对集合丙密钥对数组序号私钥S1RSA加密关键密钥送给加密后的内容送给加密后的内容 图4私钥S0加密流程图

私钥S0是一个相当关键的密钥,获得它就能破解工作密钥得到主密钥。传统的加密系统多采用人为方式来保证私钥的安全性,这样就降低了系统的安全性。为了增强系统的安全软件 2016年32卷

IT传媒品牌

性,这里使用了一种策略,即对私钥S0进行加密。对私钥加密采用固定密钥对,这些固定密钥对是由RSA算法产生的安全密钥对。每次私钥S0加密时,系统随机提取一组密钥对(公钥G1和私钥S1),利用公钥G1对私钥S0进行加密,然后将加密后的关键密钥和密钥对集合序号合并到解锁文件中,私钥S1不作任何处理。

4、解密系统

解密系统通过读取解锁卡上的密钥文件解密目标卡上的数据文件,从而得到还原的数据。然后将还原的数据存储到指定位置,并通过网络接口发送给校核系统。流程图如图5所示:

已加密目标文件分解甲解锁文件分解乙*密文签名文件密文**丙**工作密钥戊丁密钥对数组序号甲关键密钥*乙加密算法编号工作密钥签名文件签名验证解密私钥S0签名验证丙私钥S0*解密主密钥主密钥乙甲*解密明文明文*发送给校核系统图5解密系统流程图

解密系统还提供签名验证功能(见2.1),用来确保密文的合法性,一旦密文遭到非法篡改,系统能够及时发现。为解密出明文,系统要一步步获得密钥,首先根据关键密钥和密钥对集合序号解密出私钥S0(见2.2),再根据私钥S0和工作密钥解密出主密钥,最后才通过主密钥、密文、加密算法编号解密出明文(见2.3)。

解密系统工作步骤为:

(1)将已加密目标文件进行分解,获得密文签名文件(SSF)和密文(SF)。

(2)对SSF进行签名验证,如果合法则继续解密,若不合法则提示信息并结束解密。 (3)将解锁文件进行分解为密钥对序列号(定义为KXH)、关键密钥(定义为GK)、工作密钥(SPK)、加密算法编号(XH)、工作密钥签名文件(SSPK)。

(4)将密钥对序列号(KXH)和关键密钥(GK)解密获得私钥S0。 (5)将私钥S0和工作密钥SPK解密获得主密钥(PK)。 (6)利用密文(SF)、主密钥(PK)和加密算法编号(XH)解密出明文(OF)。 (7)提供网络接口将明文发送给校核系统。

4.1 签名验证处理流程

签名验证处理实现文件的合法性验证。如果签名文件经RSA算法解密的散列值1与被软件 2016年32卷

IT传媒品牌

签名文件经过Hash变换后的散列值2一致,则表示验证成功,否则验证失败。这里的Hash函数要和加密系统中数字签名的Hash函数一致,这样签名验证才能正常工作。流程图如图6所示:

私钥S0来自签名文件甲*RSA解密乙散列值1*甲验证成功比对+相同不同来自被签名文件(如密文)Hash函数计算散列值2乙验证失败,结束解密图6签名验证处理流程图

4.2 解密私钥S0处理流程

流程图如图7所示:

来自密钥对序号乙加密的密钥对集合*获得对应的一组密钥对甲已加密的公钥G1*乙已加密的私钥S1甲*解密私钥S1甲解密系统登录密码乙乙来自关键密钥甲*解密私钥S0送往私钥S0 图7解密私钥S0处理流程图

根据密钥对序号,系统从密钥对集合中取出已加密的公钥G1和已加密的私钥S1,对已加密的S1进行解密得到私钥S1,再利用S1将关键密钥解密为私钥S0。值的注意的是,解密系统中的密钥对集合与加密系统中的密钥对集合存在对应关系不一致。实际上,解密系统中的密钥对集合是经过加密的,它使用了解密系统登录密码进行对称算法加密。有了这样的策略,即使目标卡、解锁卡、解锁软件都被盗取(解密软件登录密码未被盗取),盗取者仍然不能解密出明文,就算盗取者通过暴力手段跳过了密码验证环节,仍然解密不出明文,因为没有软件登录密码就无法解密出私钥S1,也就无法解密出明文。

4.3 解密明文处理流程

首先系统根据加/解密算法编号确定加/解密算法,然后系统利用加/解密算法、密文、主密钥解密出明文。其中解密系统用到的加/解密算法库和加密系统使用的加/解密算法库一软件 2016年32卷

IT传媒品牌

致。流程图如图8所示:

来自密文来自主密钥来自加密算法编号乙*确定加/解密算法加/解密算法库甲乙丙加/解密算法甲**解密送给明文

图8解密明文处理流程图

5、校核系统

校核系统用来验证加密、解密的正确性和可靠性。原始数据和解密系统解密后的数据通过移动存储介质或者网络传输到校核系统进行比对,并生成验证报告。流程图如图9所示:

来自加密系统的待加密明文比对来自解密系统解密获得的明文验证报告 图9校核系统流程图

6、结论

以上设计充分考虑了系统各方面可能存在的漏洞,严密防范了各种可能攻击,让一般技术手段很难破解。首先,假设非法人员先获取了目标卡,显然他是无法单靠目标卡解密上面保存的加密数据的;那么他同时获得了目标卡和解锁卡,同样他还是无法获得数据,因为解锁卡上的密钥是被加密的,而加密它们的密钥保存在解密系统的密钥对集合中,所以他还需要获取解密系统;如果他只是想通过修改或更换数据,导致我们使用错误的数据,那么他还需要过数字签名验证这关,这同样需要工作密钥来解密签名文件;解密系统安装在舰船加固机上,我们可以通过各种硬件或软件手段保证它的安全;然后我们再假设非法人员通过某种手段又获得了解密系统的完整拷贝,那么现在他会碰到软件密码保护这个问题了,如果他没有获取到密码,即使他通过软件运行跟踪、修改跳转指令等破解手段,他会发现没有密码还是无法获取关键的工作密钥,而通过散列值反推出密码也是不可能的;最后,如何保证密码安全,这就已经不属于技术范畴的问题了。当然,以上种种分析都是建立在加密算法高强度的基础上的,只有难以在有限时间内解出的算法才能最终保护系统安全。

参考文献:

[1] 赵泽茂,朱芳.信息安全技术[M].西安:电子科技大学出版社,2009.软件 2016年32卷

IT传媒品牌 [2] 武新华.加密解密全攻略(第2版)[M].北京:中国铁道出版社,2008.[3] 林明星.数据加密技术的具体应用[J].软件,2014.35(1):100.[4] 吕素忠,张毅霞.磁盘信息的加密[N].河南通信报,2000.[5] 卿斯汉.密码学与计算机网络安全[M].北京:清华大学出版社,2001.[6] 刘芳.一种数据库加密系统的设计与实现[J].软件,2012,33(11):97-98.

[7] 李晋丽,段小波,王琳.基于过滤驱动的安全密码框的研究与实现[J].软件,2013,34(4):19-22.[8] 马萌.Internet 密钥交换改进协议研究[J].软件,2013,34(5):74-75.

作者简介:

许永正,男,1981--,工程师,主要研究方向:网络信息安全、企业管理软件。

江苏省科技型中小企业创新资金项目“烟草零售网络管理信息系统”(项目编号:BC2007120)。

台电U盘加密大师操作说明

U盘系统使用常见问题小结

U盘管理制度

创新U盘

U盘拔不出

防止u盘重要信息泄密,建议使用u盘加密软件

U盘安装Ubuntu系统(含硬盘分区)

手机和U盘自检病毒

光盘加密和解密方法解决加密光盘的复制

htlx安全U盘

基于U盘和网络的加密解密系统
《基于U盘和网络的加密解密系统.doc》
将本文的Word文档下载到电脑,方便编辑。
推荐度:
点击下载文档
点击下载本文文档