System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于用户层的内存加解密方法、系统及相关设备技术方案_技高网

一种基于用户层的内存加解密方法、系统及相关设备技术方案

技术编号:41302038 阅读:2 留言:0更新日期:2024-05-13 14:48
本发明专利技术公开了一种基于用户层的内存加解密方法、系统及相关设备,本方案在不使用minifilter的情况下,创新的在用户层将加密状态的原始文件镜像映射到指定目录,并在镜像映射过程中同步进行解密,将所有的解密数据保存于用户态的程序内存中;在此基础上同步监控当前解密文件的访问进程,拦截不信任进程或者放行信任进程。本发明专利技术方案实现将所有加密解密和数据保存操作均在用户层完成,所有的解密数据保存于用户态的程序内存中,这样能够在需要访问大数据的场景下可以极大提升系统效率。

【技术实现步骤摘要】

本专利技术涉及数据安全技术,具体涉及数据加密技术。


技术介绍

1、加密技术是利用技术手段将数据变成加密数据(乱码)后进行传输,等到达目的地后再进行解密,加密技术目前有着广泛的应用,尤其在经济领域,电商等被广泛使用。加密技术中最重要的即是,加密算法,不同的加密算法安全等级,加密效果均不一样。常见的加密算法分为对称加密和非对称加密。

2、对称加密采用了对称密码编码技术,特点是加密和解密使用相同的密钥,即加密密钥也可以用于解密,这种加密算法使用简单,密钥较短,一个常见对称密钥加密系统是国际数据加密算法(idea)。

3、非对称加密算法是为了解决信息公开和密钥管理问题,在对称加密中,加密密钥可能会被共享到其他地方,拿到加密密钥后数据即可被解密,有一定的安全风险。非对称加密算法将加密密钥和解密密钥分离,变为公开密钥和私有密钥,公开密钥对数据进行加密后再用私有密钥进行解密,二者互为对称和互补,用私玥加密的数据必须用公玥解密,同理用公玥加密的数据必须用私玥解密。

4、传统意义上的加密一般是将数据加密后保存到硬盘中,用户需要查看时,则需要对数据进行解密查看,数据一经解密即为明文后续可无限使用,即始终处于明文状态。作为举例,如此操作与加密压缩包查看操作类似,压缩包加密后用户无法查看和打开,但是压缩包一经解密数据即为明文形式落盘,后续用户无需进行二次解密即可使用。

5、在实际应用过程中,一些数据在非查看状态下需要一直保持加密状态,即相应的数据需要特定程序解密,且程序解密查看完毕后数据应自动变为加密模式,防止其他程序恶意读取和转移。作为举例,在实际业务中的一些敏感数据,用户有对这类敏感数据进行增删查改的需求,同时还需要随时保证数据的安全性,为此就需要限制用户仅可使用特定程序进行解密编辑,且其他程序则无法访问解密数据。为此,任何人们构建一种通用程序对加密程序进行解密,且解密后数据自动还原成加密模式,传统的解密方式一般是通过密钥或者密码,将文件解密并保存到硬盘中,文件一旦解密即可无限次查看,带来一定的安全奉献,因此传统的解密方式种类单一,解密后数据也可能存在问题。

6、目前对应用程序自动加解密的技术方案,都是基于minifilter实现文件相关的保护加密。

7、minifilter为windows官方推出的内核驱动过滤程序,提供了windows操作系统的钩子回调操作,用户可自行实现对系统操作的拦截放行等。minifilter中分为用户层和内核层,用户层配置权限文件等,传入到内核层,再由内核层根据配置信息对文件进行操作,如拦截或者放行,配置文件可以根据文件名,扩展名,请求进程名,请求方式等进行一定的操作,同时如果检测到文件加密会自动解密,判断文件加密或者解密的方案一般是通过判断文件头标识,在用户写入文件信息后将写入信息加密并追加到内核缓冲区,从而实现文件的实时加密保存。

8、然而现有基于minifilter的加密保护方案在实际应用时,需要事先注册windows内核驱动,然后进行用户层和内核层的通信,由于需要配置文件加密解密逻辑,需要将配置文件传入内核层,且文件的解密依赖内核层的解密方法,当待解密缓存过大,内核层占用资源会急剧增加,导致系统卡顿;而本方案的用户配置文件在用户层定义,可以进行灵活变换,采用xml和json均可实现相似功能而不需要考虑用户层和内核层的数据传递问题。

9、再者,现有基于minifilter的加密保护方案在实际应用时,必须依赖minifiler的程序必须要添加windows驱动签名方可使用,如果不带有windows官方授权签名,程序会无法在正式版windows上运行或者会警告,这样将大大增加现有方案的应用成本。


技术实现思路

1、针对现有基于minifilter来实现文件相关保护加密方案所存在的问题,本专利技术的目的在于提供一种基于用户层的内存加解密方案,能够在不使用minifilter的情况下,在用户层实现文件的加密保护,从而可有效克服现有技术所存在的问题。

2、为了达到上述目的,本专利技术提供了一种基于用户层的内存加解密方法,在用户层将任意原始目录镜像映射到任意指定空目录,并在镜像映射过程中同步对原始文件目录下所有制定文件进行解密,且监控当前解密文件的访问进程,拦截不信任进程或者放行信任进程。

3、本专利技术的一些实施方式中,所述内存加解密方法在用户层基于dokany来对加密状态的任意原始文件mount映射到其他任意指定空目录,同时进行解密,并且监控当前解密文件的访问进程。

4、在本专利技术的一些实施方式中,所述内存加解密方法在mount映射过程中提供文件的操作钩子接口,并基于操作钩子接口进行文件的io操作拦截,授权放行和加解密的操作。

5、在本专利技术的一些实施方式中,所述内存加解密方法中基于操作钩子接口进行文件的内存解密时,文件通过加密程序预先进行加密;同时通过读取配置文件中的加密方案进行解密,当文件打开触发钩子回调时,读取配置文件的加密算法,利用程序内置的密钥或者加密空间读取密钥对文件内容进行解密。

6、在本专利技术的一些实施方式中,所述内存加解密方法中基于操作钩子接口进行权限拦截与授权放行时,授予权限通过用户层配置;当打开文件时,则主动触发dokany的文件io读取回调接口,文件io读取回调接口通过判断由用户层传过来的配置信息进行判断,是否对当前操作拦截或放行,当权限认证通过后会进入到解密逻辑中实现文件的内存解密,并返回给用户层打开,当授权不通过时会直接拦截该io操作,且文件保持加密状态。

7、在本专利技术的一些实施方式中,所述内存加解密方法中对解密文件的访问权限策略由用户层读取配置策略文件生成,然后写入到用户层程序后进行文件的权限管理。

8、为了达到上述目的,本专利技术还提供了一种基于dokany的内存加解密系统,包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,所述程序由所述处理器加载并执行上述的内存加解密方法的步骤。

9、为了达到上述目的,本专利技术提供了一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时实现上述基于dokany的内存加解密方法的实现步骤。

10、为了达到上述目的,本专利技术提供了一种处理器,所述处理器用于运行程序,所述程序运行时执行上述基于dokany的内存加解密方法的实现步骤。

11、为了达到上述目的,本专利技术提供了一种终端设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,所述程序代码由所述处理器加载并执行以实现上述基于dokany的内存加解密方法的实现步骤。

12、为了达到上述目的,本专利技术提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行上述基于dokany的内存加解密方法的实现步骤。

13、本专利技术提供的基于dokany的内存加解密方案,实现将所有加密解密和数据保存操作均在用户层完成,所有的解密数据保存于用户态的程序内存中,这样能够在需本文档来自技高网...

【技术保护点】

1.一种基于用户层的内存加解密方法,其特征在于,在用户层将加密状态的原始文件镜像映射到任意指定空目录,并且在镜像映射过程中同步对原始文件目录下所有制定文件进行解密,且监控当前解密文件的访问进程,拦截不信任进程或者放行信任进程。

2.根据权利要求1所述的基于用户层的内存加解密方法,其特征在于,所述内存加解密方法在用户层基于dokany来对加密状态的任意目录的原始文件mount映射到其他指定空目录,同时进行解密,并且监控当前解密文件的访问进程。

3.根据权利要求2所述的基于用户层的内存加解密方法,其特征在于,所述内存加解密方法在mount映射过程中提供文件的操作钩子接口,并基于操作钩子接口进行文件的io操作拦截,授权放行和加解密的操作。

4.根据权利要求3所述的基于用户层的内存加解密方法,其特征在于,

5.根据权利要求3所述的基于用户层的内存加解密方法,其特征在于,所述内存加解密方法中基于操作钩子接口进行权限拦截与授权放行时,授予权限通过用户层配置;当打开文件时,则主动触发dokany的文件io读取回调接口,文件io读取回调接口通过判断由用户层传过来的配置信息进行判断,是否对当前操作拦截或放行,当权限认证通过后会进入到解密逻辑中实现文件的内存解密,并返回给用户层打开,当授权不通过时会直接拦截该io操作,且文件保持加密状态。

6.根据权利要求2所述的基于用户层的内存加解密方法,其特征在于,所述内存加解密方法中对解密文件的访问权限策略由用户层读取配置策略文件生成,然后写入到用户层程序后进行文件的权限管理。

7.一种基于dokany的内存加解密系统,包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,其特征在于,所述程序由所述处理器加载并执行权利要求1-6中任一项所述的内存加解密方法的步骤。

8.一种计算机可读存储介质,其上存储有程序,其特征在于,所述程序被处理器执行时实现权利要求1-6中任一项所述的基于dokany的内存加解密方法的实现步骤。

9.一种终端设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,其特征在于,所述程序代码由所述处理器加载并执行以实现权利要求1-6中任一项所述的基于dokany的内存加解密方法的实现步骤。

10.一种计算机程序产品,当在数据处理设备上执行时,其特征在于,适于执行权利要求1-6中任一项所述的基于dokany的内存加解密方法的实现步骤。

...

【技术特征摘要】

1.一种基于用户层的内存加解密方法,其特征在于,在用户层将加密状态的原始文件镜像映射到任意指定空目录,并且在镜像映射过程中同步对原始文件目录下所有制定文件进行解密,且监控当前解密文件的访问进程,拦截不信任进程或者放行信任进程。

2.根据权利要求1所述的基于用户层的内存加解密方法,其特征在于,所述内存加解密方法在用户层基于dokany来对加密状态的任意目录的原始文件mount映射到其他指定空目录,同时进行解密,并且监控当前解密文件的访问进程。

3.根据权利要求2所述的基于用户层的内存加解密方法,其特征在于,所述内存加解密方法在mount映射过程中提供文件的操作钩子接口,并基于操作钩子接口进行文件的io操作拦截,授权放行和加解密的操作。

4.根据权利要求3所述的基于用户层的内存加解密方法,其特征在于,

5.根据权利要求3所述的基于用户层的内存加解密方法,其特征在于,所述内存加解密方法中基于操作钩子接口进行权限拦截与授权放行时,授予权限通过用户层配置;当打开文件时,则主动触发dokany的文件io读取回调接口,文件io读取回调接口通过判断由用户层传过来的配置信息进行判断,是否对当前操作拦截或放行,当权限认证通...

【专利技术属性】
技术研发人员:杨心同刘善军吴松洋姚琛琛
申请(专利权)人:公安部第三研究所
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1