CN115130141A - 一种文档处理方法、装置、移动终端及存储介质 - Google Patents
一种文档处理方法、装置、移动终端及存储介质 Download PDFInfo
- Publication number
- CN115130141A CN115130141A CN202211059873.0A CN202211059873A CN115130141A CN 115130141 A CN115130141 A CN 115130141A CN 202211059873 A CN202211059873 A CN 202211059873A CN 115130141 A CN115130141 A CN 115130141A
- Authority
- CN
- China
- Prior art keywords
- document
- information
- key information
- encryption
- decryption
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6209—Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2107—File encryption
Abstract
本发明涉及信息安全技术领域,提供了一种文档处理方法、装置、移动终端及存储介质,该方法包括接收外发文档,并在预先建立的沙箱文件夹中加载外发文档,沙箱文件夹包括临时获取的第一用户策略信息、第一认证密钥信息和第一加解密密钥信息;根据第一用户策略信息、第一认证密钥信息和第一加解密密钥信息,对外发文档进行校验过程以及解密过程;当上述校验过程和解密过程均成功时,调用内置阅读器展示外发文档的内容。采用本发明的文档处理方法,能够自动加解密文档,使得用户无感知,从而确保了文档信息安全。
Description
技术领域
本发明一般涉及信息安全技术领域,具体涉及一种文档处理方法、装置、移动终端及存储介质。
背景技术
在当今互联网时代,移动办公已逐渐发展成为一种趋势,这种新潮的办公模式通过在手机、平板电脑等移动终端上安装企业信息化软件,使得移动终端具有像台式电脑一样的办公职能,从而方便高效的开展工作,随时随地移动办公。
由于移动办公采用运营商的无线公网接入企业内部网络,应用场景特殊,很容易发生信息泄密风险,给企业造成不可挽回的巨大损失。目前,相关技术在对文档使用第三方软件进行加密之后,通过外发方式或者流程流转方式传递至移动端办公人员,此时该移动端办公人员再使用第三方软件进行解密,并通过另外的文档阅读器查阅文档;例如,公开号为CN114866532A的中国专利申请,提出一种端点文件安全检查结果信息上传方法及装置,可以对文件进行检查并进行脱敏处理得到脱敏信息,再将脱敏信息上传至管理中心。但上述借助第三方软件/程序的方式,操作复杂、管理粗放,泄密风险仍然很大。
发明内容
鉴于相关技术中的上述缺陷或不足,期望提供一种文档处理方法、装置、移动终端及存储介质,能够自动加解密文档,使得用户无感知,确保文档信息安全。
第一方面,本发明提供一种文档处理方法,该文档处理方法包括:
接收外发文档,并在预先建立的沙箱文件夹中加载外发文档,沙箱文件夹包括临时获取的第一用户策略信息、第一认证密钥信息和第一加解密密钥信息;
根据第一用户策略信息、第一认证密钥信息和第一加解密密钥信息,对外发文档进行校验过程以及解密过程;
当校验过程和解密过程均成功时,调用内置阅读器展示外发文档的内容。
可选的,在本发明一些实施例中,根据第一用户策略信息、第一认证密钥信息和第一加解密密钥信息,对外发文档进行校验过程以及解密过程,包括:
基于第一用户策略信息,检测外发文档的类型;
若外发文档的类型为权限文档,则对该外发文档进行脱壳处理,使得该外发文档的类型变为加密文档;
若外发文档的类型为加密文档,则从该外发文档的加密头信息中获取加密算法驱动类型,以启动加密算法驱动类型对应的解密引擎,并基于第一认证密钥信息和第一加解密密钥信息,校验和解密外发文档。
可选的,在本发明一些实施例中,启动加密算法驱动类型对应的解密引擎,并基于第一认证密钥信息和第一加解密密钥信息,校验和解密外发文档,包括:
解密引擎遍历第一认证密钥信息中认证密钥数组,解密外发文档的文件头信息,并在文件头信息校验通过后基于第一加解密密钥信息中解密密钥数组,解密外发文档的文件体信息。
可选的,在本发明一些实施例中,文件头信息的校验,包括:
比对当前登录的用户密级值与文件头信息中的文档密级值;
若用户密级值大于文档密级值,则返回校验失败码;
若用户密级值小于文档密级值,则返回校验成功码。
可选的,在本发明一些实施例中,文件头信息的校验,还包括:
比较当前已读取次数和文件头信息中可读取次数的大小;
若当前已读取次数大于或者等于可读取次数,则返回校验失败码。
可选的,在本发明一些实施例中,当校验过程和解密过程均成功时,调用内置阅读器展示外发文档的内容,还包括:
检测内置阅读器的使用状态;
若使用状态为焦点离开,则对沙箱文件夹中经过解密的外发文档进行删除。
可选的,在本发明一些实施例中,文档处理方法还包括:
获取第二用户策略信息、第二认证密钥信息和第二加解密密钥信息,并根据第二用户策略信息、第二认证密钥信息和第二加解密密钥信息,加密待发文档。
第二方面,本发明提供一种文档处理装置,该文档处理装置包括:
加载模块,配置用于接收外发文档,并在预先建立的沙箱文件夹中加载外发文档,沙箱文件夹包括临时获取的第一用户策略信息、第一认证密钥信息和第一加解密密钥信息;
处理模块,配置用于根据第一用户策略信息、第一认证密钥信息和第一加解密密钥信息,对外发文档进行校验过程以及解密过程;
展示模块,配置用于当校验过程和解密过程均成功时,调用内置阅读器展示外发文档的内容。
第三方面,本发明提供一种移动终端,该移动终端包括处理器和存储器,存储器中存储有至少一条指令、至少一段程序、代码集或指令集,上述的指令、程序、代码集或指令集由处理器加载并执行以实现第一方面中任意一项所描述的文档处理方法的步骤。
第四方面,本发明提供一种计算机可读存储介质,该计算机可读存储介质存储有一个或者多个程序,一个或者多个程序可被一个或者多个处理器执行,以实现第一方面中任意一项所描述的文档处理方法的步骤。
从以上技术方案可以看出,本发明实施例具有以下优点:
本发明实施例提供了一种文档处理方法、装置、移动终端及存储介质,通过在预先建立的沙箱文件夹中加载外发文档,并根据临时获取的第一用户策略信息、第一认证密钥信息和第一加解密密钥信息,来校验和解密外发文档,也就是说该沙箱文件夹不长期存储关键信息,即使用时再索取,且对其它应用程序隐藏隔离,能够极大避免关键信息的泄密风险,进而,当校验过程和解密过程都通过时,可以调用内置阅读器展示外发文档的内容,无需用户操作,便可自动完成,确保了文档信息安全。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明实施例提供的一种文档处理方法的应用场景示意图;
图2为本发明实施例提供的一种文档处理方法的流程示意图;
图3为本发明实施例提供的一种文档处理方法的具体示例;
图4为本发明实施例提供的一种文档处理装置的结构示意图;
图5为本发明实施例提供的另一种文档处理装置的结构示意图;
图6为本发明实施例提供的又一种文档处理装置的结构示意图;
图7为本发明实施例提供的再一种文档处理装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好的理解本发明的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”“第二”“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。
此外,术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、系统、产品或设备不必限于清楚的列出的那些步骤或模块,而是可包括没有清楚的列出的或对于这些过程、方法、产品或设备固有的其它步骤或模块。
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
为便于更好的理解本发明实施例,现结合图1所示的应用场景进行说明。如图1所示,该应用场景包括企业信息化平台、电子文档系统服务端、办公电脑和移动终端,其中企业信息化平台可以为办公自动化(Office Automation,OA)或者其它信息化平台系统,而办公电脑的系统类型包括但不限于windows系统、linux系统和mac系统等,同时安装有可根据文档类型或者文档关键信息,对文档进行无感知加密的客户端。
需要说明的是,本发明实施例中文档处理方法可以软件开发工具包(SoftwareDevelopment Kit,SDK)的形式集成在移动终端应用程序(Application,APP)内,方便高效,而移动终端的系统类型包括但不限于安卓(Android)、鸿蒙(Harmony OS)和IOS等。
配置过程中,①需要编译预设置的加解密算法库,该加解密算法库比如通过国家密码算法SM4来实现。本发明实施例的算法引擎库基于C语言编写,这样设置的好处是可移植性好,能够跨平台使用,兼容性更强,并且安全性高,可以预编译成不同平台的动态链接库。同时,该算法引擎库还封装了JNI(Java Native Interface)方法接口,能够将算法库在Android平台上编译成兼容armeabi、armeabi-v7a、x86、x86_64四种平台架构的so动态链接接口库。②配置服务端参数,并同步企业信息化平台用户接口,从而将企业信息化平台的用户信息、组织架构信息、权限信息以及流程信息同步至服务端平台数据库,采用SDK的形式便于集成,确保了各部门之间的文档信息安全。③配置服务端密钥管理,比如配置一个或者多个加解密密钥以及一个或者多个认证密钥,这样设置的好处是通过引入多解密密钥和多认证密钥机制,从而可以根据组织架构和用户权限体系分配用户多个认证密钥、解密密钥和解密策略,来实现文档分级管控,精细化权限管理,例如用户a同时分配了b部门和c部门的认证密钥和解密密钥,那么用户a就可以打开b部门和c部门用户的加密文档。④配置服务端不同的策略信息,从而建立起用户、角色、密钥和策略之间的联系。
示例性的,本发明实施例中SDK可以msafe.aar包的形式提供给第三方APP集成。首先,启动电子文档系统服务端,并登录服务端后台,同时配置相关参数,用以添加或者同步企业的用户信息。其次,在Android工程中导入引用,并配置相关依赖,比如在app/build.gradle 配置文件中加入配置及相关依赖:
加入配置
repositories {
flatDir{
dirs 'libs'
}
}
引入包及相关依赖
//网络请求Retrofit2.0
implementation 'com.squareup.retrofit2:retrofit:2.9.0'
implementation 'com.squareup.retrofit2:converter-gson:2.9.0'
implementation 'com.squareup.retrofit2:adapter-rxjava2:2.9.0'
implementation 'com.squareup.okhttp3:logging-interceptor:3.14.8'
//Rxjava
implementation 'io.reactivex.rxjava2:rxjava:2.1.16'
implementation 'io.reactivex.rxjava2:rxandroid:2.0.2'
implementation 'androidx.appcompat:appcompat:1.2.0'
implementation 'com.google.android.material:material:1.2.1'
implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
implementation 'androidx.multidex:multidex-instrumentation:2.0.0'
implementation (name:'msafe',ext:'aar')
再次,添加网络访问权限,比如在AndroidManifest.xml文件中加入网络访问权限和sdcard访问权限:
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NET
WORK_STATE" />
<!--Android获取Mac地址及IP地址需要添加权限-->
<uses-permission android:name="android.permission.ACCESS_WIF
I_STATE" />
<uses-permission android:name="android.permission.CHANGE_WI
FI_STATE" />
<uses-permission android:name="android.permission.READ_EXTE
RNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXT
ERNAL_STORAGE"/>
又如在application中配置启动类及网络访问权限配置文件:
<application
android:name=".MyApplication"
android:networkSecurityConfig="@xml/network_config"
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.ImtSdkDemo">
<activity
android:name=".MainActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNC
HER" />
</intent-filter>
</activity>
</application>
再次,在res目录下创建xml资源文件,比如在res目录下创建network_config.xml文件,内容如下:
<network-security-config>
<base-config cleartextTrafficPermitted="true">
<trust-anchors>
<certificates src="system" />
</trust-anchors>
</base-config>
</network-security-config>
最后,初始化SDK。比如在application启动类中调用初始化SDK方法,初始化接口详细信息如下:
public void init SDK Environment(参数1,参数2);
此方法在初始化SDK环境时,会初始化加、解密的认证密钥以及解密密钥、算法库等相关信息,其中参数1为服务端地址,参数2为指定驱动版本号。
另外,SDK还提供了加密接口、解密接口和打开加密文档接口,如下所示:
加密接口为ESafeFileUtils.getInstance().encrypt(参数1,参数2),其中参数1为待加密文档路径,参数2为加密后路径;
解密接口为ESafeFileUtils.getInstance().decrypt(参数1,参数2),其中参数1为解密文档路径,参数2为解密后路径;
打开加密文档接口为ESafeFileUtils.getInstance().open(参数1),其中参数1为密文路径。当使用此接口时,会调用内置阅读器打开加密文档。
基于上述应用场景的描述,下面通过图2至图7详细的阐述本发明实施例提供的文档处理方法、装置、移动终端及存储介质。
请参考图2,其为本发明实施例提供的一种文档处理方法的流程示意图。该方法可以应用于图1所示的移动终端,具体包括以下步骤:
S101,接收外发文档,并在预先建立的沙箱文件夹中加载外发文档,该沙箱文件夹包括临时获取的第一用户策略信息、第一认证密钥信息和第一加解密密钥信息。
需要说明的是,当APP加载SDK时,移动终端会根据对应平台架构,加载与该架构匹配的预编译好的so动态链接库,并在本APP权限文件夹下建立一个沙箱文件夹(沙箱又称沙盒,沙箱/沙盒在计算机安全领域中是一种安全机制,为运行中的程序提供的隔离环境,通常是作为一些来源不可信、具破坏力或无法判定程序意图的程序提供实验之用。沙盒通常严格控制其中的程序所能访问的资源,比如,沙盒可以提供用后即回收的磁盘及内存空间。在沙盒中,网络访问、对真实系统的访问、对输入设备的读取通常被禁止或是严格限制。从这个角度来说,沙盒属于虚拟化的一种),该沙箱文件夹对其它APP隐藏隔离,即只对本APP可见,可读可写,用于存储加解密权限文件、透明加密文件以及Shared Preference缓存等临时信息。在用户登录APP之后,移动终端会调用服务端接口来获取诸如对应用户信息、第一用户策略信息、第一认证密钥信息和第一加解密密钥信息等,而密钥信息底层使用了base64进行转码,并通过高级加密标准(Advanced Encryption Standard,AES)算法加密传输存储在SharedPreference缓存中,SharedPreference缓存路径在初始化的沙箱文件夹中,同时设置SharedPreference过期时间,使得密钥数据和策略信息数据更加安全牢固。进一步的,移动终端通过读取沙箱文件夹中的策略信息,并调用init SDK Environment()接口来初始化SDK环境。初始化过程中,SDK会加载对应版本的加解密驱动引擎算法,并在内存中初始化环境配置信息,从而将当前用户的认证密钥信息、解密密钥信息和策略信息等缓存在沙箱文件夹下。
示例性的,企业核心文档通过使用了上述加解密算法库的办公电脑进行加密之后,并由企业信息化软件、第三方聊天办公软件或者邮件等途径发送至移动终端,此时移动终端会将经过加密处理的企业核心文档加载到沙箱文件夹中临时存储,也就是说外发文档的来源包括但不限于电子文档系统服务端和办公电脑等。
S102,根据第一用户策略信息、第一认证密钥信息和第一加解密密钥信息,对外发文档进行校验过程以及解密过程。
示例性的,如图3所示,本发明实施例可以基于第一用户策略信息,检测外发文档的类型,其中外发文档的类型包括但不限于非密文档、权限文档和加密文档等,而加密文档包括文件头信息和文件体信息两部分,文件头信息包含但不限于文档密级值和可读取次数等,文件体信息包含但不限于文档内容。比如,当APP调用SDK打开外发文档时,移动终端会调用加解密驱动引擎的文件读取接口来读取外发文档的加密头信息,从而对外发文档的类型进行判断。
由此,若外发文档的类型为非密文档,则直接调用内置阅读器来打开该外发文档;若外发文档的类型为权限文档,则会调用加解密算法库中的脱壳接口,以对外发文档进行脱壳处理,使得外发文档的类型变为加密文档;而若外发文档的类型为加密文档,则从外发文档的加密头信息中获取加密算法驱动类型,以启动加密算法驱动类型对应的解密引擎,并基于第一认证密钥信息和第一加解密密钥信息,校验和解密外发文档。
优选的,本发明一些实施例中加密文档头部含有文档认证信息,需要使用用户的认证密钥进行认证。此时,移动终端会从沙箱文件夹中获取当前登录用户所拥有的认证密钥数组,并通过解密引擎遍历该认证密钥数组,将加密的认证密钥解密成明文,以解密外发文档的文件头信息。从而,在文件头信息校验通过后基于第一加解密密钥信息中解密密钥数组,解密外发文档的文件体信息。
优选的,本发明一些实施例在校验文件头信息时,解密引擎将当前登录的用户密级值与文件头信息中的文档密级值进行比对,从而若用户密级值大于文档密级值,则返回校验失败码,比如校验失败码为“用户拥有的密级小于文档密级,无法打开文档”;而若用户密级值小于文档密级值,则返回校验成功码,比如校验成功码为“密级值校验通过”。
优选的,本发明一些实施例在校验文件头信息时,解密引擎还可以读取文件头信息中的可读取次数M,并调用服务端接口来获取当前已读取次数N,并将可读取次数M与当前已读取次数N进行大小比较,从而若当前已读取次数N大于或者等于可读取次数M,即M-N<0,则返回校验失败码,比如校验失败码为“文档剩余读取次数小于0,无法打开文档”。
S103,当校验过程和解密过程均成功时,调用内置阅读器展示外发文档的内容。
优选的,本发明一些实施例中,当展示外发文档的内容时,移动终端还会检测内置阅读器的使用状态,若使用状态为焦点离开,则对沙箱文件夹中经过解密的外发文档进行删除,避免泄密。其中,焦点离开包括但不限于用户视野焦点离开阅读器和当前activity失去焦点转到后台运行等。
优选的,本发明一些实施例在外发文档被成功打开之后,移动终端还会异步调用服务端文档信息更新接口,来根据文档的ID编号更新已读取次数,比如将已读取次数+1,这样设置的好处在于进一步确保了文档信息安全,可靠性强。
优选的,本发明一些实施例在文档处理时,移动终端还可以从服务端获取第二用户策略信息、第二认证密钥信息和第二加解密密钥信息,并根据该第二用户策略信息、第二认证密钥信息和第二加解密密钥信息,加密待发文档,也就是说移动终端也能够具有加密功能,实现原理与办公电脑端相同,从而应用范围更加广泛,满足了多样化的使用需求。其中,第二用户策略信息、第二认证密钥信息和第二加解密密钥信息与第一用户策略信息、第一认证密钥信息和第一加解密密钥信息可以相同,也可以不相同,这取决于文档接收者的变化。
本发明实施例提供的文档处理方法,通过在预先建立的沙箱文件夹中加载外发文档,并根据临时获取的第一用户策略信息、第一认证密钥信息和第一加解密密钥信息,来校验和解密外发文档,也就是说,该沙箱文件夹不长期存储关键信息,即使用时再索取,且对其它应用程序隐藏隔离,能够极大避免关键信息的泄密风险,进而当校验过程和解密过程都通过时,可以调用内置阅读器展示外发文档的内容,无需用户操作,便可自动完成,确保了文档信息安全。
基于前述实施例,本发明实施例提供一种文档处理装置。该文档处理装置100可以应用于图1-图3对应实施例的文档处理方法中。请参考图4,该文档处理装置100包括:
加载模块101,配置用于接收外发文档,并在预先建立的沙箱文件夹中加载外发文档,该沙箱文件夹包括临时获取的第一用户策略信息、第一认证密钥信息和第一加解密密钥信息;
处理模块102,配置用于根据第一用户策略信息、第一认证密钥信息和第一加解密密钥信息,对外发文档进行校验过程以及解密过程;
展示模块103,配置用于当校验过程和解密过程均成功时,调用内置阅读器展示外发文档的内容。
优选的,如图5所示,本发明一些实施例中处理模块102包括:
第一检测单元1021,配置用于基于第一用户策略信息,检测外发文档的类型;
脱壳单元1022,配置用于若外发文档的类型为权限文档,则对外发文档进行脱壳处理,使得外发文档的类型变为加密文档;
解密单元1023,配置用于若外发文档的类型为加密文档,则从外发文档的加密头信息中获取加密算法驱动类型,以启动加密算法驱动类型对应的解密引擎,并基于第一认证密钥信息和第一加解密密钥信息,校验和解密外发文档。
优选的,本发明一些实施例中解密单元1023还配置用于通过解密引擎遍历第一认证密钥信息中认证密钥数组,解密外发文档的文件头信息,并在文件头信息校验通过后基于第一加解密密钥信息中解密密钥数组,解密外发文档的文件体信息。
优选的,本发明一些实施例中解密单元1023还配置用于比对当前登录的用户密级值与文件头信息中的文档密级值;
若用户密级值大于文档密级值,则返回校验失败码;
若用户密级值小于文档密级值,则返回校验成功码。
优选的,本发明一些实施例中解密单元1023还配置用于比较当前已读取次数和文件头信息中可读取次数的大小;
若当前已读取次数大于或者等于可读取次数,则返回校验失败码。
优选的,如图6所示,本发明一些实施例中展示模块103还包括:
第二检测单元1031,配置用于检测内置阅读器的使用状态;
删除单元1032,配置用于若使用状态为焦点离开,则对沙箱文件夹中经过解密的外发文档进行删除。
优选的,如图7所示,本发明一些实施例中该文档处理装置100还包括加密模块104,该加密模块104配置用于获取第二用户策略信息、第二认证密钥信息和第二加解密密钥信息,并根据第二用户策略信息、第二认证密钥信息和第二加解密密钥信息,加密待发文档。
本发明实施例提供的文档处理装置,该文档处理装置首先通过加载模块接收外发文档,并在预先建立的沙箱文件夹中加载外发文档,该沙箱文件夹包括临时获取的第一用户策略信息、第一认证密钥信息和第一加解密密钥信息;然后,通过处理模块根据第一用户策略信息、第一认证密钥信息和第一加解密密钥信息,对外发文档进行校验过程以及解密过程;进而,当校验过程和解密过程均成功时,通过展示模块调用内置阅读器展示外发文档的内容。由此,该文档处理装置能够自动加解密文档,使得用户无感知,确保了文档信息安全。
基于前述实施例,本发明实施例提供一种移动终端,该移动终端包括处理器和存储器。存储器中存储有至少一条指令、至少一段程序、代码集或指令集,指令、程序、代码集或指令集由处理器加载并执行以实现图1-图3对应实施例的文档处理方法的步骤。
作为另一方面,本发明实施例提供一种计算机可读存储介质,用于存储程序代码,该程序代码用于执行前述图1-图3对应实施例的文档处理方法中的任意一种实施方式。
所属领域的技术人员可以清楚的了解到,为描述的方便和简洁,上述描述的系统,装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。而集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例文档处理方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory, ROM)、随机存取存储器(RandomAccess Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种文档处理方法,其特征在于,所述文档处理方法包括:
接收外发文档,并在预先建立的沙箱文件夹中加载所述外发文档,所述沙箱文件夹包括临时获取的第一用户策略信息、第一认证密钥信息和第一加解密密钥信息;
根据所述第一用户策略信息、所述第一认证密钥信息和所述第一加解密密钥信息,对所述外发文档进行校验过程以及解密过程;
当所述校验过程和所述解密过程均成功时,调用内置阅读器展示所述外发文档的内容。
2.根据权利要求1所述的文档处理方法,其特征在于,所述根据所述第一用户策略信息、所述第一认证密钥信息和所述第一加解密密钥信息,对所述外发文档进行校验过程以及解密过程,包括:
基于所述第一用户策略信息,检测所述外发文档的类型;
若所述外发文档的类型为权限文档,则对所述外发文档进行脱壳处理,使得所述外发文档的类型变为加密文档;
若所述外发文档的类型为所述加密文档,则从所述外发文档的加密头信息中获取加密算法驱动类型,以启动所述加密算法驱动类型对应的解密引擎,并基于所述第一认证密钥信息和所述第一加解密密钥信息,校验和解密所述外发文档。
3.根据权利要求2所述的文档处理方法,其特征在于,所述启动所述加密算法驱动类型对应的解密引擎,并基于所述第一认证密钥信息和所述第一加解密密钥信息,校验和解密所述外发文档,包括:
所述解密引擎遍历所述第一认证密钥信息中认证密钥数组,解密所述外发文档的文件头信息,并在所述文件头信息校验通过后基于所述第一加解密密钥信息中解密密钥数组,解密所述外发文档的文件体信息。
4.根据权利要求3所述的文档处理方法,其特征在于,所述文件头信息的校验,包括:
比对当前登录的用户密级值与所述文件头信息中的文档密级值;
若所述用户密级值大于所述文档密级值,则返回校验失败码;
若所述用户密级值小于所述文档密级值,则返回校验成功码。
5.根据权利要求4所述的文档处理方法,其特征在于,所述文件头信息的校验,还包括:
比较当前已读取次数和所述文件头信息中可读取次数的大小;
若所述当前已读取次数大于或者等于所述可读取次数,则返回校验失败码。
6.根据权利要求1至5中任意一项所述的文档处理方法,其特征在于,所述当所述校验过程和所述解密过程均成功时,调用内置阅读器展示所述外发文档的内容,还包括:
检测所述内置阅读器的使用状态;
若所述使用状态为焦点离开,则对所述沙箱文件夹中经过解密的所述外发文档进行删除。
7.根据权利要求6所述的文档处理方法,其特征在于,所述文档处理方法还包括:
获取第二用户策略信息、第二认证密钥信息和第二加解密密钥信息,并根据所述第二用户策略信息、所述第二认证密钥信息和所述第二加解密密钥信息,加密待发文档。
8.一种文档处理装置,其特征在于,所述文档处理装置包括:
加载模块,配置用于接收外发文档,并在预先建立的沙箱文件夹中加载所述外发文档,所述沙箱文件夹包括临时获取的第一用户策略信息、第一认证密钥信息和第一加解密密钥信息;
处理模块,配置用于根据所述第一用户策略信息、所述第一认证密钥信息和所述第一加解密密钥信息,对所述外发文档进行校验过程以及解密过程;
展示模块,配置用于当所述校验过程和所述解密过程均成功时,调用内置阅读器展示所述外发文档的内容。
9.一种移动终端,其特征在于,所述移动终端包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述指令、所述程序、所述代码集或所述指令集由所述处理器加载并执行以实现权利要求1至7中任意一项所述的文档处理方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现权利要求1至7中任意一项所述的文档处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211059873.0A CN115130141B (zh) | 2022-09-01 | 2022-09-01 | 一种文档处理方法、装置、移动终端及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211059873.0A CN115130141B (zh) | 2022-09-01 | 2022-09-01 | 一种文档处理方法、装置、移动终端及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115130141A true CN115130141A (zh) | 2022-09-30 |
CN115130141B CN115130141B (zh) | 2022-11-22 |
Family
ID=83387379
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211059873.0A Active CN115130141B (zh) | 2022-09-01 | 2022-09-01 | 一种文档处理方法、装置、移动终端及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115130141B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100189251A1 (en) * | 2009-01-23 | 2010-07-29 | Edward Curren | Security Enhanced Data Platform |
CN104715209A (zh) * | 2015-04-03 | 2015-06-17 | 山东华软金盾软件有限公司 | 一种外发文档加密保护方法 |
CN107180195A (zh) * | 2017-05-18 | 2017-09-19 | 北京计算机技术及应用研究所 | 基于安全标签的电子文档全生命周期安全防护方法 |
CN109934008A (zh) * | 2018-10-12 | 2019-06-25 | 王龙 | 一种基于权限等级的多任务文档管理系统 |
-
2022
- 2022-09-01 CN CN202211059873.0A patent/CN115130141B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100189251A1 (en) * | 2009-01-23 | 2010-07-29 | Edward Curren | Security Enhanced Data Platform |
CN104715209A (zh) * | 2015-04-03 | 2015-06-17 | 山东华软金盾软件有限公司 | 一种外发文档加密保护方法 |
CN107180195A (zh) * | 2017-05-18 | 2017-09-19 | 北京计算机技术及应用研究所 | 基于安全标签的电子文档全生命周期安全防护方法 |
CN109934008A (zh) * | 2018-10-12 | 2019-06-25 | 王龙 | 一种基于权限等级的多任务文档管理系统 |
Non-Patent Citations (2)
Title |
---|
刘佳等: "基于操作系统核心层的文档保护", 《电力信息与通信技术》 * |
陈涛: "加固网络安全 分析与总结常见勒索软件的加密算法", 《计算机与网络》 * |
Also Published As
Publication number | Publication date |
---|---|
CN115130141B (zh) | 2022-11-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10725756B2 (en) | Method and system for facilitating replacement of function calls | |
US9858428B2 (en) | Controlling mobile device access to secure data | |
US10708051B2 (en) | Controlled access to data in a sandboxed environment | |
US9854063B2 (en) | Enterprise application store for an orchestration framework for connected devices | |
US9286477B2 (en) | Secure app ecosystem with key and data exchange according to enterprise information control policy | |
US10114932B2 (en) | Adapting a mobile application to a partitioned environment | |
TWI496023B (zh) | 用於部分保全記憶體處理的軟體修改技術 | |
CN110383240B (zh) | 用于容器化的安全计算资源的方法和装置 | |
US20170185333A1 (en) | Encrypted synchronization | |
CN115130141B (zh) | 一种文档处理方法、装置、移动终端及存储介质 | |
JP2023542527A (ja) | ヘテロジニアス暗号化を通したソフトウェア・アクセス | |
Choi et al. | Hardware-assisted credential management scheme for preventing private data analysis from cloning attacks | |
Perrotis | Development of cryptographic algorithms in the trusted execution environment | |
Angelakis | Application development in the trusted execution environment | |
CN113886014A (zh) | 中间件加载动态密钥方法、装置、设备及存储介质 | |
CN117708842A (zh) | 基于可信执行环境的数据处理方法以及数据处理引擎 | |
Curran et al. | Exfiltrating Data from Managed Profiles in Android for Work |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |