期刊鉴别 论文检测 免费论文 特惠期刊 学术答疑 发表流程

面向SAP系统的透明加解密方法(2)

时间:2015-10-28 11:43 文章来源:http://www.lunwenbuluo.com 作者:杜海超,赵明2,王蕊\贾 点击次数:


  SAP系统在显示数据部分常用ALV、OOALV、REPORT等方式[10],通过对SAP系统工作流程的研究,导出文件操作均是针对显示数据进行的。以导出文件到桌面为例,具体流程如图2所示。
  导出文件时,例如导出到桌面,文件在写入完成前,不会在桌面生成临时文件(.temp)并最终实现临时文件的保存、覆盖等操作。
  (导出操作完成图2文件导出流程而是在SAP系统目录下,首先生成模板临时文件,将模板信息导出写入临时文件中并保存。然后在桌面上生成临时文件,将前面已经导出的模板文件内容复制到桌面临时文件中,再将ALV中展示数据导出到桌面临时文件中,导出完成后保存文件并删除SAP系统目录下导出模板文件。
  如果在导出操作完成前终止导出操作,根据导出操作进行的程度,会产生不同的效果,未生成模板文件、生成模板文件且未生成导出文件、生成模板文件且导出部分数据。在对系统模型测试过程中,需对以上所有可能发生的情况进行验证,以保证系统模型涵盖所有导出情况。
  上述特性导致在实现外部导出文件透明加解密的过程中,需充分保证将SAP系统特定操作、要求的文件类型甚至指定文件与导出操作无缝精确关联,同时准确定位系统执行的具体操作,如读、写等,以保证无缝透明加解密的实现。
  3SAP导出文件保护
  SAP导出文件保护方法主要包括3个部分:文件操作捕获、SAP系统进程与导出文件映射、文件透明加解密。其中文件透明加解密中包含有IRP请求包处理、缓存处理、加密标识三个部分。
  3.1文件操作捕获
  SAP系统导出文件保护的第一步,文件操作捕获,为了准确检测操作文件进程信息以及文件操作执行时刻,采用文件操作捕获方法进行实现。该方法为后续映射关系建立与文件透明加解密奠定基础。
  通过对文件操作捕获的现有方式(应用层的API、驱动层的SSDT以及IRP捕获[11])进行研究,得到以下结论:应用层API,优点为使用方便,缺点为不稳定即单一操作需多个API合作完成;驱动层SSDT,优点为克服了应用层API存在的缺陷并且能够稳定地捕获文件操作,缺点为其通过修改系统服务描述表进行操作,由于本模型本身有对文件的操作,所以其容易出现递归调用;IRP捕获,优点为具有驱动层捕获文件操作的准确性与稳定性,缺点为每一个需要处理的IRP类型均须定义操作回调函数,其开发难度大,不易完成。
  通过以上的结论可以看出,第3种方式相对其他方式有很大的优势,故在该系统模型中采用IRP捕获方式。
  采用驱动层捕获文件操作的方法是为了解决应用层捕获不稳定的问题。当操作提交至I/O管理器时,操作以IRP请求包的形式下发至文件驱动层。IRP(I/Orequestpackage)是操作系统内核的一个数据结构。应用程序与驱动程序进行通信需要通过发送IRP请求包进行[12]。当上层应用程序需要与驱动通信的时候,通过调用一定的API函数,I/O管理器针对不同的API产生不同的IRP请求包,其被传递到驱动层内部经分发函数进行处理。对于不予以处理的IRP请求包,需要提供一个默认的分发函数来统一进行处理[13]。
  3.2SAP系统进程与导出文件映射
  为了解决SAP系统进程不直接操作导出文件的问题,采用SAP系统进程与导出文件映射的方法。该方法的实现,能够准确地判定文件是否是需要加密的文件。由于SAP系统导出文件过程与Windows操作机制不同,SAP系统进程直接对导出文件模板进行操作,间接对导出文件操作,使得获取的部分进程信息不准确,文件是否需要加密处理的判断依据不健全。在上一节的基础上,提高判断文件是否需要加密的准确性。
  结合对SAP系统导出文件工作流程的研究,实现对文件操作的过滤。在实际研究过程中,发现SAP只在导出过程的初始阶段,对SAP系统目录(User\用户名\AppData\Local\Temp\SAP)下的文件直接进行操作,之后的操作均是由excel.exe与explor.exe进程配合完成的。在导出操作即将完成时,SAP系统直接对文件进行操作,该文件仍是SAP系统目录下的文件。针对此过程,实现将SAP系统进程与导出的桌面文件建立对应关系。
  经反复实验与测试,SAP系统导出模板文件到系统目录下时,系统依据进程信息对其进行加密处理并保存。当ALV中数据导出到桌面文件中时,由于不是SAP系统进程直接对
  文件进行操作,故不需进行加密,但是此导出过程中实现了对文件复制,将系统目录下的模板加密文件复制到桌面上。此时将原路径文件与桌面文件建立对应关系,以桌面文件名称为判断依据进行加解密处理,直至原路径文件删除,解除对应关系。
  针对SAP系统导出文件过程的特殊性,即在导出模型时,SAP系统进程参与操作处理;而在导出数据时,SAP系统进程不直接参与操作处理的问题,提出建立SAP系统进程与导出文件信息对应关系的方法。
  建立SAP系统进程与导出文件之间的映射关系,在驱动程序内部维护_张链表,其中保存着SAP系统进程参与导出文件模板信息。以导出文件至桌面为例,链表中保存着SAP系统参与导出文件模板至系统目录中的路径、文件名称。当执行导出数据到桌面操作时,首先会进行文件模板信息的复制,此时追踪文件复制操作,将对系统目录下的文件复制操作的目的地址保存在链表中,该目的地址即为需要进行加密保护的文件地址。此后在进行文件写操作时,通过对捕获到文件信息与链表中的文件信息进行比较,判断该文件是否需要进行加密处理,具体如图4所示。
  映射关系建立方法:
  1)检测SAP系统进程对SAP系统目录下文件操作,获取导出模板文件信息,保存;
  2)检测对SAP系统目录下文件的复制操作,由源地址进行判断,并获取目标文件信息,保存;
  3)判定此目标文件为需加密文件,并向加密模块发送相应的信息,否则返回至检测模块继续检测;
  4)检测SAP系统进程对SAP系统目录下文件操作,删除相应的导出模板文件信息。
  在前两节的基础上,为了实现对文件进行加解密处理,采用文件透明加解密。透明是对用户而言,所有文件操作均未知。文件透明加解密实现的效果即是用户在对文件进行操作时,不会察觉加解密过程的实现,目的是不改变用户的使用习惯。文件透明加解密包括IRP请求包处理、缓存处理、加密标识3个部分。
  当用户对文件进行操作时,系统将自动完成文件类型判断、文件加解密处理、驱动层与应用层通信等操作。文件在存储介质上以密文的形式保存,在缓存中是以明文与密文结合的形式保存,文件_旦离开本地计算机,其将无法正常显示或操作,从而实现对文件内容的保护。
  3.3.1IRP请求包处理
  首先,为了实现文件操作的分类处理,采用IRP请求包处理方法。实现文件操作的分类与按类处理,保证文件透明加解密能够正确地进行。

  •   论文部落提供核心期刊、国家级期刊、省级期刊、SCI期刊和EI期刊等咨询服务。
  •   论文部落拥有一支经验丰富、高端专业的编辑团队,可帮助您指导各领域学术文章,您只需提出详细的论文写作要求和相关资料。
  •  
  •   论文投稿客服QQ: 论文投稿2863358778 论文投稿2316118108
  •  
  •   论文投稿电话:15995089042
  •  
  •   论文投稿邮箱:lunwenbuluo@126.com

联系方式

  • 论文投稿客服QQ: 论文投稿2863358778
  • 论文投稿客服QQ: 论文投稿2316118108
  • 论文投稿电话:15995089042
  • 论文投稿邮箱:lunwenbuluo@126.com

热门排行

 
QQ在线咨询
咨询热线:
18915033935
微信号咨询:
15995089042