文件加密技术信息安全论文

2022-04-25

摘要:Android应用程序在未经任何加固处理的情况下极容易受到反编译攻击,存在较大的安全隐患。下面小编整理了一些《文件加密技术信息安全论文(精选3篇)》相关资料,欢迎阅读!

文件加密技术信息安全论文 篇1:

电子文件动态加密技术研究

【摘要】随着计算机和网络技术的飞速发展,越来越多的信息以电子形式存储在个人电脑中,并且通过网络进行广泛地传递,在大量的信息存储和交换中,信息的安全问题越来越引起人们的重视。对电子文件进行加密处理,成为普遍采用的信息安全保护手段,被广大使用者认同。本文对电子文件动态加密技术进行了研究。

【关键词】电子文件;信息安全;动态加密技术

随着计算机和网络技术的飞速发展,越来越多的信息以电子形式存储在个人电脑中,并且通过网络进行广泛地传递,在大量的信息存储和交换中,信息的安全问题越来越引起人们的重视。近年来,对电子文件进行加密处理,成为普遍采用的信息安全保护手段,被广大使用者认同。

1.电子文件的加密方式

利用计算机技术对电子文件进行加密的方式很多,主要以静态加密技术和动态加密技术为主。

(1)静态加密技术。静态加密技术是指在加密期间,待加密的电子文件处于已存在但未使用状态,操作者通过输入密码、密钥证书或数字签名等方式,对电子文件进行加密。加密文件使用时,需要操作者通过输入密码或密钥证书或数字签名等解密信息,在得到明文后才能使用。目前市场上许多应用系统中(如WORD的“加密文件”功能等)的口令或密钥证书功能,就属于这种加密方式。

(2)动态加密技术。动态加密技术,也称为实时加密或透明加密技术,是指电子文件在使用过程中,如新建文件、编辑文件和计算机自动对电子文件进行加密操作,无需操作者对电子文件进行人工干预。合法用户在使用加密的文件前,也不需要进行解密操作即可使用,表面看来,访问加密的文件和访问未加密的文件基本相同。经过动态加密的电子文件,对于“合法”操作者来说,无需对电子文件进行解密即可使用,访问或操作加密文件与访问未加密电子文件操作动作相同。因此,对于“合法”操作者,经过动态加密的电子文件是“透明”的,好像没有进行过加密。而对“非法”操作者,即使通过其他渠道得到这些电子文件,由于电子文件经过动态加密,使其无法使用。即使能够打开电子文件,计算机界面上也只是一些“乱码”而已,更谈不上对电子文件进行阅读、编辑和打印。动态加密技术的主要特征为电子文件从创建开始,就处于加密状态,保存在计算机存储器中的电子文件也是加密的。

由于动态加密技术对需要加密的电子文件数据内容,实行实时加密,计算机必须动态跟踪这些需要加密的数据流,而且加密的实现位于计算机系统内核中。因此,从实现的技术角度来看,实现动态加密技术要比静态加密技术困难,需要解决的技术难点也远远超过静态加密技术。动态加密技术不仅不改变操作者的使用习惯,而且无需操作者进行干预操作即可实现电子文件的安全,因而得到广泛的应用。

2.动态加密技术研究

利用动态加密技术对电子文件进行加密处理,其加密的过程均在计算机后台中进行,电子文件使用者在使用加密文件时,与未使用动态加密技术时一样,不会感觉到操作过程的变化。例如,操作者利用Word系统编辑一个文档(格式为DOC)时,不会因为使用动态加密技术而出现超过未使用的步骤,仍保持着原有的操作习惯和操作步骤,并在电子文件操作反应时间上几乎不受影响。

在动态加密技术中,加密策略和进程识别是两个非常重要的技术。一般情况下,加密策略含有加密算法、密钥和控制模式等。加密策略规定电子文件在加密过程中,需要采用何种方式去改变电子文件的内容,以达到保护电子文件的目的。加密策略具有多重性,即对同一电子文件采用同一个加密策略,而对不同的电子文件则可以采用不同的加密策略,也就是常说的“一文一密”。

动态加密技术的另一个重要技术就是进程识别。在许多情况下,动态加密需要通过对操作电子文件的进程进行识别,来判断是否需要对所操作的电子文件进行加密保护。对电子文件的进程识别,除对进程名称进行识别外,还需要抽取进程特征,进行对比分析,以确定该进程是否是动态加密所期望的进程特征,防止“假冒”进程对加密电子文件的“越权”访问。进程识别可根据识别的位置分为应用型、驱动型和应用驱动混合型三类。

加密策略和进程识别一般根植于动态加解密平台中,相互配套,缺一不可。除加密策略的加密算法和密钥外,加密策略和进程识别由系统管理员集中管理,在相應的工具下,进行制订和维护,除系统管理员外的文件操作者无权获取或更改加密策略和进程识别。

3.动态加密技术实现的层次级别

在不同的操作系中,虽然数据的具体组织和存储结构会有所不同,但它们应用程序在访问存储设备数据时,一般都通过操作系统提供的API 调用文件系统,然后文件系统通过存储介质的驱动程序访问具体的存储介质。其中层次I和II属于应用层;层次III和IV属于操作系统内核层。这种组织结构决定了加密系统的实现方式,在数据从存储介质到应用程序所经过的每个路径中,均可对访问的数据实施加密/解密操作,其中模型中的层次I只能捕获应用程序自身读写的数据,其他应用程序的数据不经过该层,因此,在层次I中只能实现静态加密,无法实现动态加密;即使是层次II,也并不是所有文件数据均通过该层,但在该层可以拦截到各种文件的打开、关闭等操作。因此,在应用层实现的动态加解密产品无法真正做到“实时”加密操作,一般只能通过其他变相的方式进行实现。例如,在应用程序打开文件时,先直接解密整个文件或解密整个文件到其他路径,然后让应用程序直接(重定向)访问这个完全解密的文件,而在应用程序关闭这个文件时,再将已解密的文件进行加密。其实质是静态加解密过程的自动化,并不属于严格意义上的动态加密。

4.动态加密技术的特点

动态加密技术的发展给电子文件保护带来新的方式和方法,可以控制绝大多数文件操作系统。同时,以动态加密技术为核心的动态加密平台(软件系统),如GS-DES大天图文档安全管理系统等,已广泛得到应用,并得到用户的肯定。这些动态加解平台(软件系统),具有以下共同特点:

(1)适用面广:适用于文字、图片、工程图、三维模型、流程图、数据表格、计算机程序、数据库和媒体文件等电子文件。

(2)使用方便:不影响操作者原有的操作习惯,对计算机软、硬件配置无任何特殊要求。

(3)强制加密:对指定的文件操作系统,实行后台强制性加密,加解密过程不需要人工干预。对外提供的明文文件实行统一解密,规范了用户的安全管理模式。

(4)内外有别:加密文件内部交流无需处理即可应用,一旦离开使用环境,无法打开操作,从而保护用户的利益。

随着电子文件加密技术的发展进步,基于动态加密技术对电子文件进行加密的软件产品,越来越被广大用户认可。利用电子文件加密软件对用户内部的电子文件进行“后台”处理,防止电子文件通过网络以及数据存储设备(如U盘等)对外泄漏,成为当前用户对电子信息安全保护的主要手段,实现了信息安全保护的目的。

【参考文献】

[1]陈全.电子文件加密识别技术研究[J].档案学研究,2002,(02).

[2]贺亚林,余旆旆,黄伟.浅析电子商务系统的安全问题[J].软件导刊,2010,(03).

[3]周安峻.电子商务平台的信息安全技术初探[J].阿坝师范高等专科学校学报,2005,(03).

[4]孙克辉,盛利元,黄德祥.逻辑加密型IC卡的安全性能分析[J].微电子技术,2002,(01).

作者:甘雨田

文件加密技术信息安全论文 篇2:

AndroidAPP加固方案的研究

摘  要:Android应用程序在未经任何加固处理的情况下极容易受到反编译攻击,存在较大的安全隐患。APP加固技术为应用程序提供了有效的防护措施,增加了反编译的难度,本文针对目前常用的反编译手段提出了一种APP加固方案,该方案首先针对需要保护的资源文件进行加密处理;然后针对DEX文件的反编译,采用混淆代码技术加固处理,针对二次打包,本文采用签名校验技术。实验表明,本文提出的加固方案能够有效地防患APK被反编译,加大了二次打包的难度。

关键词:APP反编译;DEX加固;加壳保护;二次打包

1   引言(Introduction)

Android程序在编译后形成字节码文件,经过打包、优化、签名等工具处理后最终形成可发布的APK文件。然而,未经加固处理的APK文件极容易被反编译工具进行逆向工程处理,暴露程序的实现细节,甚至被植入恶意代码[1]。Android APP加固技术能够有效地防止程序被反编译、破解、二次打包、注入等,提高程序的安全性,从而为维护知识版权增加了一道“防火墙”。

目前,Android APP加固技术[2]较多,常用的加固方法有混淆代码、DEX加固、虚拟机加固、加密等。爱加密通过对APP进行漏洞分析并采用DEX加壳保护、内存和资源文件等的保护技术能够有效地防止APP被二次打包。NAGA·IN[3]通过推出的手机客户端安全检测控件为银行、基金、券商等手机软件提供了有效的安全保障。360加固保[4]、阿里聚通过签名校验、代码加密压缩、内存动态跟踪等技术为移动应用提供专业性安全保护。本文在研究当前各种加固技术的基础上提出了一种Android APP加固方案,方案通过加密、混淆代码、签名校验等多种方法对目标代码进行加固操作,经实验验证,本文提出的加固方案能够很好地对抗反编译、二次打包、注入等攻击。

2   APP反编译概述(Overview of APP de-compilation)

2.1   Android APK结构

APP反编译无非是对Android应用程序编译打包后的APK进行逆向工程,然后分析APK的目录结构和应用程序的行为,并篡改应用程序代码、注入恶意代码。不同的应用程序APK结构不同,但每一个APK中都包含基本目录结构,也是逆向工程攻击的目标。基本目录结构如下:

(1)classes.dex文件。该文件是JAVA源码经JDK编译和DEX优化后的DEX字节码文件,可以直接运行在Dalvik虚拟机上。DEX文件包括文件头和文件主体两部分,DEX文件头主要包括校验字段、签名字段偏移地址和长度信息等,DEX文件的主体部分包括索引区和数据区。图1是DEX文件的一个实例。

DEX文件的构成如图2所示。

(2)AndroidManifest.xml文件。该文件为应用程序的配置文件,应用程序建立时存在。配置文件描述了应用程序的配置信息,如应用的名称、图标、版本、权限的授予、引用的库信息等,在打包时配置文件经过了压缩。

(3)META-INF目录。该目录存放签名文件,如CERT.RSA、CERT.SF和MANIFEST.MF。

(4)res目錄和assets目录。这两个目录为应用程序的资源文件目录,目录下的部分资源将被打包进APK中。

(5)resources.arsc文件。该文件为二进制资源文件的索引文件,程序运行时引用资源ID,通过该索引文件的映射找到对应的资源。

2.2   反编译工具

当前,网络上有许多反编译之类的免费工具,Android APP反编译常用的工具有:

(1)APKTool:APKTool[5]是GOOGLE提供的APK编译工具,利用该工具能够获取APK中的图片、布局等资源文件和目录结构。

(2)dex2jar[6]:该工具能够将APK中的classes.dex文件转换成JAR文件。

(3)JD-GUI:是反编译工具之一,利用该工具能够查看dex2jar生成的JAR文件,显示反编译后的JAVA源代码。

利用以上三个工具能够轻松地将APK反编译成JAVA源代码,其实现步骤如下:

步骤一:利用APKTool工具对APK实施第一轮反编译,反编译后得到APK的目录结构及资源文件。

步骤二:利用dex2jar工具将APK目录下的classes.dex文件转换成JAR文件,生成的JAR文件无法直接查看。

步骤三:利用JD-GUI工具查看将DEX文件转换后的JAR文件,源代码直接在该工具下查看,反编译结束。

3   反编译分析(Analysis of de-compilation)

针对以上反编译工具的使用我们不难发现,没有经过加固的APK极容易被反编译,应用程序代码的安全性存在巨大的隐患。下面本文分析隐患存在的原因:

