一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于麒麟移动操作系统的外置存储设备加解密系统及方法与流程

2022-03-02 02:05:34 来源:中国专利 TAG:


1.本发明涉及移动终端安全技术领域,尤其涉及一种基于麒麟移动操作系统的外置存储设备加解密系统及方法。


背景技术:

2.麒麟移动操作系统是国防科技大学研制的移动终端操作系统,采用linux内核以及基于浏览器引擎的运行环境,为开发者提供基于html/javascript技术的直接访问硬件设备以及服务的接口,为用户提供便捷、流畅的web应用体验。
3.外置存储设备一般指移动终端中的外置存储卡(sdcard)或者usb otg等存储设备。存储卡主要用于扩展终端的存储空间,其中会保存大量用户重要信息。对于存储卡中的信息,当前没有一个完善的数据保护举措,用户可以对存储卡中的信息随意访问,这就存在很大的安全隐患。因此,需要一套完整的、能够对存储卡等外置存储设备进行加解密的方法,保护麒麟移动操作系统终端的数据安全。
4.目前市场上使用较多的移动终端都采用安卓系统框架,即linux内核 hal java api框架,该类移动终端不具有对外置存储卡或者usb otg设备进行加解密的功能。
5.中国专利号cn105549914a,名为“一种外置存储设备的挂载方法及系统”的专利,公开了在android终端上挂载外置存储设备时对外置存储设备进行加密和解密,但它主要是通过java api输入密码,而麒麟移动操作系统是以linux内核 html和javascript为框架,应用层(html javascript)使用javascript实现的接口将数据传递至底层(c 层),且该专利中的密码用于控制外置存储设备的挂载与否,它的加密模块用于管理设备和设备对应密码,并不是对外置存储设备的数据进行加密。


技术实现要素:

