本发明专利技术属于密码学、信息安全、地理信息系统和数字图像处理领域,涉及一种对数字矢量地图进行数据保护和文件访问控制的基于文件过滤驱动的矢量地图数据保护及访问控制方法。本发明专利技术包括:判断是否为矢量地图文件;将文件放入控制列表;控制规则完整性认证;文件访问控制;文件内容加解密;文件大小和控制信息隐藏;关闭时防止数据泄露。本发明专利技术结合文件过滤驱动,在操作系统底层对矢量地图数据进行透明加解密和文件访问控制,不影响用户操作习惯,保证磁盘上的矢量地图数据以密文形式存储,保护矢量地图数据安全。本发明专利技术比数据水印对矢量地图的保护更彻底,更牢靠。
【技术实现步骤摘要】
一种基于文件过滤驱动的矢量地图数据保护及访问控制方法
本专利技术属于密码学、信息安全、地理信息系统和数字图像处理领域,涉及一种对数字矢量地图进行数据保护和文件访问控制的基于文件过滤驱动的矢量地图数据保护及访问控制方法。
技术介绍
随着信息处理技术与测绘技术的快速发展,空间信息应用越来越广泛,数字矢量地图具有精度高、支持高质量缩放、定位准确、操作方便、更新便捷等多种优势,已成为地理信息系统、智能交通运输系统、数字化城市和数字化国防建设等方面必需的保障资源。同时,数字化的信息数据始终面临着被非法复制,恶意篡改以及人为泄露的安全问题。数字矢量地图一旦发生数据泄露会严重损害地图所有者的合法利益,甚至会对国防建设产生重大负面影响,保护数字矢量地图的安全使其不被窃取是迫切需要解决的问题。当前对数字矢量地图保护的研究主要是利用水印技术对矢量地图的版权进行保护,数字水印技术保护矢量地图数据,存在以下两点不足。第一、没能很好地保护好矢量地图的数据信息,大部分水印技术只是做了版权的嵌入使得部分数据精度受损,盗用者仍然可以将矢量地图盗走加以利用,这样的效果根本不能防止对矢量地图数据的盗用。第二、大部分水印嵌入方式属于手动嵌入,然而据有关调查显示,80%的数据信息泄露是出自于内部原因。数据水印无法防止内部员工将数据盗出,只有强制自动对数据进行透明加解密才能使得内部人员无法偷取矢量地图数据。另外对电子文档的保护方法,有一种流行的透明加解密方式可以强制对电子文档进行加解密,这种方法主要用来对文本信息进行加解密保护,其中谭文在《寒江独钓-windows内核安全编程》一书中具体介绍了文件过滤驱动技术。有少数学者将透明加解密引用到了矢量地图中,但是存在以下三点缺陷:第一、没有考虑到将数据拷贝到已存在文件中的情况,如果在移动设备中事先建立一个矢量地图文件,然后将矢量地图数据拷贝到这个文件,传统的过滤驱动是不会对其进行处理的,从而造成了数据泄露。第二、没有考虑到矢量地图多次外发的特点,对文件打开时间,打开次数等诸多方面无法进行控制,从而无法有效保证地图的安全。第三、无法对矢量地图文件的重命名和删除等操作进行控制。
技术实现思路
本专利技术的目的在于提供一种保护文件在全生命周期中的安全的基于文件过滤驱动的矢量地图数据保护及访问控制方法。本专利技术的目的是这样实现的:(1)判断是否为矢量地图文件操作系统处理文件时,发出I/ORequesetPackage读写请求包IRP,在文件打开时操作系统发出IRP_MJ_CREATE,文件过滤驱动此时拦截需要打开的文件名,根据文件扩展名判断是不是矢量地图文件;(2)将文件放入控制列表在判断为矢量地图文件之后,从文件尾部取出加密标识和控制信息,对加密标识进行核实,如果有加密标识,则表示该文件属于已经被标记和处理过的矢量地图文件,将文件对象和文件对应的FileControlBlock文件控制块FCB加入涉密文件列表,如果文件尾部不存在加密标识,则说明该文件并没有被处理过,需要对其进行处理,则将文件对象和文件对应的FCB加入涉密未处理列表;(3)控制规则完整性认证对于包含有加密标识的矢量地图文件,核实当前进程是否在其规定的合法进程列表中,如果不在则表示当前进程没有获取正确矢量地图数据的权限,直接交付操作系统,读出密文;如果当前进程是合法进程,则利用MD5算法对控制信息进行完整性认证,判断控制信息有无被篡改,如果控制信息被篡改,则访问失败,同时删除该文件,如果控制信息没有被篡改,则所有的控制规则与对应的文件FCB添加到涉密文件列表;(4)文件访问控制根据文件嵌入的访问控制信息,在IRP_MJ_CREATE中对文件访问次数进行核实,如果访问次数达到规定次数,则将文件删除;文件访问时间则利用DeferredProcedureCall定时器DPC,进行定时检查,如果规定时间内文件未关闭,则强制将文件缓存数据刷到磁盘,并关闭文件;当需要进行文件重命名和删除时,操作系统会发出主功能号为IRP_MJ_SET_INFORMATION的IRP,对文件进行删除和重命名操作时,在IRP_MJ_SET_INFORMATION的分发函数中进行监控,从涉密文件列表中取出文件控制信息,如果允许所申请操作,则交付系统处理,如果不允许,则返回失败;(5)文件内容加解密文件读写时,操作系统发出IRP_MJ_READ和IRP_MJ_WRITE,文件读写分为缓存读写和分页读写两种,以IRP所携带的标识区分;利用文件过滤驱动,带有IRP_PAGING_IO|IRP_SYNCHRONOUS_PAGING_IO|IRP_NOCACHE标志的读写请求,利用流加密方法对数据进行加密和解密;(6)文件大小和控制信息隐藏将控制信息和加密标识放在文件扩展尾,利用IRP_MJ_QUERY_INFORMATION对文件大小和控制信息进行隐藏,当系统获取文件大小的时候,会下发IRP_MJ_QUERY_INFORMATION的IRP请求,过滤驱动在这个IRP请求中,将文件大小设置为真实文件大小长度,达到隐藏控制信息和文件大小的目的;(7)关闭时防止数据泄露在一个文件关闭时,判断此文件是否在涉密未处理列表中,在这个列表中的文件,表示为计算机中原有的未经过加密处理的矢量地图文件,对该文件进行加密同时嵌入访问控制信息。本专利技术的有益效果在于:本专利技术提出一种矢量地图数据保护和访问控制方法,结合文件过滤驱动技术对矢量地图文件进行透明的、强制地数据加解密和访问控制。对比已有文件过滤驱动产品和矢量地图保护产品,本专利技术具有以下优点:1.本专利技术结合文件过滤驱动,在操作系统底层对矢量地图数据进行透明加解密和文件访问控制,不影响用户操作习惯,保证磁盘上的矢量地图数据以密文形式存储,保护矢量地图数据安全。本专利技术比数据水印对矢量地图的保护更彻底,更牢靠。2.本专利技术可以透明地、强制地处理安装驱动之前计算机本身已存在的、未经过处理的矢量地图文件,较之已有的文件过滤驱动产品,可以防止文件数据通过旧文件泄露,安全性更高。3.本专利技术可以实现对矢量地图文件的访问时间、访问次数、是否允许重命名、是否允许删除等进行控制,构建起一个立体的保护空间。有效规避了长时间打开文件使得文件数据长时间在内存中停留,而带来的潜在风险;同时又可以防止频繁地对文件进行访问,有效地对文件破解进行了限制,提高了保护等级。4.本专利技术将加密标识和文件控制信息放在文件扩展尾,并且摒弃以往的文件过滤驱动文件大小控制只在IRP_MJ_SET_INFORMATION和IRP_MJ_QUERY_INFORMATION中对文件大小进行加减运算的方法,由驱动自身维护涉密矢量地图文件的大小,拦截缓存读写操作,确保了文件读写能够在准确的位置读取、写入准确的数据。附图说明图1系统整体流程示意图;图2设置控制信息软件界面;图3访问进程控制图4关闭时防止文件泄露具体实施方式下面结合附图和实例对本专利技术技术方案做进一步的描述:首先对本专利技术工作的详细流程进行说明:操作系统在对文件进行操作的时候,一次操作分几次IRP进行发放,对于文件读写操作,操作系统会依次发出IRP_MJ_CREATE、IRP_MJ_QUERY_INFORMATION、IRP_MJ_READ、IRP_MJ_W本文档来自技高网...
【技术保护点】
一种基于文件过滤驱动的矢量地图数据保护及访问控制方法,其特征在于:(1)判断是否为矢量地图文件操作系统处理文件时,发出I/O Requeset Package读写请求包IRP,在文件打开时操作系统发出IRP_MJ_CREATE,文件过滤驱动此时拦截需要打开的文件名,根据文件扩展名判断是不是矢量地图文件;(2)将文件放入控制列表在判断为矢量地图文件之后,从文件尾部取出加密标识和控制信息,对加密标识进行核实,如果有加密标识,则表示该文件属于已经被标记和处理过的矢量地图文件,将文件对象和文件对应的File Control Block文件控制块FCB加入涉密文件列表,如果文件尾部不存在加密标识,则说明该文件并没有被处理过,需要对其进行处理,则将文件对象和文件对应的FCB加入涉密未处理列表;(3)控制规则完整性认证对于包含有加密标识的矢量地图文件,核实当前进程是否在其规定的合法进程列表中,如果不在则表示当前进程没有获取正确矢量地图数据的权限,直接交付操作系统,读出密文;如果当前进程是合法进程,则利用MD5算法对控制信息进行完整性认证,判断控制信息有无被篡改,如果控制信息被篡改,则访问失败,同时删除该文件,如果控制信息没有被篡改,则所有的控制规则与对应的文件FCB添加到涉密文件列表;(4)文件访问控制根据文件嵌入的访问控制信息,在IRP_MJ_CREATE中对文件访问次数进行核实,如果访问次数达到规定次数,则将文件删除;文件访问时间则利用Deferred Procedure Call定时器DPC,进行定时检查,如果规定时间内文件未关闭,则强制将文件缓存数据刷到磁盘,并关闭文件;当需要进行文件重命名和删除时,操作系统会发出主功能号为IRP_MJ_SET_INFORMATION的IRP,对文件进行删除和重命名操作时,在IRP_MJ_SET_INFORMATION的分发函数中进行监控,从涉密文件列表中取出文件控制信息,如果允许所申请操作,则交付系统处理,如果不允许,则返回失败;(5)文件内容加解密文件读写时,操作系统发出IRP_MJ_READ和IRP_MJ_WRITE,文件读写分为缓存读写和分页读写两种,以IRP所携带的标识区分;利用文件过滤驱动,带有IRP_PAGING_IO|IRP_SYNCHRONOUS_PAGING_IO|IRP_NOCACHE标志的读写请求,利用流加密方法对数据进行加密和解密;(6)文件大小和控制信息隐藏将控制信息和加密标识放在文件扩展尾,利用IRP_MJ_QUERY_INFORMATION对文件大小和控制信息进行隐藏,当系统获取文件大小的时候,会下发IRP_MJ_QUERY_INFORMATION的IRP请求,过滤驱动在这个IRP请求中,将文件大小设置为真实文件大小长度,达到隐藏控制信息和文件大小的目的;(7)关闭时防止数据泄露在一个文件关闭时,判断此文件是否在涉密未处理列表中,在这个列表中的文件,表示为计算机中原有的未经过加密处理的矢量地图文件,对该文件进行加密同时嵌入访问控制信息。...
【技术特征摘要】
1.一种基于文件过滤驱动的矢量地图数据保护及访问控制方法,其特征在于:(1)判断是否为矢量地图文件操作系统处理文件时,发出I/ORequesetPackage读写请求包IRP,在文件打开时操作系统发出IRP_MJ_CREATE,文件过滤驱动此时拦截需要打开的文件名,根据文件扩展名判断是不是矢量地图文件;(2)将文件放入控制列表在判断为矢量地图文件之后,从文件尾部取出加密标识和控制信息,对加密标识进行核实,如果有加密标识,则表示该文件属于已经被标记和处理过的矢量地图文件,将文件对象和文件对应的FileControlBlock文件控制块FCB加入涉密文件列表,如果文件尾部不存在加密标识,则说明该文件并没有被处理过,需要对其进行处理,则将文件对象和文件对应的FCB加入涉密未处理列表;(3)控制规则完整性认证对于包含有加密标识的矢量地图文件,核实当前进程是否在其规定的合法进程列表中,如果不在则表示当前进程没有获取正确矢量地图数据的权限,直接交付操作系统,读出密文;如果当前进程是合法进程,则利用MD5算法对控制信息进行完整性认证,判断控制信息有无被篡改,如果控制信息被篡改,则访问失败,同时删除该文件,如果控制信息没有被篡改,则所有的控制规则添加到涉密文件列表;(4)文件访问控制根据文件嵌入的访问控制信息,在IRP_MJ_CREATE中对文件访问次数进行核实,如果访问次数达到规定次数,则将文件删除;文件访问时间则利用DeferredProcedur...
【专利技术属性】
技术研发人员:门朝光,田泽宇,李海洋,王一超,
申请(专利权)人:哈尔滨工程大学,
类型:发明
国别省市:黑龙江;23
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。