(1)APK本身存在一定的开放性[7]。我们将APK文件的后缀名手工改成压缩文件的后缀名,如.rar或.zip,其目录结构完全暴露出来。虽然部分文件如AndroidManifest.xml、classes.dex等文件經过了编译,但其目录下的部分资源文件却是原封不动地被打包进APK,如res、assets目录下的资源文件。

(2)JAVA字节码易被反编译[8]。JAVA代码经编译后形成字节码保存在class文件中,而字节码本身是一种中间代码,是解析后的带有丰富语义的跨平台编码,这些语义字节码直接表达了程序的行为和动机,经过极为简单的反编译就能破解其中的语义信息。

(3)Android APP的签名机制能够被伪造[9]。在JDK 1.7版本前APK的签名能够轻易地被伪造,从而将反编译后的文件进行二次打包。虽然在后来的版本中使用原APK的签名进行二次打包是无效的,但二次打包工具却能够为反编译后的文件进行重新签名,从而诞生了一个全新的伪造的应用程序。

4   加固方案(Reinforcement scheme)

经过对反编译过程进行分析我们不难发现,如果需要提高应用程序的安全性,增加APK的反编译难度,就必须针对反编译使用的手段采取相应的措施来加固APK。本文在研究反编译技术的基础上提出一种加固Android APP的方案,该方案增加了反编译的难度,能够有效地防止APK被反编译。

4.1   加固方案描述

针对反编译工具能够轻易地提取APK中的资源文件,本文提出抽取需要保护的资源文件,并对其进行加密处理;针对DEX文件的反编译,本文采用混淆代码加固处理;针对二次打包,本文采用签名校验技术防患重签名,从而加大了二次打包的难度。加固方案的基本操作流程如图3所示。

4.2   加固方案的实现

本方案的实现分三个步骤进行:

第一步:对资源文件进行加密、加壳处理。处理过程如下 :

(1)将APK文件的后缀名改成.zip或.rar,并将修改后的APK文件解压至一文件下。

(2)抽取需要保护的资源文件。编写JAVA文件读取程序,由文件读取程序以文件流方式读取需要保护的资源文件。

(3)对抽取的文件采用加密处理,并隐藏加密文件。在文件读取的过程中采用MD5加密算法对文件流进行加密处理,并设置文件的属性为隐藏。

(4)编写资源解密恢复程序,并将代码放置Application类的入口。在Application类的入口处编写MD5解密算法,在程序正式执行前调用解密算法,恢复加密的资源文件,以保证程序能够正常访问资源文件。

经过以上步骤处理,APK中的资源文件已经被加密,反编译工具得到的将是加密后的资源文件。而APK在正式执行前已经调用解密算法恢复了被加密的资源文件,加密方案并不影响程序对资源的正常访问。

第二步:对classes.dex进行代码混淆加固处理。处理过程如下:

(1)利用反编译工具对classes.dex文件实施反编译。常用的反编译工具dex2jar和JD-GUI能够轻松地对DEX文件进行反编译,反编译后生成jar文件,从JD-GUI工具中能够查看该jar文件中的源码文件。以新建一个“HelloWorld”应用程序为例,将该程序APK中的classes.dex文件经反编译后在JD-GUI中打开,我们能看到,未经代码混淆处理的APK经反编译后,其源代码暴露无遗,图4是“HelloWorld”应用程序经反编译后的结果。

(2)利用ProGuard工具对反编译后的应用程序实施代码混淆。在Android SDK中集成了一个ProGuard免费工具,也可使用其他版本的ProGuard工具,利用该工具可以对反编译后的jar文件实施代码混淆。ProGuard的执行过程由六个步骤组成:

第一步:输入:将原DEX文件反编译后的jar文件作为输入值。

第二步:压缩:检测并移除代码中无用的类、字段、方法等。

第三步:优化:移除无用指令,对字节码进行优化。

第四步:混淆:使用a、b、c这样的简短字母对类、字段和方法进行重命名。

第五步:预检:在Java平台上对处理后的代码进行预检,确保加载的class文件是可执行的。

第六步:输出:最后将混淆后的代码以jar文件形式输出。

ProGuard工具执行过程如图5所示。

第七步:重新打包和签名。处理过程如下:

(1)新建文件夹,将反编译后的所有工程文件夹和文件放置在该文件夹下。

