CN110502602B - 数据存储方法、装置、设备和计算机存储介质 - Google Patents
数据存储方法、装置、设备和计算机存储介质 Download PDFInfo
- Publication number
- CN110502602B CN110502602B CN201910761802.7A CN201910761802A CN110502602B CN 110502602 B CN110502602 B CN 110502602B CN 201910761802 A CN201910761802 A CN 201910761802A CN 110502602 B CN110502602 B CN 110502602B
- Authority
- CN
- China
- Prior art keywords
- text data
- ciphertext
- key name
- sensitive information
- preset
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/31—Indexing; Data structures therefor; Storage structures
- G06F16/316—Indexing structures
-
- 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
-
- 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/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bioethics (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Medical Informatics (AREA)
- Storage Device Security (AREA)
Abstract
本发明涉及数据安全,本发明公开了一种数据存储方法,包括以下步骤:终端获取待存储的文本数据,为所述文本数据分配键名;将所述键名按第一预设加密算法进行加密处理,得到密文键名;在所述文本数据中包含敏感信息时,将所述文本数据按第二预设加密算法进行加密处理,得到密文文本数据;将所述密文键名与所述密文文本数据关联存储在所述终端的本地存储器。本发明还公开了一种数据存储装置、设备和计算机存储介质。本发明中将本地存储器中的键名和文本数据进行加密存储,提高了本地存储数据的安全性。
Description
技术领域
本发明涉及数据安全领域,尤其涉及数据存储方法、装置、设备和计算机存储介质。
背景技术
前端网页开发中,均使用应用超文本标记语言第五版本的本地存储器localStorage特性进行存储。
本地存储器localStorage数据存储的方式为键值对方式,即以一个固定键值存储了一段文本数据后,查询本地存储器,就可以通过键值读取对应的数据;目前,浏览器内的本地存储器localStorage数据存储均以明文方式存储,且前端页面运行环境具有开放、易查看的特点,导致本地存储器localStorage存储的数据有被泄露、盗取的风险,因此,如何提高数据的安全性是目前亟待解决的问题。
发明内容
本发明的主要目的在于提供一种数据存储方法、装置、设备和计算机存储介质,旨在解决当前本地存储器中数据安全性低的技术问题。
为实现上述目的,本发明提供数据存储方法,所述数据存储方法包括以下步骤:
终端获取待存储的文本数据,为所述文本数据分配键名;
将所述键名按第一预设加密算法进行加密处理,得到密文键名;
在所述文本数据中包含敏感信息时,将所述文本数据按第二预设加密算法进行加密处理,得到密文文本数据;
将所述密文键名与所述密文文本数据关联存储在所述终端的本地存储器。
可选地,所述第一预设加密算法包括MD5消息摘要算法;
所述将所述键名按第一预设加密算法进行加密处理,得到密文键名的步骤,包括:
在所述键名后拼接偏移量字符串,得到符合预设条件的拼接键名;
将所述拼接键名按所述MD5消息摘要算法转换为预设位数的散列值,得到密文键名。
可选地,所述在所述文本数据中包含敏感信息时,将所述文本数据按第二预设加密算法进行加密处理,得到密文文本数据的步骤,包括:
在所述文本数据中包含敏感信息时,判断所述文本数据的字节数是否超过预设字节数;
在所述文本数据的字节数超过预设字节数时,提取所述文本数据中的敏感信息,并建立所述敏感信息与其所占位置之间的映射关系表;
将提取的所述敏感信息和所述映射关系表按第二预设加密算法进行加密处理,得到密文敏感信息;
所述将所述密文键名与所述密文文本数据关联存储在所述终端的本地存储器的步骤,包括:
将不包含敏感信息的文本数据作为脱敏文本数据,将所述脱敏文本数据和所述密文敏感信息封装为数据包,并将所述数据包与所述密文键名关联存储在所述终端的本地存储器。
可选地,所述将所述密文键名与所述密文文本数据关联存储在所述终端的本地存储器的步骤之后,包括:
在接收到文本读取指令时,获取所述文本读取指令对应的身份验证信息和密文键名;
在所述身份验证信息验证通过时,获取所述密文键名对应的第一预设解密算法,并基于所述第一预设解密算法解密所述密文键名,得到键名;
获取所述键名对应的数据包,从所述数据包中提取密文敏感信息和脱敏文本数据;
获取所述密文敏感信息对应的第二预设解密算法,按所述第二预设解密算法解密所述密文敏感信息,得到敏感信息和敏感映射关系表;
将所述敏感信息按所述映射关系表填充到所述脱敏文本数据中,得到所述读取指令对应的文本数据。
可选地,所述将所述敏感信息按所述映射关系表填充到所述脱敏文本数据中,得到所述读取指令对应的文本数据的步骤之后,包括:
接收基于所述文本数据输入的编辑信息,将所述文本数据,及所述文本数据对应的编辑信息作为新的文本数据;
将新的文本数据保存到在所述终端的本地存储器。
可选地,所述将所述键名按第一预设加密算法进行加密处理,得到密文键名的步骤之后,包括:
在所述文本数据中不包含敏感信息时,判断所述文本数据中是否包含预设标签;
在所述文本数据中包含预设标签时,将所述文本数据按第二预设加密算法进行加密处理,得到密文文本数据;
将所述密文键名与所述密文文本数据关联存储在所述终端的本地存储器。
可选地,所述将所述密文键名与所述密文文本数据关联存储在所述终端的本地存储器的步骤之后,包括:
当检测到所述本地存储器的可用存储容量低于预设存储阈值时,获取所述本地存储器中各文本数据的属性,其中,所述属性包括创建时间、访问时间和修改时间;
按各文本数据的创建时间、访问时间和修改时间,确定待删除的目标文本数据,并删除所述本地存储器中的所述目标文本数据。
此外,为实现上述目的,本发明还提供一种数据存储装置,所述数据存储装置包括:
获取分配模块,用于获取待存储的文本数据,为所述文本数据分配键名;
键名加密模块,用于将所述键名按第一预设加密算法进行加密处理,得到密文键名;
文本加密模块,用于在所述文本数据中包含敏感信息时,将所述文本数据按第二预设加密算法进行加密处理,得到密文文本数据;
关联存储模块,用于将所述密文键名与所述密文文本数据关联存储在所述终端的本地存储器。
此外,为实现上述目的,本发明还提供一种数据存储设备;
所述数据存储设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其中:
所述计算机程序被所述处理器执行时实现如上所述的数据存储方法的步骤。
此外,为实现上述目的,本发明还提供计算机存储介质;
所述计算机存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述的数据存储方法的步骤。
本发明实施例提出的一种数据存储方法、装置、设备和计算机存储介质,终端获取待存储的文本数据,为所述文本数据分配键名;将所述键名按第一预设加密算法进行加密处理,得到密文键名;在所述文本数据中包含敏感信息时,将所述文本数据按第二预设加密算法进行加密处理,得到密文文本数据;将所述密文键名与所述密文文本数据关联存储在所述终端的本地存储器。本发明实施例中终端将键名进行加密形成密文键名,将文本数据进行加密形成密文文本数据,有效地降低了本地存储器中存储的文本数据被泄露、盗取的风险,提高了本地存储中数据的安全性。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的装置结构示意图;
图2为本发明数据存储方法第一实施例的流程示意图;
图3为本发明数据存储方法第二实施例的流程示意图;
图4为本发明数据存储装置一实施例的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的终端(又叫数据存储设备,其中,数据存储设备可以是由单独的数据存储装置构成,也可以是由其他装置与数据存储装置组合形成)结构示意图。
本发明实施例终端可以固定终端,也可以是移动终端,如,带联网功能的智能空调、智能电灯、智能电源、智能音箱、自动驾驶汽车、PC(personal computer)个人计算机、智能手机、平板电脑、电子书阅读器、便携计算机等。
如图1所示,该终端可以包括:处理器1001,例如,中央处理器Central ProcessingUnit,CPU),网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真WIreless-FIdelity,WIFI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如,磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
可选地,终端还可以包括摄像头、RF(Radio Frequency,射频)电路,传感器、音频电路、WiFi模块;输入单元,比显示屏,触摸屏;网络接口可选除无线接口中除WiFi外,蓝牙、探针等等。其中,传感器比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器;当然,移动终端还可配置陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
本领域技术人员可以理解,图1中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,该计算机软件产品存储在一个存储介质(存储介质:又叫计算机存储介质、计算机介质、可读介质、可读存储介质、计算机可读存储介质或者直接叫介质等,存储介质可以是非易失性可读存储介质,如RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及计算机程序。
在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的计算机程序,并执行本发明以下实施例提供的数据存储方法中的步骤。
基于上述硬件运行环境的终端描述,提出了本发明数据存储方法的第一实施例,本实施例中的数据存储方法应用于终端。
参照图2,在本发明数据存储方法的第一实施例中,所述数据存储方法包括:
步骤S10,终端获取待存储的文本数据,为所述文本数据分配键名。
在本实施例中,用户在终端上触发操作请求,其中,操作请求可以理解为用户通过浏览器(如Chrome谷歌浏览器、FireFox火狐浏览器)、运行混合应用程序(APP,Application即底层架构为原生应用程序,页面展示为应用超文本标记语言页面H5页面)的客户端Webview(网页、网络视图、网页视图)等触发的网页加载请求,在服务器接收到操作请求时,服务器获取操作请求中的页面标识,加载页面标识对应的前端页面数据信息,服务器将前端页面数据信息作为文本数据,服务器将加载得到文本数据返回至终端。
终端获取服务器反馈的文本数据,终端按照HTML5(即,应用超文本标记语言的第五版本)中定义的本地存储器localStorage特性,将文本数据缓存至本地存储器localStorage中,并为文本数据分配键名。
步骤S20,将所述键名按第一预设加密算法进行加密处理,得到密文键名。
终端中预先设置有对键名加密的第一预设加密算法,其中,第一预设加密算法包括但不限于DES算法、3DES算法、TDEA算法和MD5消息摘要算法,在终端确定文本数据的键名之后,终端按照第一预设加密算法对该键名进行加密。
本实施例中以MD5消息摘要算法对键名进行加密为例,说明键名加密过程,具体地,包括:
步骤a1,在所述键名后拼接偏移量字符串,得到符合预设条件的拼接键名;
步骤a2,将所述拼接键名按所述MD5消息摘要算法转换为预设位数的散列值,得到密文键名。
即,终端在键名加密过程中,终端在键名末尾拼接偏移量字符串,得到拼接键名,其中,偏移量字符串的位数和内容可基于实际情况进行设置;终端基于MD5消息摘要算法,将该拼接键名转换为128位的散列值,从而得到密文键名;
具体地,终端在键名的末尾填充一个1和无数个0,直到填充得到的第一键名的位长满足预设条件,然后,终端在第一键名的末尾附加预设位数的用于表示填充前的键名的位长,得到位长为512整数倍的第二键名,并对第二键名进行MD5运算,从而得到密文键名。其中,预设条件是指预先设置的拼接键名长度条件,预设条件为N*512+448,N为非负整数或0;预设位数为预先设置的散列值位数,预设位数为N*512+448+64=(N+1)*512。直到填充得到的第三键名的位长满足预设条件,然后在第三键名的末尾附加预设位数的用于表示填充前的键名的位长,得到位长为512整数倍的第四键名,并对第四键名进行MD5运算,从而得到密文键名。本实施例是通过在键名末尾拼接偏移量字符串,可以提高加密效果,提高键名的安全性。
在键名加密完成之后,终端判断获取的文本数据中是否包含敏感信息;即,终端中预设敏感信息集合,预设敏感信息集合中包含有不同类型的敏感信息;终端将文本数据中的信息进行分词处理,得到对应的词语集合,然后,终端将词语集合中的词语与预设敏感信息集合中的敏感信息进行比对,在词语集合中存在敏感信息时,确定文本数据中包含敏感信息,反之。
在终端确定文本数据中包含敏感信息之后,终端对文本数据进行加密处理,具体地,包括:
步骤S30,在所述文本数据中包含敏感信息时,将所述文本数据按第二预设加密算法进行加密处理,得到密文文本数据。
终端中预设对文本数据进行加密的预设第二加密算法,预设第二加密算法包括对称加密算法和非对称加密算法,对称加密算法包括但不限于DES算法、3DES算法、TDEA算法、Blowfish算法、RC5算法和IDEA算法,非对称加密算法包括但不限于SHA256算法、RSA算法、Elgamal算法、背包算法、Rabin算法、D-H算法、ECC算法(椭圆曲线加密算法)。在终端确定文本数据中包含敏感信息时,终端按照预设第二加密算法对文本数据进行加密,得到密文文本数据。
具体地,本实施例中以对称算法DES算法对文本数据进行加密为例,说明加密过程,DES算法的入口参数有三个:Key、Data和Mode,其中Key为7个字节共56位,是DES算法的工作密钥;Data为8个字节64位,是要被加密或被解密的数据;Mode为DES的工作方式,有两种:加密或解密,具体加密过程为将该文本数据按位重新组合,并将输出分为L0和R0两部分,每部分各长32位,然后将56位的工作密钥分成两部分,每部分28位,并基于加密轮数将两部分的工作密钥循环左移1位或2位,然后将32位输入的右半部分R0扩展为48位输出,生成与密钥相同长度的数据以进行异或运算,并将拆分后的密钥与扩展位数后的文本数据进行异或运算,得到运算结果,且将该运算结果送入S盒,进行替代运算,得到32位的替代运算结果(替代由8个不同的S盒完成,每个S盒有6位输入和4位输出,48位输入分为8个6位的分组,一个分组对应一个S盒,对应的S盒对各组进行代替操作),最后将该替代运算结果按照P盒进行置换,并将P盒置换的结果与最初的64位分组左半部分L0异或,然后左、右半部分交换,接着开始另一轮,直到最后一轮得到R16和L16,并将R16和L16作为输入,进行逆置换,从而得到密文文本数据。
在本实施例中由于数据加密需要消耗系统资源,为减少数据加密的系统资源消耗,在对文本数据进行加密之前,可以先判断是否需要对该文本数据进行加密,具体为判断该文本数据中是否存在敏感信息,如果文本数据中存在敏感信息,则对文本数据和对应的键名进行加密,如果该文本数据中不存在敏感信息,则不对该文本数据进行加密。其中,敏感信息包括但不限于客户姓名、证件号码(身份证号码)、出生年月日、联系地址、联系电话、电子邮箱、银行卡号、社交账号和客户联系人信息。
此外,需要补充说明的是,在步骤S20之后,还包括:
步骤b1,在所述文本数据中不包含敏感信息时,判断所述文本数据中是否包含预设标签;
步骤b2,在所述文本数据中包含预设标签时,将所述文本数据按第二预设加密算法进行加密处理,得到密文文本数据;
步骤b3,将所述密文键名与所述密文文本数据关联存储在所述终端的本地存储器。
即,终端确定文本数据中不包含敏感信息时,终端判断文本数据中是否包含预设标签;其中,预设标签是指预先设置的特征标签,在文本数据中包含预设标签时,将文本数据按第二预设加密算法进行加密处理,得到密文文本数据;将密文键名与密文文本数据关联存储在终端的本地存储器中,本实施例中将特殊页面设置预设标签,终端可以对该页面的文本数据进行加密,以防止出现仅根据文本数据的内容判断是否加密出现遗漏的情况。
步骤S40,将所述密文键名与所述密文文本数据关联存储在所述终端的本地存储器。
终端将加密完成的密文键名与密文文本数据关联存储在终端的本地存储器;本实施例中终端将键名进行加密形成密文键名,将文本数据进行加密形成密文文本数据,在本地存储器中数据读取的环节,获取到的是密文键名,需要对密文键名进行解密,才可以获取到对应的键名,然后,终端获取键名对应的密文文本数据,需要对密文文本数据进行解密才可以得到对应的文本数据,有效地降低了本地存储器中存储的文本数据被泄露、盗取的风险,提高了本地存储中数据的安全性。
进一步地,参照图3,在本发明第一实施例的基础上,提出了本发明数据存储方法的第二实施例。
本实施例是第一实施例中步骤S30的细化,具体地,所述数据存储方法包括:
步骤S31,在所述文本数据中包含敏感信息时,判断所述文本数据的字节数是否超过预设字节数。
在终端确定文本数据中包含敏感信息时,终端获取文本数据,计算文本数据对应的字节数,并判断文本数据的字节数是否超过预设字节数,其中,预设字节数可以根据应用场景灵活设置。在文本数据的字节数不超过预设字节数时,终端直接对文本数据进行全部的加密处理。
步骤S32,在所述文本数据的字节数超过预设字节数时,提取所述文本数据中的敏感信息,并建立所述敏感信息与其所占位置之间的映射关系表。
在终端确定文本数据的字节数超过预设字节数时,终端直接对整个文本数据进行加密,需要进行加密处理的数据量较大,此时,终端从文本数据中提取敏感信息,并确定该敏感信息在该文本数据中的占据位置,终端建立敏感信息与占据位置之间的映射关系表,然后将文本数据中的敏感信息删除,并标记敏感信息在该文本数据中的占据位置,得到脱敏文本数据。
步骤S33,将提取的所述敏感信息和所述映射关系表按第二预设加密算法进行加密处理,得到密文敏感信息。
终端将提取的敏感信息和所射关系表按第二预设加密算法进行加密处理,得到密文敏感信息,其中,第二预设加密算法与第一实施例中的相同,本实施例中不作赘述。
进一步地,在终端对文本数据中的敏感信息加密处理完成之后,终端需要进行关联存储,具体地,包括:
步骤S41,将不包含敏感信息的文本数据作为脱敏文本数据,将所述脱敏文本数据和所述密文敏感信息封装为数据包,并将所述数据包与所述密文键名关联存储在所述终端的本地存储器。
终端将不包含敏感信息的文本数据作为脱敏文本数据,终端将脱敏文本数据和密文敏感信息封装为数据包,并将数据包与密文键名关联存储在所述终端的本地存储器。
在本实施例中为了进一步地减少数据加密的系统资源消耗,在确定文本数据中存在敏感信息之后,终端计算该文本数据的字节数,并判断该字节数是否大于预设字节数,在字节数大于预设字节数,终端从文本数据中提取敏感信息,得到脱敏文本数据,并确定该敏感信息在该文本数据中的占据位置,且建立敏感信息与占据位置之间的映射关系表,然后终端通过第二预设算法对提取到的敏感信息和该映射关系表进行加密,得到密文敏感信息,且将该密文敏感信息和脱敏文本数据组合为一个数据包;在得到该数据包之后,终端将该密文键名与该数据包关联存储在本地。
进一步地,在本发明第二实施例的基础上,提出了本发明数据存储方法的第三实施例。
本实施例是第二实施例之后的步骤,本实施例中所述数据存储方法包括:
步骤S50,在接收到文本读取指令时,获取所述文本读取指令对应的身份验证信息和密文键名。
用户在终端上基于浏览器触发网页加载指令时,终端获取网页加载指令对应的页面标识,终端判断本地存储器中是否包含该页面标识对应的文本数据,在终端确定本地存储器中包含该页面标识对应的文本数据,终端接收到文本读取指令,终端获取文本读取指令对应的身份验证信息和密文键名,其中,身份验证信息是指预先设置的用户账户信息,或者用户生物特征信息等等,终端可以基于身份验证信息进行用户身份验证。
步骤S60,在所述身份验证信息验证通过时,获取所述密文键名对应的第一预设解密算法,并基于所述第一预设解密算法解密所述密文键名,得到键名。
在终端确定身份验证信息验证通过时,终端获取密文键名,及密文键名对应的第一预设加密算法,终端获取该第一预设加密算法对应的第一预设解密算法,并通过第一预设解密算法解密该密文键名,得到键名。
步骤S70,获取所述键名对应的数据包,从所述数据包中提取密文敏感信息和脱敏文本数据;获取所述密文敏感信息对应的第二预设解密算法,按所述第二预设解密算法解密所述密文敏感信息,得到敏感信息和敏感映射关系表。
终端获取本地存储器中键名对应的数据包,并从数据包中提取密文敏感信息和脱敏文本数据;然后,终端获取密文敏感信息,及密文敏感信息对应的第二预设加密算法,终端获取第二预设加密算法对应的第二预设解密算法,并按第二预设解密算法解密密文敏感信息,得到密文敏感信息中包含的敏感信息和敏感映射关系表。
步骤S80,将所述敏感信息按所述映射关系表填充到所述脱敏文本数据中,得到所述读取指令对应的文本数据。
终端将敏感信息按映射关系表填充到脱敏文本数据中,得到读取指令对应的文本数据。在本实施例中终端将解密后的脱敏文本数据和敏感信息进行合并,方便了文本数据的查看。
进一步地,在本发明上述实施例的基础上,提出了本发明数据存储方法的第四实施例。
本实施例是第一实施例中步骤S30之后的步骤,所述数据存储方法包括:
步骤S90,当检测到所述本地存储器的可用存储容量低于预设存储阈值时,获取所述本地存储器中各文本数据的属性。
终端实时地监测本地存储器中的可用存储空间,在终端当检测到本地存储器的可用存储容量低于预设存储阈值时,其中,预设存储阈值是指预先设置的存储阈值,例如,预设存储阈值设置为10M,终端获取本地存储器中各文本数据的属性,其中,属性包括但不仅限于创建时间、访问时间、修改时间和所占空间。
步骤S100,按各文本数据的创建时间、访问时间和修改时间,确定待删除的目标文本数据,并删除所述本地存储器中的所述目标文本数据。
终端按各文本数据的创建时间、访问时间和修改时间,确定待删除的目标文本数据,即,终端将创建时间最先、访问时间最先、修改时间最先或者占用空间最大的文本数据作为目标文本数据,并删除本地存储器中的所述目标文本数据。本实施例中通过删除本地存储空间的目标文本数据,进行本地存储空间中文本数据的更新。
此外,参照图4,本发明实施例还提出一种数据存储装置,所述数据存储装置包括:
获取分配模块10,用于获取待存储的文本数据,为所述文本数据分配键名;
键名加密模块20,用于将所述键名按第一预设加密算法进行加密处理,得到密文键名;
文本加密模块30,用于在所述文本数据中包含敏感信息时,将所述文本数据按第二预设加密算法进行加密处理,得到密文文本数据;
关联存储模块40,用于将所述密文键名与所述密文文本数据关联存储在所述终端的本地存储器。
可选地,所述第一预设加密算法包括MD5消息摘要算法;所述键名加密模块20,包括:
键名添加单元,用于在所述键名后拼接偏移量字符串,得到符合预设条件的拼接键名;
第一加密单元,用于将所述拼接键名按所述MD5消息摘要算法转换为预设位数的散列值,得到密文键名。
可选地,所述文本加密模块30,包括:
字节判断单元,用于在所述文本数据中包含敏感信息时,判断所述文本数据的字节数是否超过预设字节数;
提取映射单元,用于在所述文本数据的字节数超过预设字节数时,提取所述文本数据中的敏感信息,并建立所述敏感信息与其所占位置之间的映射关系表;
第二加密单元,用于将提取的所述敏感信息和所述映射关系表按第二预设加密算法进行加密处理,得到密文敏感信息;
所述关联存储模块40,用于将不包含敏感信息的文本数据作为脱敏文本数据,将所述脱敏文本数据和所述密文敏感信息封装为数据包,并将所述数据包与所述密文键名关联存储在所述终端的本地存储器。
可选地,所述的数据存储装置,包括:
指令接收模块,用于在接收到文本读取指令时,获取所述文本读取指令对应的身份验证信息和密文键名;
第一解密模块,用于在所述身份验证信息验证通过时,获取所述密文键名对应的第一预设解密算法,并基于所述第一预设解密算法解密所述密文键名,得到键名;
信息提取模块,用于获取所述键名对应的数据包,从所述数据包中提取密文敏感信息和脱敏文本数据;
第二解密模块,用于获取所述密文敏感信息对应的第二预设解密算法,按所述第二预设解密算法解密所述密文敏感信息,得到敏感信息和敏感映射关系表;
信息填充模块,用于将所述敏感信息按所述映射关系表填充到所述脱敏文本数据中,得到所述读取指令对应的文本数据。
可选地,所述的数据存储装置,包括:
信息接收模块,用于接收基于所述文本数据输入的编辑信息,将所述文本数据,及所述文本数据对应的编辑信息作为新的文本数据;
更新保存模块,用于将新的文本数据保存到在所述终端的本地存储器。
可选地,所述的数据存储装置,包括:
标签判断模块,用于在所述文本数据中不包含敏感信息时,判断所述文本数据中是否包含预设标签;
第二加密模块,用于在所述文本数据中包含预设标签时,将所述文本数据按第二预设加密算法进行加密处理,得到密文文本数据;
关联存储模块,用于将所述密文键名与所述密文文本数据关联存储在所述终端的本地存储器。
可选地,所述的数据存储装置,包括:
检测获取模块,用于当检测到所述本地存储器的可用存储容量低于预设存储阈值时,获取所述本地存储器中各文本数据的属性,其中,所述属性包括创建时间、访问时间和修改时间;
确定删除模块,用于按各文本数据的创建时间、访问时间和修改时间,确定待删除的目标文本数据,并删除所述本地存储器中的所述目标文本数据。
其中,数据存储装置的各个功能模块实现的步骤可参照本发明数据存储方法的各个实施例,此处不再赘述。
此外,本发明实施例还提出一种计算机存储介质。
所述计算机存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述实施例提供的数据存储方法中的操作。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体/操作/对象与另一个实体/操作/对象区分开来,而不一定要求或者暗示这些实体/操作/对象之间存在任何这种实际的关系或者顺序;术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的。可以根据实际的需要选择中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (7)
1.一种数据存储方法,其特征在于,所述数据存储方法包括以下步骤:
终端获取待存储的文本数据,为所述文本数据分配键名;
将所述键名按第一预设加密算法进行加密处理,得到密文键名;
在所述文本数据中包含敏感信息时,将所述文本数据按第二预设加密算法进行加密处理,得到密文文本数据;
将所述密文键名与所述密文文本数据关联存储在所述终端的本地存储器;
所述第一预设加密算法包括MD5消息摘要算法;
所述将所述键名按第一预设加密算法进行加密处理,得到密文键名的步骤,包括:
在所述键名后拼接偏移量字符串,得到符合预设条件的拼接键名;
将所述拼接键名按所述MD5消息摘要算法转换为预设位数的散列值,得到密文键名;
所述在所述文本数据中包含敏感信息时,将所述文本数据按第二预设加密算法进行加密处理,得到密文文本数据的步骤,包括:
在所述文本数据中包含敏感信息时,判断所述文本数据的字节数是否超过预设字节数;
在所述文本数据的字节数超过预设字节数时,提取所述文本数据中的敏感信息,并建立所述敏感信息与其所占位置之间的映射关系表;
将提取的所述敏感信息和所述映射关系表按第二预设加密算法进行加密处理,得到密文敏感信息;
所述将所述密文键名与所述密文文本数据关联存储在所述终端的本地存储器的步骤,包括:
将不包含敏感信息的文本数据作为脱敏文本数据,将所述脱敏文本数据和所述密文敏感信息封装为数据包,并将所述数据包与所述密文键名关联存储在所述终端的本地存储器;
所述将所述密文键名与所述密文文本数据关联存储在所述终端的本地存储器的步骤之后,包括:
在接收到文本读取指令时,获取所述文本读取指令对应的身份验证信息和密文键名;
在所述身份验证信息验证通过时,获取所述密文键名对应的第一预设解密算法,并基于所述第一预设解密算法解密所述密文键名,得到键名;
获取所述键名对应的数据包,从所述数据包中提取密文敏感信息和脱敏文本数据;
获取所述密文敏感信息对应的第二预设解密算法,按所述第二预设解密算法解密所述密文敏感信息,得到敏感信息和所述映射关系表;
将所述敏感信息按所述映射关系表填充到所述脱敏文本数据中,得到所述读取指令对应的文本数据。
2.如权利要求1所述的数据存储方法,其特征在于,所述将所述敏感信息按所述映射关系表填充到所述脱敏文本数据中,得到所述读取指令对应的文本数据的步骤之后,包括:
接收基于所述文本数据输入的编辑信息,将所述文本数据,及所述文本数据对应的编辑信息作为新的文本数据;
将新的文本数据保存到所述终端的本地存储器。
3.如权利要求1所述的数据存储方法,其特征在于,所述将所述键名按第一预设加密算法进行加密处理,得到密文键名的步骤之后,包括:
在所述文本数据中不包含敏感信息时,判断所述文本数据中是否包含预设标签;
在所述文本数据中包含预设标签时,将所述文本数据按第二预设加密算法进行加密处理,得到密文文本数据;
将所述密文键名与所述密文文本数据关联存储在所述终端的本地存储器。
4.如权利要求1至3任意一项所述的数据存储方法,其特征在于,所述将所述密文键名与所述密文文本数据关联存储在所述终端的本地存储器的步骤之后,包括:
当检测到所述本地存储器的可用存储容量低于预设存储阈值时,获取所述本地存储器中各文本数据的属性,其中,所述属性包括创建时间、访问时间和修改时间;
按各文本数据的创建时间、访问时间和修改时间,确定待删除的目标文本数据,并删除所述本地存储器中的所述目标文本数据。
5.一种数据存储装置,其特征在于,所述数据存储装置包括:
获取分配模块,用于获取待存储的文本数据,为所述文本数据分配键名;
键名加密模块,用于将所述键名按第一预设加密算法进行加密处理,得到密文键名;
文本加密模块,用于在所述文本数据中包含敏感信息时,将所述文本数据按第二预设加密算法进行加密处理,得到密文文本数据;
关联存储模块,用于将所述密文键名与所述密文文本数据关联存储在终端的本地存储器;
所述第一预设加密算法包括MD5消息摘要算法;所述键名加密模块,包括:
键名添加单元,用于在所述键名后拼接偏移量字符串,得到符合预设条件的拼接键名;
第一加密单元,用于将所述拼接键名按所述MD5消息摘要算法转换为预设位数的散列值,得到密文键名;
所述文本加密模块,包括:
字节判断单元,用于在所述文本数据中包含敏感信息时,判断所述文本数据的字节数是否超过预设字节数;
提取映射单元,用于在所述文本数据的字节数超过预设字节数时,提取所述文本数据中的敏感信息,并建立所述敏感信息与其所占位置之间的映射关系表;
第二加密单元,用于将提取的所述敏感信息和所述映射关系表按第二预设加密算法进行加密处理,得到密文敏感信息;
所述关联存储模块,用于将不包含敏感信息的文本数据作为脱敏文本数据,将所述脱敏文本数据和所述密文敏感信息封装为数据包,并将所述数据包与所述密文键名关联存储在所述终端的本地存储器;
所述的数据存储装置,包括:
指令接收模块,用于在接收到文本读取指令时,获取所述文本读取指令对应的身份验证信息和密文键名;
第一解密模块,用于在所述身份验证信息验证通过时,获取所述密文键名对应的第一预设解密算法,并基于所述第一预设解密算法解密所述密文键名,得到键名;
信息提取模块,用于获取所述键名对应的数据包,从所述数据包中提取密文敏感信息和脱敏文本数据;
第二解密模块,用于获取所述密文敏感信息对应的第二预设解密算法,按所述第二预设解密算法解密所述密文敏感信息,得到敏感信息和所述映射关系表;
信息填充模块,用于将所述敏感信息按所述映射关系表填充到所述脱敏文本数据中,得到所述读取指令对应的文本数据。
6.一种数据存储设备,其特征在于,所述数据存储设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其中:
所述计算机程序被所述处理器执行时实现如权利要求1至4中任一项所述的数据存储方法的步骤。
7.一种计算机存储介质,其特征在于,所述计算机存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4中任一项所述的数据存储方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910761802.7A CN110502602B (zh) | 2019-08-14 | 2019-08-14 | 数据存储方法、装置、设备和计算机存储介质 |
PCT/CN2019/117198 WO2021027134A1 (zh) | 2019-08-14 | 2019-11-11 | 数据存储方法、装置、设备和计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910761802.7A CN110502602B (zh) | 2019-08-14 | 2019-08-14 | 数据存储方法、装置、设备和计算机存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110502602A CN110502602A (zh) | 2019-11-26 |
CN110502602B true CN110502602B (zh) | 2023-10-17 |
Family
ID=68588220
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910761802.7A Active CN110502602B (zh) | 2019-08-14 | 2019-08-14 | 数据存储方法、装置、设备和计算机存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110502602B (zh) |
WO (1) | WO2021027134A1 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111814166B (zh) * | 2020-07-10 | 2023-09-12 | 上海淇毓信息科技有限公司 | 一种数据加密方法、装置和电子设备 |
CN111859435B (zh) * | 2020-07-29 | 2023-06-23 | 北京千丁互联科技有限公司 | 一种数据安全处理方法及装置 |
CN112084523A (zh) * | 2020-09-29 | 2020-12-15 | 深圳壹账通智能科技有限公司 | 文本加密方法及装置、终端设备、存储介质 |
CN113742340B (zh) * | 2021-08-17 | 2024-06-04 | 深圳Tcl新技术有限公司 | 一种数据库表处理方法及相关设备 |
CN113971257A (zh) * | 2021-10-28 | 2022-01-25 | 中国银行股份有限公司 | 混合应用的功能菜单访问方法及装置 |
CN115048682B (zh) * | 2022-08-15 | 2022-11-01 | 河北省农林科学院农业信息与经济研究所 | 一种土地流转信息的安全存储方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014126577A (ja) * | 2012-12-25 | 2014-07-07 | Hitachi Ltd | データベースシステム及びその更新方法 |
CN106295403A (zh) * | 2016-10-11 | 2017-01-04 | 北京集奥聚合科技有限公司 | 一种基于hbase的数据安全处理方法及系统 |
CN106997439A (zh) * | 2017-04-01 | 2017-08-01 | 北京元心科技有限公司 | 基于TrustZone的数据加解密方法、装置及终端设备 |
CN109598137A (zh) * | 2017-09-30 | 2019-04-09 | 广东亿迅科技有限公司 | 一种用于安全处理数据的方法及其系统 |
CN109711178A (zh) * | 2018-12-18 | 2019-05-03 | 北京城市网邻信息技术有限公司 | 一种键值对的存储方法、装置、设备及存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9602280B2 (en) * | 2013-03-13 | 2017-03-21 | Futurewei Technologies, Inc. | System and method for content encryption in a key/value store |
US9853956B2 (en) * | 2014-02-11 | 2017-12-26 | Texas Instruments Incorporated | JSON encryption and hashing with indication added to key-value |
CN105468990A (zh) * | 2014-09-04 | 2016-04-06 | 中国移动通信集团安徽有限公司 | 一种敏感信息的管理控制方法和装置 |
WO2016063344A1 (ja) * | 2014-10-21 | 2016-04-28 | 三菱電機株式会社 | サーバ装置及び検索システム及び端末装置及び検索方法及びサーバプログラム及び端末プログラム |
CN108629196B (zh) * | 2017-03-21 | 2021-04-30 | 北京京东尚科信息技术有限公司 | 数据存储和查询的方法、装置、电子设备和可读存储介质 |
-
2019
- 2019-08-14 CN CN201910761802.7A patent/CN110502602B/zh active Active
- 2019-11-11 WO PCT/CN2019/117198 patent/WO2021027134A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014126577A (ja) * | 2012-12-25 | 2014-07-07 | Hitachi Ltd | データベースシステム及びその更新方法 |
CN106295403A (zh) * | 2016-10-11 | 2017-01-04 | 北京集奥聚合科技有限公司 | 一种基于hbase的数据安全处理方法及系统 |
CN106997439A (zh) * | 2017-04-01 | 2017-08-01 | 北京元心科技有限公司 | 基于TrustZone的数据加解密方法、装置及终端设备 |
CN109598137A (zh) * | 2017-09-30 | 2019-04-09 | 广东亿迅科技有限公司 | 一种用于安全处理数据的方法及其系统 |
CN109711178A (zh) * | 2018-12-18 | 2019-05-03 | 北京城市网邻信息技术有限公司 | 一种键值对的存储方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2021027134A1 (zh) | 2021-02-18 |
CN110502602A (zh) | 2019-11-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110502602B (zh) | 数据存储方法、装置、设备和计算机存储介质 | |
US10969971B2 (en) | Data storage method and apparatus | |
CN105993010B (zh) | 用以提供扩展对象符号数据的方法及设备 | |
WO2020233373A1 (zh) | 一种应用程序的配置文件管理方法及装置 | |
CN111835511A (zh) | 数据安全传输方法、装置、计算机设备及存储介质 | |
CN112287372B (zh) | 用于保护剪贴板隐私的方法和装置 | |
CN105824909A (zh) | 页面生成方法和装置 | |
CN105468990A (zh) | 一种敏感信息的管理控制方法和装置 | |
CN109995876B (zh) | 文件传输方法、装置、系统和计算机存储介质 | |
CN111241559A (zh) | 训练模型保护方法、装置、系统、设备和计算机存储介质 | |
CN112241298A (zh) | 页面显示方法及装置、存储介质、电子装置 | |
CN114500093B (zh) | 报文信息的安全交互方法及系统 | |
US11138287B1 (en) | System for reducing size of transmitted content | |
CN109886047B (zh) | 文件加密处理方法和装置 | |
CN103401931B (zh) | 一种下载文件的方法和系统 | |
CN106130951B (zh) | 一种应用商店服务管理方法和装置 | |
CN108460116B (zh) | 搜索方法、装置、计算机设备、存储介质及搜索系统 | |
CN116235174A (zh) | 用于执行加密算法的设备和方法 | |
US20190129907A1 (en) | Data transfer system, data transfer apparatus, data transfer method, and computer-readable recording medium | |
CN108985109B (zh) | 一种数据存储方法及装置 | |
CN115098464A (zh) | 数据的脱敏方法、装置、电子设备和计算机可读存储介质 | |
CN105975860B (zh) | 一种信任文件管理方法、装置及设备 | |
CN108008984A (zh) | 一种资源文件下载更新方法及装置 | |
CN108875403B (zh) | 一种文件管理方法及装置 | |
CN113326462A (zh) | H5页面的水印添加方法、服务器、计算机设备及存储介质 |
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 |