6.本发明要解决的技术问题就在于:针对现有技术存在的技术问题,本发明提供一种基于麒麟移动操作系统的外置存储设备加解密系统及方法,实现麒麟移动操作系统对外置存储设备加解密的功能。
7.为解决上述技术问题,本发明提出的技术方案为:
8.一种基于麒麟移动操作系统的外置存储设备加解密系统,包括:
9.web交互模块,用于获取操作指令,调用加解密接口并向所述加解密接口输入操作指令,并等待所述加解密接口的反馈数据;
10.web渲染引擎模块,用于提供加解密接口,从所述加解密接口获取操作指令并转发给外置存储设备管理模块,并等待所述外置存储设备管理模块的反馈数据,再通过加解密接口将所述反馈数据发送给web交互模块;
11.外置存储设备管理模块,用于识别外置存储设备并反馈设备数据给web渲染引擎模块,还用于从web渲染引擎模块获取操作指令,根据操作指令确定目标外置存储设备后挂载对应的虚拟设备,并生成加密密钥或解密密钥,然后通过所述虚拟设备对目标外置存储
设备中的数据加密或解密,并生成对应的反馈信息后发送给web渲染引擎模块。
12.进一步的,所述外置存储设备管理模块包括:
13.设备节点识别模块,用于通过监听设备节点的变化来检测外置存储设备,并检测外置存储设备的插拔事件,形成外置存储设备信息列表;
14.设备状态分析模块,用于获取所述外置存储设备信息列表中所有检测到的外置存储设备的挂载状态和加密状态;
15.设备数据分析模块,用于获取所述外置存储设备信息列表中所有检测到的外置存储设备的设备信息;
16.数据通信模块,用于与web渲染引擎模块数据交互。
17.进一步的,所述外置存储设备管理模块还包括:
18.虚拟转换模块,用于根据外置存储设备信息列表中的设备信息创建与外置存储设备对应的虚拟设备;
19.挂载模块,用于根据挂载指令确定目标外置存储设备,通过预设的挂载函数挂载目标外置存储设备对应的虚拟设备到麒麟移动操作系统的文件系统上。
20.进一步的,所述外置存储设备管理模块还包括:
21.密钥信息管理模块,用于根据操作指令中的密码口令生成加密密钥并调用设备加密模块,或者生成解密密钥并调用设备解密模块;
22.设备加密模块,用于通过加密密钥以及预设的加密算法,将外置存储设备的未加密数据加密,还用于通过加密密钥以及预设的加密算法,将待写入数据加密,然后通过虚拟设备将加密后的待写入数据写入外置存储设备;
23.设备解密模块,用于通过虚拟设备从外置存储设备读取待解密数据,然后通过解密密钥以及预设的解密算法,将待解密数据解密。
24.本发明还提出一种基于麒麟移动操作系统的外置存储设备加解密方法,包括以下步骤:
25.s1)web交互模块获取操作指令,调用加解密接口并向所述加解密接口输入操作指令;
26.s2)web渲染引擎模块从所述加解密接口获取操作指令并转发给外置存储设备管理模块;
27.s3)外置存储设备管理模块从web渲染引擎模块获取操作指令,根据操作指令确定目标外置存储设备后挂载对应的虚拟设备,并生成加密密钥或解密密钥,然后通过所述虚拟设备对目标外置存储设备中的数据加密或解密,并生成对应的反馈信息后发送给web渲染引擎模块。
28.s4)web渲染引擎模块等待并接收外置存储设备管理模块的反馈信息,将所述反馈信息通过加解密接口发送给web交互模块;
29.s5)web交互模块等待并从所述加解密接口接收反馈信息。
30.进一步的,步骤s1)之前还包括外置存储设备管理模块识别外置存储设备的步骤,具体包括:
31.s01)设备节点识别模块通过监听设备节点的变化来检测外置存储设备,并检测外置存储设备的插拔事件,形成外置存储设备信息列表;
32.s02)设备状态分析模块获取所述外置存储设备信息列表中所有检测到的外置存储设备的挂载状态、加密状态,设备数据分析模块获取所述外置存储设备信息列表中所有检测到的外置存储设备的设备信息;
33.s03)数据通信模块将所有检测到的外置存储设备的挂载状态、加密状态和设备信息反馈给web渲染引擎模块,web渲染引擎模块通过加解密接口将所述挂载状态、加密状态和设备信息反馈给web交互模块。
34.进一步的,步骤s3)包括首次上电时加密目标外置存储设备的步骤,具体包括:
35.s311)密钥信息管理模块对默认密码或操作指令的密码口令中的自定义密码加密得到加密密钥,并保存加密密钥,若操作指令的控制参数中,模式信息为手动模式,密码验证模块将密码口令保存;
36.s312)设备加密模块通过加密密钥以及预设的加密算法,将外置存储设备的未加密数据加密。
37.进一步的,步骤s3)包括非首次上电时读取外置存储设备中数据的步骤,具体包括:
38.s321)密钥信息管理模块根据预设的解密算法,通过加密密钥、加密随机值和盐值生成解密密钥,若操作指令的控制参数中,模式信息为手动模式,密钥信息管理模块根据预设的解密算法,通过随机值、盐值以及密码口令中的自定义密码生成解密密钥;
39.s322)设备解密模块通过挂载好的目标外置存储设备的虚拟设备,从目标外置存储设备读取待解密数据,然后通过解密密钥以及预设的解密算法,将待解密数据解密。
40.进一步的,步骤s1)中的操作指令包括控制参数和callback函数;
41.步骤s2)具体包括:web渲染引擎模块从加解密接口获取控制参数和callback函数,将callback函数以指针形式保存,解析控制参数并将解析后的控制参数以进程间通信方式发送给外置存储设备管理模块;
42.步骤s4)具体包括:外置存储设备管理模块通过进程间通信的方式将反馈信息发送给web渲染引擎模块,web渲染引擎模块使用callback函数指针将所述反馈信息作为callback函数参数从加解密接口发送给web交互模块;
43.步骤s5)中,web交互模块通过加解密接口获得回传的参数,解析后获得外置存储设备的相关处理信息。
44.进一步的,步骤s1)中的操作指令包括控制参数;
45.步骤s2)具体包括:web渲染引擎模块定义事件属性的参数并构造事件处理函数,从加解密接口获取控制参数后解析控制参数,并将解析后的控制参数以进程间通信方式发送给外置存储设备管理模块;
46.步骤s4)具体包括:外置存储设备管理模块通过进程间通信的方式将反馈信息发送给web渲染引擎模块,web渲染引擎模块监听到反馈信息后,将反馈信息作为事件对象,通过加解密接口派发事件给web交互模块;
47.步骤s5)中,web交互模块通过web渲染引擎模块的加解密接口监听到事件对象,解析后获得外置存储设备的相关处理信息。
48.与现有技术相比,本发明的优点在于:
49.本发明通过配置外置存储设备管理模块,实现了麒麟移动操作系统对于外置存储
设备的加解密功能,能够对于接入的外置存储设备中的数据进行加密,且读取其中的数据时进行解密,同时采用密钥进行管理,使得加密完成的外置存储设备的内容无法被其他设备读写和访问,且麒麟移动操作系统终端进行访问时也需要密钥,从而大大提高了麒麟移动操作系统终端对于外置存储设备数据访问的安全性。
附图说明
50.图1为本发明实施例一的总体流程图。
51.图2为本发明实施例二的加解密接口数据传输流程图。
52.图3为本发明实施例二的首次上电加密流程图。
53.图4为本发明实施例二的非首次上电解密流程图。
54.图5为本发明实施例三的加解密接口数据传输流程图。
具体实施方式
55.以下结合说明书附图和具体优选的实施例对本发明作进一步描述,但并不因此而限制本发明的保护范围。
56.实施例一
57.如图1所示,本实施例提出一种基于麒麟移动操作系统的外置存储设备加解密系统,包括:
58.web交互模块,用于获取操作指令,调用加解密接口并向所述加解密接口输入操作指令,并等待所述加解密接口的反馈数据;
59.web渲染引擎模块,用于提供加解密接口,从所述加解密接口获取操作指令并转发给外置存储设备管理模块,并等待所述外置存储设备管理模块的反馈数据,再通过加解密接口将所述反馈数据发送给web交互模块;
60.外置存储设备管理模块,用于识别外置存储设备并反馈设备数据给web渲染引擎模块,还用于从web渲染引擎模块获取操作指令,根据操作指令确定目标外置存储设备后挂载对应的虚拟设备,并生成加密密钥或解密密钥,然后通过所述虚拟设备对目标外置存储设备中的数据加密或解密,并生成对应的反馈信息后发送给web渲染引擎模块。
61.本实施例中,web交互模块采用html5、css和javascript编写,作为麒麟移动操作系统的最上层,提供用户操作界面。用户通过web交互模块输入操作指令,并从用户操作界面上得到反馈结果。
62.web渲染引擎模块是c 实现的排版引擎,负责解释界面内容,整理信息。web渲染引擎模块负责实现加解密接口,进行封装并提供给web交互模块使用。web渲染引擎模块通过进程间通信方式(一般为套接字socket,也可以为管道pipe、消息队列和共享内存等等)与外置存储设备管理模块进行数据交换。
63.外置存储设备管理模块负责外置存储设备的加密和解密,管理和维护外置存储设备的状态。如图1所示,本实施例中外置存储设备管理模块包含设备节点识别模块、设备状态分析模块、设备数据分析模块、设备虚拟转换模块、密码验证模块、密钥信息管理模块、设备加密模块、设备解密模块、加解密过程状态反馈模块、数据通信模块、设备挂载模块。下面根据所要解决的问题对外置存储设备管理模块的各部分的功能分别说明:
64.为识别外置存储设备,如图1所示,外置存储设备管理模块以下部分进行工作:
65.设备节点识别模块,用于通过监听设备节点的变化来检测外置存储设备,并检测外置存储设备的插拔事件,形成外置存储设备信息列表;具体的,设备节点识别模块监听底层的设备节点的变化,识别移动终端上已接入的外置存储设备,检测外置存储设备的插拔事件,对设备节点数据进行记录和分类管理,形成外置存储设备信息列表,用于后续操作。
66.设备状态分析模块,用于获取所述外置存储设备信息列表中所有检测到的外置存储设备的挂载状态和加密状态;具体的,设备状态分析模块对外置存储设备信息列表中所罗列的外置存储设备设备的状态进行检查,判断外置存储设备是否处于挂载状态、是否已经被加密、设备是否损坏和设备是否能够被加密等等。
67.设备数据分析模块,用于获取所述外置存储设备信息列表中所有检测到的外置存储设备的设备信息;具体的,设备数据分析模块获取外置存储设备信息列表中的外置存储设备的文件系统格式、设备的生产厂商、设备存储大小和设备类型,常见的文件系统格式有ext2、ext3、ext4、vfat和f2fs等,设备类型有外置存储卡(sdcard)或者usb otg等。
68.数据通信模块,用于与web渲染引擎模块数据交互,如图1所示,本实施例中,数据通信模块下发操作指令中的密码口令和挂载指令,并上传设备信息、密码验证结果、加密或解密进度及结果等。
69.识别外置存储设备时,数据通信模块将外置存储设备信息列表中所有检测到的外置存储设备的挂载状态、加密状态以及设备信息发送给web渲染引擎模块,web渲染引擎模块再通过加解密接口将这些信息发送给web交互模块,从而通过web交互模块在用户操作界面上显示外置存储设备信息列表中所有检测到的外置存储设备的挂载状态、加密状态以及设备信息,供用户下发操作指令时进行参考。
70.用户下发操作指令后,为响应对应操作,如图1所示,外置存储设备管理模块以下部分进行工作:
71.用户看到外置存储设备信息列表中所有检测到的外置存储设备的挂载状态、加密状态以及设备信息后,由于麒麟移动操作系统需要让虚拟设备成为外置存储设备的代理,即后续通过该虚拟设备来访问对应的外置存储设备的数据,因此会针对未挂载的外置存储设备下发包含挂载指令的操作指令,此时外置存储设备管理模块以下部分进行工作:
72.虚拟转换模块,用于创建与外置存储设备对应的虚拟设备;具体的,用户下发的操作指令一般是面对指定的外置存储设备进行操作,其中包含需要挂载的目标外置存储设备的部分信息,如名称、盘符等,虚拟转换模块从设备数据分析模块获取外置存储设备信息列表,并匹配得到目标外置存储设备的设备信息,根据其中的逻辑起始地址、范围以及地址偏移量等等,创建虚拟设备并将创建的虚拟设备与目标外置存储设备进行关联。虚拟转换模块也可以在前文中的识别外置存储设备时,针对外置存储设备信息列表中没有虚拟设备的外置存储设备为对象,创建对应的虚拟设备,并将创建的虚拟设备与对应的外置存储设备进行关联,这样能够加快挂载的进度,但可能会造成数据冗余。
73.挂载模块,用于通过数据通信模块获取操作指令中的挂载指令,根据挂载指令确定目标外置存储设备,通过预设的挂载函数挂载目标外置存储设备对应的虚拟设备到麒麟移动操作系统的文件系统上。
74.用户看到外置存储设备信息列表中所有检测到的外置存储设备的挂载状态、加密
状态以及设备信息后,对于未加密的外置存储设备,或者需要向已加密的外置存储设备写入未加密的数据,会下发包含密码口令的操作指令,此时外置存储设备管理模块以下部分进行工作:
75.密码验证模块,用于通过数据通信模块获取操作指令中的密码口令,将所述密码口令进行数据转换后与预先保存的密码口令进行验证,若验证通过,将所述密码口令发送给密钥信息管理模块,若验证不通过,通过数据通信模块反馈验证失败给web渲染引擎模块;具体的,密码验证模块将用户输入图形、数字、指纹等等密码口令,通过该模块进行数据转换后与系统中已存在的密码口令进行对比验证。
76.密钥信息管理模块,用于根据操作指令中的密码口令生成加密密钥并调用设备加密模块;具体的,密钥信息管理模块保存从密码验证模块获取的密码口令、设备加密所需的盐值(salt)和加密密钥等密钥信息,并提供读写接口。密钥未加密时,该模块会使用随机设备生成随机值,结合密码口令以及设备加密所需的盐值(盐值也是随机生成的且唯一的,可以增强加密安全性。),然后根据加密算法,生成加密密钥。
77.设备加密模块,用于通过加密密钥以及预设的加密算法,将外置存储设备的未加密数据加密,还用于通过加密密钥以及预设的加密算法,将待写入数据加密,然后通过虚拟设备将加密后的待写入数据写入外置存储设备;具体的,设备加密模块主要用于对密钥进行加密和对外置存储设备的数据进行加密。当外置存储设备需要加密时,该模块通过加密算法以及加密密钥,将设备上的数据加密后写入外置存储设备。需要写入新的数据时,通过设备虚拟转换模块生成的虚拟设备,对数据进行加密后,写入外置存储设备。
78.状态反馈模块,用于计算出加密所需时间,将进度数据通过数据通信模块反馈给web渲染引擎模块,且当加密结束时,将处理结果通过数据通信模块反馈给web渲染引擎模块。
79.用户看到外置存储设备信息列表中所有检测到的外置存储设备的挂载状态、加密状态以及设备信息后,需要向已加密的外置存储设备读取加密的数据时,会下发包含密码口令的操作指令,此时外置存储设备管理模块以下部分进行工作:
80.密码验证模块,用于通过数据通信模块获取操作指令中的密码口令,将所述密码口令进行数据转换后与预先保存的密码口令进行验证,若验证通过,将所述密码口令发送给密钥信息管理模块,若验证不通过,通过数据通信模块反馈验证失败给web渲染引擎模块;具体的,密码验证模块将用户输入图形、数字、指纹等等密码口令,通过该模块进行数据转换后与系统中已存在的密码口令进行对比验证。
81.密钥信息管理模块,用于根据操作指令中的密码口令生成解密密钥并调用设备解密模块;具体的,密钥信息管理模块保存从密码验证模块获取的密码口令、设备加密所需的盐值(salt)和加密密钥等密钥信息,并提供读写接口。当密钥已加密时,该模块会通过加密密钥、加密随机值和盐值等信息,根据解密算法,生成解密密钥。
82.设备解密模块,用于通过虚拟设备从外置存储设备读取待解密数据,然后通过解密密钥以及预设的解密算法,将待解密数据解密。具体的,当外置存储设备需要解密,即需要读取已加密的外置存储设备数据时,使用解密密钥对设备数据进行解密,然后通过设备虚拟转换模块生成的虚拟设备,获取解密后的数据。
83.状态反馈模块,用于计算出解密所需时间,将进度数据通过数据通信模块反馈给
web渲染引擎模块,且当解密结束时,将处理结果通过数据通信模块反馈给web渲染引擎模块。
84.外置存储设备的加密和解密可以使用对称加密算法或者非对称加密算法,但由于非对称加密算法加密时间较长,系统开机速度会变慢,因此一般采用对称加密算法。对称加密算法可以选用des、3des或者aes等等算法。
85.实施例二
86.本实施例基于实施例一提出一种基于麒麟移动操作系统的外置存储设备加解密方法,包括以下步骤:
87.s1)web交互模块获取操作指令,调用加解密接口并向所述加解密接口输入操作指令;
88.s2)web渲染引擎模块从所述加解密接口获取操作指令并转发给外置存储设备管理模块;
89.s3)外置存储设备管理模块从web渲染引擎模块获取操作指令,根据操作指令确定目标外置存储设备后挂载对应的虚拟设备,并生成加密密钥或解密密钥,然后通过所述虚拟设备对目标外置存储设备中的数据加密或解密,并生成对应的反馈信息后发送给web渲染引擎模块。
90.s4)web渲染引擎模块等待并接收外置存储设备管理模块的反馈信息,将所述反馈信息通过加解密接口发送给web交互模块;
91.s5)web交互模块等待并从所述加解密接口接收反馈信息。
92.如图2所示,本实施例中加解密接口实现方式如下:
93.接口输入:控制指令、密码口令等数据参数,callback回调函数。
94.接口输出:callback回调函数及其参数。
95.web交互模块调用web渲染引擎模块的加解密接口,传入控制参数及回调函数callback(将该函数也作为一个参数)。控制参数可以为下发的对外置存储设备的挂载指令或者密码口令等数据信息。callback函数为通信载体,web渲染引擎模块接收控制参数并保存callback,处理完业务逻辑后,使用保存的callback将结果以回调函数参数形式进行输出给web交互模块。然后,web交互模块以异步的方式接收callback回调函数的参数,即获得了下发操作指令后的反馈结果。
96.因此,本实施例中,步骤s1)中的操作指令包括控制参数和callback函数;
97.步骤s2)具体包括:web渲染引擎模块从加解密接口获取控制参数和callback函数,将callback函数以指针形式保存,解析控制参数并将解析后的控制参数以进程间通信方式发送给外置存储设备管理模块;
98.步骤s4)具体包括:外置存储设备管理模块通过进程间通信的方式将反馈信息发送给web渲染引擎模块,web渲染引擎模块使用callback函数指针将所述反馈信息作为callback函数参数从加解密接口发送给web交互模块;
99.步骤s5)中,web交互模块通过加解密接口获得回传的参数,解析后获得外置存储设备的相关处理信息。
100.本实施例的步骤s1)之前还包括外置存储设备管理模块识别外置存储设备的步骤,具体包括:
101.s01)设备节点识别模块通过监听设备节点的变化来检测外置存储设备,并检测外置存储设备的插拔事件,形成外置存储设备信息列表;
102.s02)设备状态分析模块获取所述外置存储设备信息列表中所有检测到的外置存储设备的挂载状态、加密状态,设备数据分析模块获取所述外置存储设备信息列表中所有检测到的外置存储设备的设备信息;
103.s03)数据通信模块将所有检测到的外置存储设备的挂载状态、加密状态和设备信息反馈给web渲染引擎模块,web渲染引擎模块通过加解密接口将所述挂载状态、加密状态和设备信息反馈给web交互模块。
104.当麒麟移动操作系统终端首次上电时,用户通过麒麟移动操作系统终端的显示界面进行命令输入,第一步是选择模式,即通过web交互模块选择对外置存储设备加解密的处理模式。自动模式,即系统后台按既定的流程自动处理外置存储设备的方式。手动模式,即每次系统上电都需要使用密码口用户令等方法验证成功后再对外置存储设备进行操作的方式。其中,用户在选择处理模式时,控制参数即为选定模式所对应的指令,通过web交互模块下发至web渲染引擎模块,同时传入callback函数,用于接收该操作的反馈结果。web渲染引擎模块的接口收到数据后,将callback函数以指针形式进行保存,控制参数经过解析后,将数据通过进程间通信方式传至外置存储设备管理模块。
105.外置存储设备管理模块解析收到的参数数据,分模式进行处理:
106.若为自动模式,使用内置的加解密方式及默认密码口令进行外置存储设备的加解密过程。如图3所示,若当前为系统第一次上电,外置存储设备未被加密,则调用加密模块对外置存储设备进行加密,返回外置存储设备加密成功或者失败的结果信息。如图4所示,若当前非系统第一次上电,外置存储设备已经被加密,则调用解密模块对外置存储设备进行解密,返回外置存储设备解密成功或者失败的结果信息。
107.若为手动模式,当外置存储设备未加密时,返回需要用户输入密码口令以进行首次加密的信息,首次加密的密码口令是用户自定义设置的。当外置存储设备已经被加密时,返回需要用户输入解密密码口令进行验证的信息。用户看到反馈信息后,输入密码口令,此时的控制参数则为密码口令。当收到用户的密码口令时,外置存储设备管理模块会根据处理逻辑调用加密模块对外置存储设备进行加密或者调用解密模块对外置存储设备进行解密,并将处理完成的结果信息进行返回。
108.因此,步骤s3)包括首次上电时加密目标外置存储设备的步骤、非首次上电时读取外置存储设备中数据的步骤、非首次上电时数据写入外置存储设备的步骤、以及配置目标外置存储设备的虚拟设备并挂载的步骤,以下分别进行说明:
109.步骤s1)中控制参数还包括模式信息,如图3所示,步骤s3)中首次上电时加密目标外置存储设备的步骤具体包括:
110.s311)数据通信模块接收并解析操作指令,若操作指令的控制参数中,模式信息为自动模式,密钥信息管理模块用随机值以及盐值根据预设的加密算法对默认密码加密得到加密密钥,并保存在密钥信息管理模块中,若操作指令的控制参数中,模式信息为手动模式,数据通信模块将操作指令的密码口令经密码验证模块发送给密钥信息管理模块,密码验证模块将密码口令保存,密钥信息管理模块用随机值以及盐值根据预设的加密算法对密码口令中的自定义密码加密得到加密密钥,并保存加密密钥;
111.s312)设备加密模块通过加密密钥以及预设的加密算法,将外置存储设备的未加密数据加密,状态反馈模块计算出加密所需时间,将进度数据通过数据通信模块反馈给web渲染引擎模块,且当加密结束时,将处理结果通过数据通信模块反馈给web渲染引擎模块。
112.如图4所示,步骤s3)中非首次上电时读取外置存储设备中数据的步骤具体包括:
113.s321)数据通信模块接收并解析操作指令,若操作指令的控制参数中,模式信息为自动模式,密钥信息管理模块根据预设的解密算法,通过加密密钥、加密随机值和盐值生成解密密钥,若操作指令的控制参数中,模式信息为手动模式,数据通信模块将操作指令的密码口令发送给密码验证模块,密码验证模块将该密码口令与首次上电时保存的密码口令进行比较验证,若验证通过,密码验证模块将该密码口令发送给密钥信息管理模块,密钥信息管理模块根据预设的解密算法,通过随机值、盐值以及密码口令中的自定义密码生成解密密钥;若验证失败,密码验证模块将验证失败的信息通过数据通信模块反馈给web渲染引擎模块并跳转执行步骤s4);
114.s322)设备解密模块通过挂载好的目标外置存储设备的虚拟设备,从目标外置存储设备读取待解密数据,然后通过解密密钥以及预设的解密算法,将待解密数据解密,状态反馈模块计算出解密所需时间,将进度数据通过数据通信模块反馈给web渲染引擎模块,且当解密结束时,将处理结果通过数据通信模块反馈给web渲染引擎模块。
115.步骤s3)中非首次上电时数据写入外置存储设备的步骤具体包括:
116.s331)数据通信模块接收并解析操作指令,若操作指令的控制参数中,模式信息为自动模式,密钥信息管理模块用随机值以及盐值根据预设的加密算法对默认密码加密得到加密密钥,并保存在密钥信息管理模块中,若操作指令的控制参数中,模式信息为手动模式,数据通信模块将操作指令的密码口令发送给密码验证模块,密码验证模块将该密码口令与首次上电时保存的密码口令进行比较验证,若验证通过,密码验证模块将该密码口令发送给密钥信息管理模块,密钥信息管理模块用随机值以及盐值根据预设的加密算法对密码口令中的自定义密码加密得到加密密钥,并保存加密密钥;若验证失败,密码验证模块将验证失败的信息通过数据通信模块反馈给web渲染引擎模块并跳转执行步骤s4);
117.s332)设备加密模块通过加密密钥以及预设的加密算法,将待写入数据加密,然后通过挂载好的目标外置存储设备的虚拟设备,将加密后的待写入数据写入目标外置存储设备,状态反馈模块计算出加密所需时间,将进度数据通过数据通信模块反馈给web渲染引擎模块,且当加密结束时,将处理结果通过数据通信模块反馈给web渲染引擎模块。
118.在非首次上电时读取外置存储设备中数据的步骤、非首次上电时数据写入外置存储设备的步骤之前,分别有配置目标外置存储设备的虚拟设备并挂载的步骤,具体包括:
119.虚拟转换模块从设备数据分析模块获取外置存储设备信息列表,将不存在对应虚拟设备的外置存储设备作为对象,创建对应的虚拟设备,根据所述对象的设备信息中的逻辑起始地址、范围以及地址偏移量,将创建的虚拟设备与对应的外置存储设备进行关联;
120.数据通信模块接收并解析操作指令,将操作指令中的挂载指令发送给挂载模块,挂载模块根据挂载指令,将挂载指令中目标外置存储设备对应的虚拟设备,通过预设的挂载函数挂载到麒麟移动操作系统的文件系统上。
121.控制参数除了模式信息、密码口令、挂载指令等输入外,用户还可以通过控制参数进行查询外置存储设备状态、查询加密过程进度、查询解密过程进度和擦除外置存储设备
数据等等操作,且这些操作也是调用web渲染引擎模块的加解密接口进行处理,只是传入的控制参数在变化而已。
122.实施例三
123.本实施例与实施例二基本相同,区别在于,如图5所示,本实施例中加解密接口实现方式如下:
124.接口输入:控制指令、密码口令等数据参数。
125.接口输出:事件。
126.本实施例中,web渲染引擎模块中注册用于处理存储加密相关的事件属性的参数,创建并初始化事件处理函数,然后派发事件。web交互模块调用web渲染引擎模块的加解密接口,传入控制参数并进行事件监听,控制参数为输入,事件监听用于接收web渲染引擎模块派发的事件,事件对象中包含web渲染引擎模块发送给web交互模块的数据。web渲染引擎模块处理完业务逻辑后,将处理结果以事件的形式进行派发。web渲染引擎模块以异步的方式收到事件,即获得了下发指令后的反馈结果,web交互模块可以从加解密接口中接收外置存储设备的当前的状态及处理结果等信息。
127.因此,本实施例中,步骤s1)中的操作指令包括控制参数;
128.步骤s2)具体包括:web渲染引擎模块定义事件属性的参数并构造事件处理函数,从加解密接口获取控制参数后解析控制参数,并将解析后的控制参数以进程间通信方式发送给外置存储设备管理模块;
129.步骤s4)具体包括:外置存储设备管理模块通过进程间通信的方式将反馈信息发送给web渲染引擎模块,web渲染引擎模块监听到反馈信息后,将反馈信息作为事件对象,通过加解密接口派发事件给web交互模块;
130.步骤s5)中,web交互模块通过web渲染引擎模块的加解密接口监听到事件对象,解析后获得外置存储设备的相关处理信息。
131.上述只是本发明的较佳实施例,并非对本发明作任何形式上的限制。虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明。因此,凡是未脱离本发明技术方案的内容,依据本发明技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均应落在本发明技术方案保护的范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献