(2)利用打包工具生成目标APK,并利用重签名工具对目标APK实施重签名。打包工具可以使用apktool,重签名工具可以使用signapk工具。

5   实验验证(Experimental verification)

为了验证本方案是否可行,本文以未经任何加固处理的APK为实验对象,采用本方案提供的操作步骤,对实验对象实施加固处理。

(1)实验目的

通过方案提供的操作步骤验证采用本方案能否对目标APK实施加固处理,并通过对加固处理后的APK实施反编译,验证反编译能否成功。

(2)实验预期结果

如果对加固后的APK实施反编译不能成功,表明本方案的加固操作能够有效地防患APK被反编译,加大了二次打包的难度。

(3)实验过程

本实验以名为“Helpme.apk”的APK为实验对象,该APK未经任何加固处理,其源代码目录结构如图6所示。

为了对APK中的需要保护的资源文件进行加密处理,本文选择APK中的图片资源作为重要的保护资源,并对其实施MD5加密处理。加密过程调用事先编写好的方法,以其中一张图片“s4.png”为例,加密前后對比的结果如图7所示。

接下来利用反编译工具dex2jar对classes.dex文件实施反编译。在cmd命令窗口定位到dex2jar所在的文件夹,并输入如下命令:

d2j-dex2jar.bat classes.dex

命令执行完毕后在dex2jar文件夹下新生成一个classes-dex2jar.jar文件,该文件为反编译后生成的压缩文件,不能直接打开,可以利用JD-GUI工具查看该文件的目录结构和文件,JD-GUI工具下查看的目录结构如图8所示。

下面利用ProGuard工具对反编译后的jar文件实施代码混淆,为了代码混淆的实施能够顺利进行,并且能够看到混淆后的结果,在实施混淆之前需要对相关参数进行设置。

支持库参数:添加三项支持库,即:rt.jar、cocos2d-android.jar和android.jar。

输出参数:设置输入文件为classes-dex2jar_pro.jar。

利用ProGuard工具实施代码混淆的结果如图9所示。

从图8和图9的对比可以看出,实施代码混淆后的目录结构发生了变化,原目录结构下的文件被不能表达任何语义的简短字母代替,源代码中的类、字段和方法等也被简短字母代替,从而增加了反编译的难度。

虽然我们对DEX文件实施了代码混淆,但利用相关工具依然能够对实施代码混淆后的DEX文件实施二次反编译,为此,本文利用signapk工具进行签名校验,由于篇幅所限,本文不再对签名校验的过程做详细说明。

本文最后将加密后的资源文件和代码混淆后的文件进行重新打包,并使用签名校验技术实施重签名,将新打包的APK再次实施反编译,最后实验结果表明,反编译过程出现错误,由此证明了本文提出的APP加固方案能够有效地防患APK被反编译,加大了二次打包的难度。再次对加固后的APK文件实施反编译实验结果如图10所示。

6   结论(Conclusion)

本文系统地介绍了一种Android APP加固方案,方案为了对APP中的资源进行有效的保护,采用了加密方式对重要资源进行加密处理,为了防止DEX文件被反编译,采用了混淆代码技术加固处理,为了防止APK被二次打包,采用了签名校验技术。最后通过实验验证了本方案的可行性。

参考文献(References)

[1] 吴敬征,武延军,武志飞,等.基于有向信息流的Android隐私泄露类恶意应用检测方法[J].中国科学院大学学报,2015,32(06):807-815.

[2] 宋言言,罗森林,尚海,等.函数Native化的Android APP加固方法[J].浙江大学学报(工学版),2019,53(03):555-562.

[3] 梆梆安全.梆梆加固[EB/OL].http://blog.csdn.net/justfwd/article/dct-ails/51164281,2018-02-10.

[4] 赵跃华,刘佳.安卓APP安全加固系统的分析与设计[J].计算机工程,2018,44(02):187-192.

[5] 郑兴生.Android应用程序反编译工具研究与设计[D].北京理工大学,2016.

[6] 梁丹.基于动态字节码注入的Android沙盒模型[D].上海交通大学,2015.

[7] 章宗美,桂盛霖,任飞.基于N-gram的Android恶意检测[J].计算机科学,2019,46(02):145-151.

[8] 刘奥,过辰楷,王伟静,等.Android应用Activity启动环研究[J/OL].计算机学报,2019:1-18.

[9] 汪润,唐奔宵,王丽娜.DroidFAR:一种基于程序语义的Android重打包应用抗混淆检测方法[J].武汉大学学报(理学版),2018,64(05):407-414.

作者简介:

彭守镇(1979-),男,硕士,讲师.研究领域:计算机应用技术,信息安全,软件技术.

作者:彭守镇

文件加密技术信息安全论文 篇3:

PKI在信息安全中的应用与实现

摘要:公钥基础设施(PKI)是信息安全领域的研究热点。在对现有的信息安全技术进行分析和研究的基础上,提出一种典型的PKI体系结构。通过研究分析PKI在信息传输、信息交换、数据存储、身份验证等方面的应用与实现,解决网络应用中存在信息的真实性、保密性、完整性、可用性和不可抵赖性等安全问题。同时讨论了限制PKI应用的环境因素和在多个独立的PKI系统实现过程中需解决的问题。

关键词:公钥基础设施;信息安全;文件加密;电子商务

0 引言

计算机和网络技术的迅速发展,使信息安全成为当前关注的重点。信息化给人们带来高效率和友好服务的同时,也带来了威胁、风险和责任,网上信息被窃、被篡改、被破坏,网络被攻击的事件时有发生。公钥基础设施(Public Key Infrastructure,PKI)作为目前网络安全建设的基础与核心,可以解决绝大多数网络安全问题,为网络应用提供真实性、保密性、完整性、可用性和不可抵赖性等安全服务。利用PKI所提供的这些安全服务所建立起来的信息安全解决方案,已得到广泛的应用。

1 PKI介绍

PKI是利用公开密钥技术所构建的解决网络安全问题的普遍适用的一种基础设施。PKI实际上是一套软硬件系统和安全策略的集合,其最基本的元素是数字证书。PKI技术采用数字证书管理公钥和私钥(“公钥”对外公开,“私钥”个人保密),所有安全的操作主要通过数字证书来实现。从数字证书的用途来看,可以分为签名证书和加密证书,其格式遵循ITU-T X.509国际标准,以保证系统问的互操作性。一个典型的PKI系统如图1所示,包括软硬件系统、PKI策略、证书机构CA、注册机构RA、证书数据库、证书发布系统和PKI应用等。PKI策略定义了一个组织单位在信息安全方面的指导方针和基本原则。CA是PKI的信任基础,它管理证书的整个生命周期,包括:证书发放、规定证书有效期和发布证书废除列表(cRL)等。RA提供用户和CA之间的一个接口,它获取、认证用户的身份,向CA提出证书请求。证书数据库包括LDAP目录服务器和普通数据库,提供对用户证书、CRL和日志等信息的存储、管理和查询。证书发布系统负责证书的发放,包括在线发放和离线发放两种。

2 PKI应用

PKI能为各种不同安全需求的用户提供各种不同的网上安全服务,满足人们对网络安全保障的需求。其应用范围非常广泛,并且在不断发展之中。下面主要介绍当前使用PKI技术的几个典型实例。

2.1 Web安全

浏览Web网页是人们最常用的Internet应用之一。一般的浏览不会让人产生不妥的感觉,但是如果要在Web进行一些商业交易,私人敏感信息可能被他人截获、篡改和伪造等,这时需考虑交易的安全问题。为了透明地解决Web的安全问题,合适的入手点是浏览器。利用PKI技术,结合SSL(The SecureSockets Layer)、HTTPS(Secure Hypertext Transfer ProtocoI)等协议,可以在浏览器和服务器之间进行加密通信。交易时,双方通过可信的第三方颁发数字证书来确认对方的身份,以保证通信安全。需要注意的是,SSL协议本身不能提供对不可否认性的支持,这部分的工作必须由数字证书完成。结合SSL协议的PKI技术可以保证Web交易多方面的安全需求,使在网上交易和面对面的交易一样安全、可靠。

2.2 安全电子邮件

电子邮件作为Internet应用最广的服务,具有简易、方便、快速、费用低的优点。单位和个人常用电子邮件交换一些秘密的或者有商业价值的信息,会出现邮件被篡改、截取和伪造等安全问题。利用PKI技术,可实现电子邮件的机密、完整、认证和不可否认等。目前广泛应用的安全电子邮件协议是s,M/ME(The Secure Multipurpose Internet Mail Extension),这是一个允许发送加密和签名邮件的协议,它的实现需要依赖于PKI技术。要实现电子邮件的签名和加密,需事先准备好所需的数字证书。如果用户A发送一封签名的电子邮件给用户B,需用用户A的数字证书(私钥)加密邮件。而用户A发送一封加密的电子邮件给用户B,需用用户B的数字证书(公钥)加密邮件。

2.3 虚拟专用网络

虚拟专用网络(Virtual Private Network,VPN)可通过公用网络(Internet)建立一个临时的、安全的专用连接,扩展企业内部网。为确保连接的安全,实现身份认证、数据加密等目标,需要采用完善的安全技术。可以采用带证书的L2TP/IPSec方案来实现VPN。第二层隧道协议(L2TP)用来整合至因特网服务提供商的多协议拨号服务,它将用户级别的PPP身份验证方法和计算机级别的证书与IPSec作了结合。IPSec是一种端到端的可确保IP安全通讯的机制,它能够利用验证及加密用的证书,将两个网络层对等起来,为提供VPN服务的路由器、防火墙、VPN服务器以及远程用户之间提供通信的加密和认证。具体实现基于PKI的VPN,要求通信双方配置IP安全策略,运行ISAKMP/Oakley(IKE)和IP安全驱动程序,还需要用于VPN通信的数字证书。基于PKI的IPSec协议已比较完善,成为架构VPN的主流技术。

2.4 电子商务的应用

随着电子商务的发展,在B2B、B2C、C2C电子商务模式的基础上又出现了企业对政府、消费者对企业等多种新的电子商务模式。它们所带来的安全问题也愈加突出。PKI作为提供各种安全服务的平台,被广泛应用于电子商务系统中。利用PKI能建立一个安全、可信任的网络,网络中有可信的认证中心,典型的如银行、政府或其他第三方。在通信中,利用数字证书可消除匿名带来的风险;利用加密技术可消除开放网络带来的风险,保证网上商业交易安全可靠地进行。电子商务中使用SET协议,妥善地解决了信用卡在电子商务交易中的交易协议、信息保密、资料完整以及身份认证等问题。

2.5 加密文件系统

加密文件系统(Encrypting File System,EFS)是Windows操作系统的一个组件,它将对称加密算法和非对称加密算法结合起来,用于在NTFS文件系统卷上保护文件。在进行EFS加密文件时,操作系统调用CryptoAPI架构,生成一个由伪随机数组成的FEK(File Encryption Key),利用对称加密算法(AES、DESX或3DES)与FEK将文件加密。然后系统利用当前用户的公钥K1加密FEK,并把加密后的FEK存储在此加密文件的DDF中。为了防止用户的私钥损坏或丢失时不能恢复加密的文件,也可以使用恢复代理的公钥Kn加密FEK,并把加密后的FEK存储在加密文件的DRF中。EFS加密原理如图2所示。

EFS解密和EFS加密的过程是相反的,系统先利用当前用户的私钥解密FEK(如果用户的私钥损坏或丢失,可利用恢复代理的私钥解密FEK),再利用FEK对称解密出文件。EFS解密原理如图3所示。在首次使用EFS时,如果用户没有公钥,私钥对(EFS证书),则要首先创建一个EFS证书,然后加密数据。有关EFS证书的创建和EFS恢复代理的启用,根据操作系统平台的不同和计算机是否隶属于活动目录域而有所不同。使用EFS可以防止未经许可的入侵者访问存储的敏感数据。这种加密/解密过程对用户来说是透明的,如果用户是加密者本人,系统会在用户访问这些文件和文件夹时将其自动解密。但是,不允许入侵者访问任何已加密的文件或文件夹。

2.6 无线PKI

随着无线通信的不断成熟与广泛应用,手机银行、手机证券等在生活中扮演越来越重要的角色,其安全问题也日益突出。用无线公钥基础设施(Wireless Public Key Infrastructure,WPKI)安全体系可解决无线安全问题。WPKI是在PKI基础上的一种扩展,是适合无线环境应用的PIG系统。和传统的PIG一样,WPKI也是通过管理实体问关系、密钥和证书来增强无线网络的安全的。其安全服务(如数据加密、完整性、认证等)由WTLS和WMLS crypt提供,而WPKI负责对它们进行有机的管理,WPKI与WTLS等相关安全协议紧密地结合在一起。由于受移动终端存储能力、计算能力以及位置不确定等因素的制约,WPIG采用了压缩的X.509数字证书(一种新的服务器证书格式)和优化的ECC椭圆曲线加密算法(比RSA算法的密钥要短),使之更适合在无线设备中使用。在WPKI体系中使用二种类型的证书:WTLS服务器证书和WTLS客户证书。在具体实现中,由于各无线通信设备制造商遵循的标准不一样,其通信设备采用的证书格式也有所不同。

2.7 生物特征认证与PKI

生物特征认证作为证明个人身份的根本方法,是目前一个备受关注的安全热点话题。生物特征识别技术是指通过计算机利用人体所固有的生理或行为特征(指纹、掌纹、虹膜、脸像、声音、笔迹等)来进行个人身份鉴定。目前PIG系统中用户的私钥保护主要是采用磁盘、令牌卡等,并通过口令进行访问控制。由于存在口令丢失、密码被攻破以及令牌丢失等问题,传统的私钥保护方式已经不能满足用户的需要。将生物特征认证技术与pIG系统结合,对PKI终端用户的私钥进行保密和访问控制是一个比较理想的方案。在用户端,通过指纹识别系统与智能卡设备(保存证书私钥等信息)进行的联合运算,对需要使用PIG证书的用户身份进行身份识别和认证。认证通过的用户可以调用智能卡中的证书;认证没有通过者将被系统拒绝。

2.8 电子签章与Office文档安全

随着我国《电子签名法》的颁布,电子签名的有效性得到法律保障。基于公钥加密技术的电子签章/印章,盖章系统广泛应用于电子政务、电子商务中,实现交易双方身份鉴别、确定文档来源、文档完整、防止文档篡改以及签名不可否认等。目前业界主流的电子签章系统,结合了PIG技术、COM/ActiveX技术、图像处理技术以及智能USB key技术等,以中间件形式嵌入到用于文档处理的应用软件之中。它将需要电子签章的文档分成两部分:原始文档和附加信息(印章图片、落款和盖章日期等)。对于同一文档的不同电子签章,原始文档相同而附加信息各不相同,电子签章中的数字签名是对原始文档和附加信息合成的新文档提取数字摘要。然后对摘要进行私钥加密。签章验证方需要从盖章文件中提取原文件编码、印章图片、落款、数字签名、数字证书等信息,恢复盖章申请原貌,验证数字签名和确认盖章是否有效。

微软也将PIG技术应用于Office以确保文档安全。它是利用数字证书对Office文档(Word/Excel/PowerPoint/Access/Visio等)进行数字签名来确保文档确实是由原作者所编写,没有被他人或病毒篡改过。对Office文档进行数字签名,首先需要从商业证书颁发机构申请或自行创建一个签署式数字证书,然后打开需要签名的Office文档,通过编辑将此数字证书附加到该文档中。如果文档发生了更改,那么之前的签名将失效。用户可随时查看文档的数字签名来验证文档的完整性。

 3 结束语

PIG是目前最为成熟完善的信息安全保障体系,它的应用范围非常广,不仅仅局限于通常的CA机构,它还包括完整的安全策略和安全应用。PKI技术在实际应用中,会受到外部环境的一些限制,包括高昂的构建和运行成本,用户认识不足和当地的相关标准、法律、政策和规范的影响;还需要解决多个独立PKI系统之间的交叉认证与互操作性,以及证书过期、撤销、丢失所带来的密钥托管和证书安全等问题。目前,PIG尚在不断发展之中,它的应用范围也将不断发展。有关PIG技术的研究和PIG的应用有着广阔的前景。

作者:苏命峰

上一篇:高校数字校园网络安全论文下一篇:采矿技术安全管理策略论文