CN115883126A - 数据处理方法、装置、计算机设备和存储介质 - Google Patents
数据处理方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN115883126A CN115883126A CN202211206601.9A CN202211206601A CN115883126A CN 115883126 A CN115883126 A CN 115883126A CN 202211206601 A CN202211206601 A CN 202211206601A CN 115883126 A CN115883126 A CN 115883126A
- Authority
- CN
- China
- Prior art keywords
- data
- encrypted
- key
- storage
- file
- 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.)
- Pending
Links
- 238000012545 processing Methods 0.000 title claims abstract description 26
- 238000003672 processing method Methods 0.000 title abstract description 25
- 238000000034 method Methods 0.000 claims abstract description 45
- 238000004590 computer program Methods 0.000 claims description 23
- 238000001514 detection method Methods 0.000 claims description 20
- 238000010586 diagram Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 5
- 230000007480 spreading Effects 0.000 description 3
- 238000013478 data encryption standard Methods 0.000 description 2
- 239000006185 dispersion Substances 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Landscapes
- Storage Device Security (AREA)
Abstract
本申请涉及一种数据处理方法、装置、计算机设备和存储介质。所述方法包括:接收加密应用发送的加密相关信息,加密相关信息包括待加密数据和加密应用的应用标识号;根据应用标识号和第一密钥,生成第二密钥,第一密钥为根据存储设备的设备标识号生成的密钥,存储设备用于存储加密数据;采用第二密钥对待加密数据进行加密处理,得到加密数据。采用本方法能够提高数据加密的安全性。
Description
技术领域
本申请涉及数据处理领域,特别是涉及一种数据处理方法、装置、计算机设备和存储介质。
背景技术
随着智能网联汽车的发展,汽车和路测设备均有存储大量数据的需求,由于直接存储明文数据安全性较差,因此数据大多都在经过加密后,才存储于汽车和路测设备中。
相关技术中,不同的设备往往使用统一的密钥对数据进行加密。然而一旦密钥泄露,便会导致所有使用该密钥进行加密的设备中存储的密文数据均不再安全,存在数据加密的安全性较差的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种数据处理方法、装置、计算机设备和存储介质。
第一方面,本申请提供了一种数据处理方法。所述方法包括:
接收加密应用发送的加密相关信息,所述加密相关信息包括待加密数据和所述加密应用的应用标识号;
根据所述应用标识号和第一密钥,生成第二密钥,所述第一密钥为根据存储设备的设备标识号生成的密钥,所述存储设备用于存储加密数据;
采用所述第二密钥对所述待加密数据进行加密处理,得到所述加密数据。
在其中一个实施例中,所述根据所述应用标识号和第一密钥,生成第二密钥,包括:
根据所述应用标识号,生成第三密钥;
获取所述存储设备的安全芯片检测结果;
在所述安全芯片检测结果表征所述存储设备具有安全芯片的情况下,将所述第三密钥发送至所述安全芯片,以使得所述安全芯片能够根据所述第三密钥和所述第一密钥,生成第二密钥;或者,
在所述安全芯片检测结果表征所述存储设备不具有所述安全芯片的情况下,从所述存储设备的存储区域中读取加密后的第一密钥;
对所述加密后的第一密钥进行解密处理,得到所述第一密钥;
根据所述第三密钥和所述第一密钥,生成第二密钥。
在其中一个实施例中,所述加密相关信息中包括存储文件的存储标识,所述存储文件用于存储所述加密数据,所述方法还包括:
根据所述存储标识,从所述存储设备中匹配所述存储文件,得到第一文件匹配结果;
在所述第一文件匹配结果表征所述存储设备中不存在所述存储文件时,根据所述存储标识,在所述存储设备中创建所述存储文件;或者,
在所述第一文件匹配结果表征所述存储设备中存在所述存储文件时,匹配所述存储文件和所述加密应用,得到第二文件匹配结果;
根据所述第二文件匹配结果,对所述加密数据进行存储。
在其中一个实施例中,所述根据所述第二文件匹配结果,对所述加密数据进行存储,包括:
在所述第二文件匹配结果表征所述存储文件与所述加密应用不匹配的情况下,丢弃所述加密数据;
向所述加密应用返回反馈信息,所述反馈信息用于表征所述存储文件无法被写入。
在其中一个实施例中,所述加密相关信息中包括待加密数据偏移量和待加密数据长度,所述待加密数据偏移量用于指示所述待加密数据在所述存储文件中的存储起始位置,所述根据所述第二文件匹配结果,对所述加密数据进行存储,包括:
在所述第二文件匹配结果表征所述存储文件与所述加密应用相匹配的情况下,确定所述存储文件中已存储的字节数;
在所述待加密数据偏移量大于所述存储文件中已存储的字节数的情况下,根据所述待加密数据长度,将所述加密数据存储于所述存储文件中已存储的字节之后。
在其中一个实施例中,所述采用所述第二密钥对所述待加密数据进行加密处理,得到所述加密数据,包括:
在所述待加密数据偏移量小于或者等于所述存储文件中已存储的字节数的情况下,根据所述待加密数据偏移量和所述待加密数据长度,从所述存储文件中确定待解密数据;
对所述待解密数据进行解密处理,得到解密数据,并根据所述待加密数据偏移量和所述待加密数据长度,从所述解密数据中确定待替换数据;
将所述待替换数据从所述解密数据中删除,得到目标解密数据;
根据所述待加密数据偏移量和所述待加密数据长度,将所述待加密数据加入所述目标解密数据中,得到目标加密数据;
根据所述第二密钥对所述目标加密数据进行加密处理,得到所述加密数据;
所述对所述加密数据进行存储,包括:
根据所述待解密数据在所述存储文件中的存储起始位置,将所述加密数据写入所述存储文件。
在其中一个实施例中,所述对所述加密数据进行存储,包括:
在所述加密数据偏移量小于或者等于所述存储文件中已存储的字节数的情况下,根据所述待加密数据偏移量和所述待加密数据长度,从所述存储文件中确定待替换数据;
将所述待替换数据从所述存储文件中删除,并根据所述待加密数据偏移量和所述待加密数据长度,将所述加密数据写入所述存储文件。
第二方面,本申请还提供了一种数据处理方法。所述方法包括:
接收解密应用发送的解密相关信息,所述解密相关信息包括加密数据的存储文件的存储标识和所述解密应用的应用标识号;
根据所述应用标识号和第一密钥,生成第二密钥,所述第一密钥为根据存储设备的设备标识号生成的密钥,所述存储设备用于存储加密数据;
根据所述加密数据的存储文件的存储标识,获取所述加密数据,并采用所述第二密钥对所述加密数据进行解密处理,得到所述加密数据对应的解密数据。
第三方面,本申请还提供了一种数据处理装置。所述装置包括:
接收模块,用于接收加密应用发送的加密相关信息,所述加密相关信息包括待加密数据和所述加密应用的应用标识号;
生成模块,用于根据所述应用标识号和第一密钥,生成第二密钥,所述第一密钥为根据存储设备的设备标识号生成的密钥,所述存储设备用于存储加密数据;
加密模块,用于采用所述第二密钥对所述待加密数据进行加密处理,得到所述加密数据。
在其中一个实施例中,所述生成模块,还用于:
根据所述应用标识号,生成第三密钥;
获取所述存储设备的安全芯片检测结果;
在所述安全芯片检测结果表征所述存储设备具有安全芯片的情况下,将所述第三密钥发送至所述安全芯片,以使得所述安全芯片能够根据所述第三密钥和所述第一密钥,生成第二密钥;或者,
在所述安全芯片检测结果表征所述存储设备不具有所述安全芯片的情况下,从所述存储设备的存储区域中读取加密后的第一密钥;
对所述加密后的第一密钥进行解密处理,得到所述第一密钥;
根据所述第三密钥和所述第一密钥,生成第二密钥。
在其中一个实施例中,所述加密相关信息中包括存储文件的存储标识,所述存储文件用于存储所述加密数据,所述装置还包括:
第一匹配模块,用于根据所述存储标识,从所述存储设备中匹配所述存储文件,得到第一文件匹配结果;
创建模块,用于在所述第一文件匹配结果表征所述存储设备中不存在所述存储文件时,根据所述存储标识,在所述存储设备中创建所述存储文件;或者,
第二匹配模块,用于在所述第一文件匹配结果表征所述存储设备中存在所述存储文件时,匹配所述存储文件和所述加密应用,得到第二文件匹配结果;
存储模块,用于根据所述第二文件匹配结果,对所述加密数据进行存储。
在其中一个实施例中,所述存储模块,还用于:
在所述第二文件匹配结果表征所述存储文件与所述加密应用不匹配的情况下,丢弃所述加密数据;
向所述加密应用返回反馈信息,所述反馈信息用于表征所述存储文件无法被写入。
在其中一个实施例中,所述加密相关信息中包括待加密数据偏移量和待加密数据长度,所述待加密数据偏移量用于指示所述待加密数据在所述存储文件中的存储起始位置,所述存储模块,还用于:
在所述第二文件匹配结果表征所述存储文件与所述加密应用相匹配的情况下,确定所述存储文件中已存储的字节数;
在所述待加密数据偏移量大于所述存储文件中已存储的字节数的情况下,根据所述待加密数据长度,将所述加密数据存储于所述存储文件中已存储的字节之后。
在其中一个实施例中,所述加密模块,还用于:
在所述待加密数据偏移量小于或者等于所述存储文件中已存储的字节数的情况下,根据所述待加密数据偏移量和所述待加密数据长度,从所述存储文件中确定待解密数据;
对所述待解密数据进行解密处理,得到解密数据,并根据所述待加密数据偏移量和所述待加密数据长度,从所述解密数据中确定待替换数据;
将所述待替换数据从所述解密数据中删除,得到目标解密数据;
根据所述待加密数据偏移量和所述待加密数据长度,将所述待加密数据加入所述目标解密数据中,得到目标加密数据;
根据所述第二密钥对所述目标加密数据进行加密处理,得到所述加密数据;
所述存储模块,还用于:
根据所述待解密数据在所述存储文件中的存储起始位置,将所述加密数据写入所述存储文件。
在其中一个实施例中,所述存储模块,还用于:
在所述加密数据偏移量小于或者等于所述存储文件中已存储的字节数的情况下,根据所述待加密数据偏移量和所述待加密数据长度,从所述存储文件中确定待替换数据;
将所述待替换数据从所述存储文件中删除,并根据所述待加密数据偏移量和所述待加密数据长度,将所述加密数据写入所述存储文件。
第四方面,本申请还提供了一种数据处理装置。所述装置包括:
接收模块,用于接收解密应用发送的解密相关信息,所述解密相关信息包括加密数据的存储文件的存储标识和所述解密应用的应用标识号;
生成模块,用于根据所述应用标识号和第一密钥,生成第二密钥,所述第一密钥为根据存储设备的设备标识号生成的密钥,所述存储设备用于存储加密数据;
解密模块,用于根据所述加密数据的存储文件的存储标识,获取所述加密数据,并采用所述第二密钥对所述加密数据进行解密处理,得到所述加密数据对应的解密数据。
第五方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以上任一项方法。
第六方面,本申请还提供了一种计算机可读存储介质所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以上任一项方法。
第七方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以上任一项方法。
上述数据处理方法、装置、计算机设备和存储介质,可以通过根据存储设备的设备标识号生成的第一密钥,及加密应用的应用标识号生成第二密钥,进而采用第二密钥对待加密数据进行加密处理,得到加密数据。由于不同的存储设备的设备标识号不同,不同的加密应用的应用标识号也不同,故而对于不同的存储设备和加密应用的组合,生成的第二密钥也相应不同,因此即便第二密钥泄露,通过该第二密钥也只能解密由该第二密钥对应的加密应用存储于该第二密钥对应的存储设备上的数据,而无法解密由其他加密应用存储于该存储设备上,或由该加密应用存储于其他存储设备上的加密数据,因此可以提高数据加密的安全性。
附图说明
图1为一个实施例中数据处理方法的流程示意图;
图2为一个实施例中步骤104的流程示意图;
图3为一个实施例中数据处理方法的流程示意图;
图4为一个实施例中步骤308的流程示意图;
图5为一个实施例中步骤308的流程示意图;
图6为一个实施例中步骤108的流程示意图;
图7为一个实施例中分组加密算法的示意图;
图8为一个实施例中步骤308的流程示意图;
图9为一个实施例中数据处理方法的流程示意图;
图10为一个实施例中数据处理装置的结构框图;
图11为一个实施例中数据处理装置的结构框图;
图12为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在一个实施例中,如图1所示,提供了一种数据处理方法,本实施例以该方法应用于终端进行举例说明,可以理解的是,该方法也可以应用于服务器,还可以应用于包括终端和服务器的系统,并通过终端和服务器的交互实现。本实施例中,该方法包括以下步骤:
步骤102,接收加密应用发送的加密相关信息,加密相关信息包括待加密数据和加密应用的应用标识号。
本申请实施例中,加密应用为需要将待加密数据加密存储于存储设备中的应用。加密应用的应用标识号用于区分不同的加密应用,每一加密应用均拥有其唯一的应用标识号,本申请实施例不对应用标识号做具体限定,凡是可以唯一标识加密应用的标识信息均适用于本申请实施例中,例如:应用的ID等信息。加密应用可以通过调用终端对应的接口,将待加密数据和加密应用的应用标识号发送至终端。终端进而可以根据加密应用的应用标识号生成加密密钥,对待加密数据进行加密处理,并将得到的加密数据存储于存储设备中。
步骤104,根据应用标识号和第一密钥,生成第二密钥,第一密钥为根据存储设备的设备标识号生成的密钥,存储设备用于存储加密数据。
本申请实施例中,可以根据应用标识号和第一密钥生成第二密钥,以使得每一加密应用和存储设备的组合均拥有其唯一的第二密钥。第一密钥为预先生成并存储于存储设备中的密钥。示例性的,可以由独立于存储设备的密钥管理系统预先读取存储设备的设备标识号,并根据存储设备的设备标识号生成第一密钥,进而将第一密钥存储于存储设备中。存储设备的设备标识号用于区分不同的存储设备,每一存储设备均拥有其唯一的设备标识号。示例性的,设备标识号可以为存储设备的唯一序列号、存储设备的网卡的物理地址等。
示例性的,可以根据设备标识号生成密钥分散因子,进而根据固定的根密钥和密钥分散因子生成第一密钥。举例来说,可以首先通过单向散列算法,根据设备标识号生成固定长度的字节序列,并取序列中固定长度的字节作为密钥分散因子,进而通过密钥分散算法,根据根密钥和密钥分散因子生成第一密钥。
需要说明的是,以上仅为一种示例,实际上本申请实施例对于根据存储设备的设备标识号生成第一密钥的方式不作具体限定,任一可以根据存储设备的设备标识号生成第一密钥的方法均适用于本申请实施例中。
在获得第一密钥后,可以根据应用标识号和第一密钥生成第二密钥。本申请实施例对于根据应用标识号和第一密钥生成第二密钥的方式不作具体限定,任一可以根据应用标识号和第一密钥生成第二密钥的方式均适用于本申请实施例中。
步骤106,采用第二密钥对待加密数据进行加密处理,得到加密数据。
本申请实施例中,可以采用第二密钥对待加密数据进行加密处理,以得到加密数据。本申请实施例对于加密处理的方式不作具体限定,任一可以根据第二密钥对待加密数据进行加密处理,得到加密数据的方法均适用于本申请实施例中,例如:AES(AdvancedEncryption Standard,高级加密标准)加密算法、DES(Data Encryption Standard,数据加密标准)加密算法等。
需要说明的是,在对待加密数据进行加密处理时,若采用的是分组加密算法,则可以根据待加密数据对应的加密分组数量,在存储设备中申请相应大小的内存空间,以在存储设备中对待加密数据进行加密处理。例如,若待加密数据对应2个加密分组,每个加密分组的长度为16字节,则应当在存储设备中申请32字节的内存空间,以对待加密数据进行加密处理。
本申请实施例提供的数据处理方法,可以通过根据存储设备的设备标识号生成的第一密钥,及加密应用的应用标识号生成第二密钥,进而采用第二密钥对待加密数据进行加密处理,得到加密数据。由于不同的存储设备的设备标识号不同,不同的加密应用的应用标识号也不同,故而对于不同的存储设备和加密应用的组合,生成的第二密钥也相应不同,因此即便第二密钥泄露,通过该第二密钥也只能解密由该第二密钥对应的加密应用存储于该第二密钥对应的存储设备上的数据,而无法解密由其他加密应用存储于该存储设备上,或由该加密应用存储于其他存储设备上的加密数据,因此可以提高数据加密的安全性。
在一个实施例中,如图2所示,步骤104中,根据应用标识号和第一密钥,生成第二密钥,包括:
步骤202,根据应用标识号,生成第三密钥;
步骤204,获取存储设备的安全芯片检测结果。
步骤206,在安全芯片检测结果表征存储设备具有安全芯片的情况下,将第三密钥发送至安全芯片,以使得安全芯片能够根据第三密钥和第一密钥,生成第二密钥。或者,
步骤208,在安全芯片检测结果表征存储设备不具有安全芯片的情况下,从存储设备的存储区域中读取加密后的第一密钥。
步骤210,对加密后的第一密钥进行解密处理,得到第一密钥。
步骤212,根据第三密钥和第一密钥,生成第二密钥。
本申请实施例中,可以根据应用标识号生成第三密钥,进而根据第三密钥和第一密钥,生成第二密钥。示例性的,可以通过单向散列算法,根据应用标识号生成固定长度的字节序列,并取序列中固定长度的字节作为第三密钥,进而将第三密钥和第一密钥拼接为字节序列,进一步通过单向散列算法,生成长度符合加密算法需求的第二密钥。
根据存储设备是否具有安全芯片,第一密钥的存储位置也相应不同。当存储设备具有安全芯片时,密钥管理系统将在生成第一密钥后,将第一密钥存储于安全芯片中。当存储设备不具有安全芯片时,密钥管理系统将在生成第一密钥后,使用密钥加密密钥对第一密钥进行加密处理,并将加密后的第一密钥存储于存储设备的存储区域中。其中,存储区域可以为存储设备的数据库、存储区域中的某个文件等,本申请实施例对此不作具体限定。
因此,根据存储设备是否具有安全芯片,加密系统使用第一密钥和第三密钥,生成第二密钥的方式也不同。加密系统可以通过对存储设备进行检测,获取存储设备的安全芯片检测结果。在安全芯片检测结果表征存储设备具有安全芯片时,说明第一密钥存储于安全芯片中,此时加密系统可以从安全芯片中获取第一密钥的调用句柄,并将第一密钥的调用句柄和第三密钥传入安全芯片中,以使得安全芯片能够在安全芯片内部通过第三密钥和第一密钥,生成第二密钥,以确保第一密钥在生成第二密钥时不离开安全芯片,保证第一密钥的安全。在安全芯片检测结果表征存储设备不具有安全芯片时,说明第一密钥在加密后存储于存储设备的存储区域中,此时加密系统可以从存储设备的存储区域中读取加密后的第一密钥,并根据密钥管理系统加密第一密钥时选择的加密算法对加密后的第一密钥进行解密,以获取第一密钥。
密钥管理系统还可以在将第一密钥存储于存储设备中之后,设置存储设备中的第一密钥标识,以使得终端在获取存储设备的安全芯片检测结果之前,可以首先检测第一密钥标识的取值。当第一密钥标识的取值表征第一密钥已经存储于存储设备之中时,终端可以继续获取存储设备的安全芯片检测结果;当第一密钥标识的取值表征第一密钥尚未存储于存储设备之中时,终端可以向加密应用返回用于表征第一密钥不存在的反馈信息。
需要说明的是,当存储设备具有安全芯片时,对待加密数据的加密处理也应当在安全芯片之外进行,以提升待加密数据的加密速度。
本申请实施例提供的数据处理方法,可以根据存储设备是否具有安全芯片,采用不同的方式生成第二密钥。由于第一密钥在存储设备具有安全芯片时优先存储于安全芯片中,在存储设备不具有安全芯片时在加密后才存储于存储设备的存储区域中,因此可以提高第一密钥的存储安全性,进而提高数据的安全性。
在一个实施例中,如图3所示,加密相关信息中包括存储文件的存储标识,存储文件用于存储加密数据,上述方法还包括:
步骤302,根据存储标识,从存储设备中匹配存储文件,得到第一文件匹配结果。
步骤304,在第一文件匹配结果表征存储设备中不存在存储文件时,根据存储标识,在存储设备中创建存储文件。
本申请实施例中,加密相关信息中还包括存储文件的存储标识。存储标识用于区分不同的存储文件。示例性的,存储标识可以为存储文件的唯一文件标识,或者存储文件的文件名称等,本申请实施例对此不作具体限定。
根据存储文件的存储标识,可以从存储设备中匹配存储文件,以确定存储设备中是否已经存储有存储文件。当第一文件匹配结果表征存储设备中不存在存储文件时,可以在存储设备中创建该存储文件,以在待加密数据加密完成后,将加密数据存储于存储文件中。
步骤306,在第一文件匹配结果表征存储设备中存在存储文件时,匹配存储文件和加密应用,得到第二文件匹配结果。
步骤308,根据第二文件匹配结果,对加密数据进行存储。
本申请实施例中,当第一文件匹配结果表征存储设备中存在存储文件时,可以对存储文件和加密应用进行匹配,以确定存储文件是否为加密应用所创建。举例来说,在创建存储文件时,可以在存储文件头部的创建应用标识字段中写入存储文件对应的创建应用标识(也即创建该存储文件的加密应用的标识,例如,创建应用标识可以为加密应用的应用标识号,或根据加密应用的应用标识号生成的密钥种子等),以标识该存储文件的创建应用,故而根据加密应用和存储文件头部的创建应用标识的匹配结果,即可确定存储文件是否为加密应用所创建。
在存储文件为加密应用所创建的情况下,可以直接对存储文件进行修改,将加密数据写入存储文件中;在存储文件不是加密应用所创建的情况下,表明有其他应用在使用该存储文件,此时不应当继续向存储文件中写入加密数据,而是可以向加密应用返回反馈信息,以告知加密应用应当采用其他方式存储加密数据。
本申请实施例提供的数据处理方法,可以根据存储文件的存储标识,从存储设备中匹配存储文件,以在存储设备中不存在存储文件的情况下创建存储文件,或在存储设备中存在存储文件的情况下,根据存储文件是否为加密应用所创建,选择相应的方式对存储文件进行修改,故而可以确保加密应用仅能修改其创建的存储文件,避免不同的加密应用对同一存储文件进行修改所可能引起的数据异常。
在一个实施例中,如图4所示,步骤308中,根据第二文件匹配结果,对加密数据进行存储,包括:
步骤402,在第二文件匹配结果表征存储文件与加密应用不匹配的情况下,丢弃加密数据。
步骤404,向加密应用返回反馈信息,反馈信息用于表征存储文件无法被写入。
本申请实施例中,在第二文件匹配结果表征存储文件与加密应用不匹配的情况下,说明存储文件不是加密应用所创建。由于此时不应当对其他加密应用所创建的存储文件进行修改,也不应当根据存储文件的存储标识创建与现有的存储文件存储标识相同的文件,故而可以将加密数据丢弃,并向加密应用返回反馈信息,以通知加密应用存储文件无法被写入。
本申请实施例提供的数据处理方法,可以在存储文件与加密应用不匹配的情况下,丢弃加密数据并向加密应用返回反馈信息,以避免对其他加密应用创建的存储文件进行修改,或创建与现有的存储文件存储标识相同的文件所可能引起的数据异常。
在一个实施例中,加密相关信息中包括待加密数据偏移量和待加密数据长度,待加密数据偏移量用于指示待加密数据在存储文件中的存储起始位置,如图5所示,步骤308中,根据第二文件匹配结果,对加密数据进行存储,包括:
步骤502,在第二文件匹配结果表征存储文件与加密应用相匹配的情况下,确定存储文件中已存储的字节数。
步骤504,在待加密数据偏移量大于存储文件中已存储的字节数的情况下,根据待加密数据长度,将加密数据存储于存储文件中已存储的字节之后。
本申请实施例中,在第二文件匹配结果表征存储文件与加密应用匹配的情况下,说明存储文件为加密应用所创建,此时可以直接向存储文件中写入加密数据。可以根据待加密数据偏移量和待加密数据长度,确定需要将加密数据存储于存储文件中的哪一位置。其中,待加密数据偏移量用于指示待加密数据在存储文件中的存储起始位置,待加密数据长度用于指示待加密数据的长度,由于待加密数据的长度和加密数据的长度相同,因此待加密数据长度也可以用于指示加密数据的长度。故而根据待加密数据偏移量和待加密数据长度,即可确定待加密数据应在存储文件中存储的位置。例如,若待加密数据偏移量为21字节,待加密数据长度为20字节,则加密数据应存储于存储文件第21字节至第40字节处。
在存储加密数据之前,可以通过确定存储文件中已存储的字节数,判断在存储加密数据时是否需要对存储文件中已存储的数据进行替换。示例性的,在创建存储文件,并第一次向存储文件中存储加密数据时,可以根据加密数据的长度,在存储文件头部的已存储字节数信息字段中写入存储文件中已存储的字节数,并在之后每一次向存储文件中存储加密数据时,根据加密数据的长度更新已存储字节数信息字段。故而可以直接通过解析存储文件头部中的已存储字节数信息字段,获取存储文件中已存储的字节数。
需要说明的是,以上仅为一种示例,实际上本申请实施例对于确定存储文件中已存储的字节数的方式不作具体限定,任一可以确定存储文件中已存储的字节数的方法均适用于本申请实施例中。
在待加密数据偏移量大于存储文件中已存储的字节数的情况下,说明此时无需对存储文件中已存储的数据进行替换,故而可以直接根据待加密数据长度将加密数据存储于存储文件中已存储的字节之后,以完成对加密数据的存储。
本申请实施例提供的数据处理方法,可以在存储文件为加密应用所创建的情况下,根据待加密数据偏移量、待加密数据长度和存储文件中已存储的字节数确定是否需要对存储文件中已存储的数据进行替换,并在不需要对存储文件中已存储的数据进行替换时,将加密数据存储于存储文件中已存储的字节之后,因此能够使得由同一加密应用存储的加密数据均存储于同一存储文件中,减少对存储文件进行管理的难度。
在一个实施例中,如图6所示,步骤108中,采用第二密钥对待加密数据进行加密处理,得到加密数据,包括:
步骤602,在待加密数据偏移量小于或者等于存储文件中已存储的字节数的情况下,根据待加密数据偏移量和待加密数据长度,从存储文件中确定待解密数据。
步骤604,对待解密数据进行解密处理,得到解密数据,并根据待加密数据偏移量和待加密数据长度,从解密数据中确定待替换数据。
步骤606,将待替换数据从解密数据中删除,得到目标解密数据。
步骤608,根据待加密数据偏移量和待加密数据长度,将待加密数据加入目标解密数据中,得到目标加密数据。
步骤610,根据第二密钥对目标加密数据进行加密处理,得到加密数据。
在本申请实施例中,进一步地,步骤308中,对加密数据进行存储,包括:
根据待解密数据在存储文件中的存储起始位置,将加密数据写入存储文件。
本申请实施例中,可以通过分组加密算法,采用第二密钥对待加密数据进行加密处理,得到加密数据。在待加密数据偏移量小于或者等于存储文件中已存储的字节数的情况下,存储加密数据时需要对存储文件中已存储的数据进行替换,而在通过分组加密算法对待加密数据进行加密的情况下,需要首先根据待加密数据偏移量和待加密数据长度,确定需要将加密数据存储于存储文件中的哪一位置。若加密数据需要存储的位置中已存在数据,则可以将这部分数据确定为待替换数据,并根据待替换数据对应的加密分组,将待替换数据对应的加密分组确定为待解密数据。
在对待解密数据进行解密处理后,可以得到解密数据。将待替换数据从解密数据中删除,得到目标解密数据后,可以根据待加密数据偏移量和待加密数据长度指示的相应位置,将将待加密数据加入目标解密数据中,得到目标加密数据,进而可以对目标加密数据进行分组加密,得到加密数据,并将加密数据写入存储文件中。
需要说明的是,在目标加密数据的长度不是加密分组长度的整数倍时,还需要在目标加密数据后填补无效数据,以将目标加密数据的长度填补至加密分组长度的整数倍。
以下以具体示例进行说明。参照图7所示,在存储文件中已存储的字节数为32字节,待加密数据偏移量为21字节,待加密数据长度为8字节,每一加密分组的长度为16字节的情况下,可以确定需要将加密数据存储于存储文件第21字节至第28字节处。由于存储文件第21字节至第28字节处已存在数据,因此可以将存储文件第21字节至第28字节处的数据确定为待替换数据,进而将存储文件第21字节至第28字节处的数据对应的加密分组(存储文件第16字节至第31字节的数据)确定为待解密数据。
在对待解密数据进行解密处理后,可以得到解密数据。将待替换数据(第21字节至第28字节的数据)从解密数据中删除后,可以得到目标解密数据(第16字节至第20字节的数据,及第29字节至第31字节的数据)。将待加密数据加入第21字节至第28字节处后,可以得到目标加密数据。由于目标加密数据此时长度为16字节,因此无需在目标加密数据后填补无效数据。可以直接通过分组加密算法,将目标加密数据作为一个加密分组进行加密,得到加密数据。进而可以将加密数据存储于存储文件的第16字节至第31字节处。
在另一示例中,参照图7所示,存储文件中已存储的字节数为32字节,待加密数据偏移量为21字节,待加密数据长度为20字节,每一加密分组的长度为16字节。此时可以确定需要将加密数据存储于存储文件第21字节至第40字节处。由于存储文件第21字节至第31字节处已存在数据,因此可以将存储文件第21字节至第31字节处的数据确定为待替换数据,进而将存储文件第21字节至第31字节处的数据对应的加密分组(存储文件第16字节至第31字节的数据)确定为待解密数据。
在对待解密数据进行解密处理后,可以得到解密数据。将待替换数据(第21字节至第31字节的数据)从解密数据中删除后,可以得到目标解密数据(第16字节至第20字节的数据)。将待加密数据加入第21字节至第40字节处后,可以得到目标加密数据。由于目标加密数据此时长度为25字节,因此需要在目标加密数据后填补7字节的无效数据,以将目标加密数据的长度填补至32字节。进而可以通过分组加密算法,将第16字节至第31字节的数据作为一个加密分组进行加密,将第32字节至第47字节的数据作为另一个加密分组进行加密,以得到加密数据。进而可以将加密数据存储于存储文件的第16字节至第47字节处。
本申请实施例提供的数据处理方法,可以在采用分组加密算法对待加密数据进行加密,且需要对存储文件中已存储的数据进行替换的情况下,从存储文件中确定待解密数据,并在对待解密数据进行解密、替换和补全后,重新对得到的目标加密数据进行分组加密,得到加密数据,并将加密数据存储于存储文件中。本申请实施例可以使得在采用分组加密算法,且需要对存储文件中已存储的数据进行替换的情况下,由同一加密应用存储的加密数据均存储于同一存储文件中,减少对存储文件进行管理的难度。
在一个实施例中,如图8所示,步骤308中,对加密数据进行存储,包括:
步骤802,在加密数据偏移量小于或者等于存储文件中已存储的字节数的情况下,根据待加密数据偏移量和待加密数据长度,从存储文件中确定待替换数据。
步骤804,将待替换数据从存储文件中删除,并根据待加密数据偏移量和待加密数据长度,将加密数据写入目标存储文件。
本申请实施例中,可以通过流加密算法,采用第二密钥对待加密数据进行加密处理,得到加密数据。在待加密数据偏移量小于或者等于存储文件中已存储的字节数的情况下,存储加密数据时需要对存储文件中已存储的数据进行替换,在通过流加密算法对待加密数据进行加密的情况下,可以直接将相应的待替换数据从存储文件中删除,并将加密数据存储于待加密数据偏移量和待加密数据长度所指示的位置中。
示例性的,可以将从待加密数据偏移量所指示的位置起,至存储文件中最后一个存储的字节为止的数据确定为待替换数据。举例来说,在存储文件中已存储的字节数为32字节,待加密数据偏移量为21字节,待加密数据长度为20字节的情况下,待替换数据为位于待加密数据将存储的位置的数据,也即存储文件中第21字节至第32字节的数据。可以直接将待替换数据从存储文件中删除,并将加密数据相应存储于第21字节至第40字节处,以对加密数据进行存储。
本申请实施例提供的数据处理方法,可以在采用流加密算法对待加密数据进行加密,且需要对存储文件中已存储的数据进行替换的情况下,从存储文件中确定待替换数据,并在删除待替换数据后,将加密数据存储于存储文件中。本申请实施例可以使得在采用流加密算法,且需要对存储文件中已存储的数据进行替换的情况下,由同一加密应用存储的加密数据均存储于同一存储文件中,减少对存储文件进行管理的难度。
在一个实施例中,如图9所示,提供了一种数据处理方法,本实施例以该方法应用于终端进行举例说明,可以理解的是,该方法也可以应用于服务器,还可以应用于包括终端和服务器的系统,并通过终端和服务器的交互实现。本实施例中,该方法包括以下步骤:
步骤902,接收解密应用发送的解密相关信息,解密相关信息包括加密数据的存储文件的存储标识和解密应用的应用标识号。
本申请实施例中,解密应用为需要从存储设备中读取解密数据的应用。解密应用的应用标识号用于区分不同的解密应用,每一解密应用均拥有其唯一的应用标识号。解密应用可以通过调用终端对应的接口,将加密数据的存储文件的存储标识和解密应用的应用标识号发送至终端。终端进而可以根据解密应用的应用标识号生成解密密钥,对加密数据进行解密处理,并将得到的解密数据发送给解密应用。
步骤904,根据应用标识号和第一密钥,生成第二密钥,第一密钥为根据存储设备的设备标识号生成的密钥,存储设备用于存储加密数据。
本申请实施例中,可以根据应用标识号和第一密钥生成第二密钥,以获取针对该加密应用和存储设备的组合的唯一的第二密钥。其中,第一密钥为预先生成并存储于存储设备中的密钥。生成第二密钥的方式可以参照前述实施例中的相关描述,本申请实施例在此不再赘述。
需要说明的是,本申请实施例中根据解密应用的应用标识号和第一密钥生成第二密钥的方法,应当与加密得到加密数据时,使用的根据加密应用的应用标识号和第一密钥生成第二密钥的方法相同,以使得在解密时生成的第二密钥能够与加密时使用的第二密钥相同,以便根据第二密钥对加密数据进行解密处理。
需要说明的是,当终端为持有根密钥的密钥管理系统时,密钥管理系统可以根据生成第一密钥时采用的算法,根据根密钥和存储设备的设备标识号生成第一密钥,而无需从存储设备中获取第一密钥,以降低密钥管理系统管理密钥的难度。
步骤906,根据加密数据的存储文件的存储标识,获取加密数据,并采用第二密钥对加密数据进行解密处理,得到加密数据对应的解密数据。
本申请实施例中,可以根据加密数据的存储文件的存储标识,从存储设备中匹配得到存储有加密数据的存储文件,并采用第二密钥对加密数据进行解密处理,得到解密数据,进而将解密数据发送至解密应用。
在对加密数据进行解密处理时,若采用的是分组加密算法,则可以根据加密数据对应的加密分组数量,在存储设备中申请相应大小的内存空间,以在存储设备中对加密数据进行解密处理。
需要说明的是,解密相关信息中还可以包括加密数据偏移量和加密数据长度,加密数据偏移量用于指示加密数据在存储文件中的存储起始位置。也即加密数据可以为存储文件中的部分数据。
在加密数据偏移量大于存储文件中已存储的字节数时,可以向解密应用返回用于表征偏移量错误,无法读取加密数据的反馈信息;在加密数据偏移量小于或者等于存储文件中已存储的字节数时,可以根据加密数据偏移量,获取加密数据在存储文件中的存储起始位置,进而根据加密数据长度,将从加密数据在存储文件中的存储起始位置开始,加密数据长度个字节的数据作为加密数据,并采用第二密钥对加密数据进行解密处理,得到解密数据。
若根据加密数据的存储文件的存储标识,从存储设备中无法匹配得到存储文件,则可以向解密应用返回用于表征存储文件不存在的反馈信息;若匹配得到存储文件,则可以从存储文件头部的创建应用标识字段中读取创建应用标识,创建应用标识用于表征创建该存储文件的加密应用,并对解密应用和创建应用标识进行匹配,若匹配结果表征存储文件不是该解密应用所创建,则可以向解密应用返回用于表征存储文件无法被读取的反馈信息;若匹配结果表征存储文件为该解密应用所创建,则可以采用第二密钥对加密数据进行解密处理,得到解密数据,进而将解密数据发送至解密应用。
本申请实施例提供的数据处理方法,可以通过根据存储设备的设备标识号生成的第一密钥,及解密应用的应用标识号生成第二密钥,进而采用第二密钥对加密数据进行加密处理,得到解密数据。由于第二密钥为根据加密应用的应用标识号生成的密钥,而由于不同的存储设备的设备标识号不同,不同的加密应用的应用标识号也不同,故而对于不同的存储设备和加密应用的组合,生成的第二密钥也相应不同,因此即便第二密钥泄露,通过该第二密钥也只能解密由该第二密钥对应的加密应用存储于该第二密钥对应的存储设备上的数据,而无法解密由其他加密应用存储于该存储设备上,或由该加密应用存储于其他存储设备上的加密数据,因此可以提高数据加密的安全性。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的数据处理方法的数据处理装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个数据处理装置实施例中的具体限定可以参见上文中对于数据处理方法的限定,在此不再赘述。
在一个实施例中,如图10所示,提供了一种数据处理装置1000,包括:接收模块1002、生成模块1004、加密模块1006,其中:
接收模块1002,用于接收加密应用发送的加密相关信息,所述加密相关信息包括待加密数据和所述加密应用的应用标识号;
生成模块1004,用于根据所述应用标识号和第一密钥,生成第二密钥,所述第一密钥为根据存储设备的设备标识号生成的密钥,所述存储设备用于存储加密数据;
加密模块1006,用于采用所述第二密钥对所述待加密数据进行加密处理,得到所述加密数据。
本申请实施例提供的数据处理装置,可以通过根据存储设备的设备标识号生成的第一密钥,及加密应用的应用标识号生成第二密钥,进而采用第二密钥对待加密数据进行加密处理,得到加密数据。由于不同的存储设备的设备标识号不同,不同的加密应用的应用标识号也不同,故而对于不同的存储设备和加密应用的组合,生成的第二密钥也相应不同,因此即便第二密钥泄露,通过该第二密钥也只能解密由该第二密钥对应的加密应用存储于该第二密钥对应的存储设备上的数据,而无法解密由其他加密应用存储于该存储设备上,或由该加密应用存储于其他存储设备上的加密数据,因此可以提高数据加密的安全性。
在其中一个实施例中,所述生成模块1004,还用于:
根据所述应用标识号,生成第三密钥;
获取所述存储设备的安全芯片检测结果;
在所述安全芯片检测结果表征所述存储设备具有安全芯片的情况下,将所述第三密钥发送至所述安全芯片,以使得所述安全芯片能够根据所述第三密钥和所述第一密钥,生成第二密钥;或者,
在所述安全芯片检测结果表征所述存储设备不具有所述安全芯片的情况下,从所述存储设备的存储区域中读取加密后的第一密钥;
对所述加密后的第一密钥进行解密处理,得到所述第一密钥;
根据所述第三密钥和所述第一密钥,生成第二密钥。
在其中一个实施例中,所述加密相关信息中包括存储文件的存储标识,所述存储文件用于存储所述加密数据,所述装置还包括:
第一匹配模块,用于根据所述存储标识,从所述存储设备中匹配所述存储文件,得到第一文件匹配结果;
创建模块,用于在所述第一文件匹配结果表征所述存储设备中不存在所述存储文件时,根据所述存储标识,在所述存储设备中创建所述存储文件;或者,
第二匹配模块,用于在所述第一文件匹配结果表征所述存储设备中存在所述存储文件时,匹配所述存储文件和所述加密应用,得到第二文件匹配结果;
存储模块,用于根据所述第二文件匹配结果,对所述加密数据进行存储。
在其中一个实施例中,所述存储模块,还用于:
在所述第二文件匹配结果表征所述存储文件与所述加密应用不匹配的情况下,丢弃所述加密数据;
向所述加密应用返回反馈信息,所述反馈信息用于表征所述存储文件无法被写入。
在其中一个实施例中,所述加密相关信息中包括待加密数据偏移量和待加密数据长度,所述待加密数据偏移量用于指示所述待加密数据在所述存储文件中的存储起始位置,所述存储模块,还用于:
在所述第二文件匹配结果表征所述存储文件与所述加密应用相匹配的情况下,确定所述存储文件中已存储的字节数;
在所述待加密数据偏移量大于所述存储文件中已存储的字节数的情况下,根据所述待加密数据长度,将所述加密数据存储于所述存储文件中已存储的字节之后。
在其中一个实施例中,所述加密模块1008,还用于:
在所述待加密数据偏移量小于或者等于所述存储文件中已存储的字节数的情况下,根据所述待加密数据偏移量和所述待加密数据长度,从所述存储文件中确定待解密数据;
对所述待解密数据进行解密处理,得到解密数据,并根据所述待加密数据偏移量和所述待加密数据长度,从所述解密数据中确定待替换数据;
将所述待替换数据从所述解密数据中删除,得到目标解密数据;
根据所述待加密数据偏移量和所述待加密数据长度,将所述待加密数据加入所述目标解密数据中,得到目标加密数据;
根据所述第二密钥对所述目标加密数据进行加密处理,得到所述加密数据;
所述存储模块,还用于:
根据所述待解密数据在所述存储文件中的存储起始位置,将所述加密数据写入所述存储文件。
在其中一个实施例中,所述存储模块,还用于:
在所述加密数据偏移量小于或者等于所述存储文件中已存储的字节数的情况下,根据所述待加密数据偏移量和所述待加密数据长度,从所述存储文件中确定待替换数据;
将所述待替换数据从所述存储文件中删除,并根据所述待加密数据偏移量和所述待加密数据长度,将所述加密数据写入所述存储文件。
在一个实施例中,如图11所示,提供了一种数据处理装置1100,包括:接收模块1102、生成模块1104、解密模块1106,其中:
接收模块1102,用于接收解密应用发送的解密相关信息,所述解密相关信息包括加密数据的存储文件的存储标识和所述解密应用的应用标识号;
生成模块1104,用于根据所述应用标识号和第一密钥,生成第二密钥,所述第一密钥为根据存储设备的设备标识号生成的密钥,所述存储设备用于存储加密数据;
解密模块1106,用于根据所述加密数据的存储文件的存储标识,获取所述加密数据,并采用所述第二密钥对所述加密数据进行解密处理,得到所述加密数据对应的解密数据。
本申请实施例提供的数据处理装置,可以通过根据存储设备的设备标识号生成的第一密钥,及解密应用的应用标识号生成第二密钥,进而采用第二密钥对加密数据进行加密处理,得到解密数据。由于第二密钥为根据加密应用的应用标识号生成的密钥,而由于不同的存储设备的设备标识号不同,不同的加密应用的应用标识号也不同,故而对于不同的存储设备和加密应用的组合,生成的第二密钥也相应不同,因此即便第二密钥泄露,通过该第二密钥也只能解密由该第二密钥对应的加密应用存储于该第二密钥对应的存储设备上的数据,而无法解密由其他加密应用存储于该存储设备上,或由该加密应用存储于其他存储设备上的加密数据,因此可以提高数据加密的安全性。
上述数据处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图12所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种数据处理方法。
本领域技术人员可以理解,图12中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (13)
1.一种数据处理方法,其特征在于,所述方法包括:
接收加密应用发送的加密相关信息,所述加密相关信息包括待加密数据和所述加密应用的应用标识号;
根据所述应用标识号和第一密钥,生成第二密钥,所述第一密钥为根据存储设备的设备标识号生成的密钥,所述存储设备用于存储加密数据;
采用所述第二密钥对所述待加密数据进行加密处理,得到所述加密数据。
2.根据权利要求1所述的方法,其特征在于,所述根据所述应用标识号和第一密钥,生成第二密钥,包括:
根据所述应用标识号,生成第三密钥;
获取所述存储设备的安全芯片检测结果;
在所述安全芯片检测结果表征所述存储设备具有安全芯片的情况下,将所述第三密钥发送至所述安全芯片,以使得所述安全芯片能够根据所述第三密钥和所述第一密钥,生成第二密钥;或者,
在所述安全芯片检测结果表征所述存储设备不具有所述安全芯片的情况下,从所述存储设备的存储区域中读取加密后的第一密钥;
对所述加密后的第一密钥进行解密处理,得到所述第一密钥;
根据所述第三密钥和所述第一密钥,生成第二密钥。
3.根据权利要求1所述的方法,其特征在于,所述加密相关信息中包括存储文件的存储标识,所述存储文件用于存储所述加密数据,所述方法还包括:
根据所述存储标识,从所述存储设备中匹配所述存储文件,得到第一文件匹配结果;
在所述第一文件匹配结果表征所述存储设备中不存在所述存储文件时,根据所述存储标识,在所述存储设备中创建所述存储文件;或者,
在所述第一文件匹配结果表征所述存储设备中存在所述存储文件时,匹配所述存储文件和所述加密应用,得到第二文件匹配结果;
根据所述第二文件匹配结果,对所述加密数据进行存储。
4.根据权利要求3所述的方法,其特征在于,所述根据所述第二文件匹配结果,对所述加密数据进行存储,包括:
在所述第二文件匹配结果表征所述存储文件与所述加密应用不匹配的情况下,丢弃所述加密数据;
向所述加密应用返回反馈信息,所述反馈信息用于表征所述存储文件无法被写入。
5.根据权利要求3所述的方法,其特征在于,所述加密相关信息中包括待加密数据偏移量和待加密数据长度,所述待加密数据偏移量用于指示所述待加密数据在所述存储文件中的存储起始位置,所述根据所述第二文件匹配结果,对所述加密数据进行存储,包括:
在所述第二文件匹配结果表征所述存储文件与所述加密应用相匹配的情况下,确定所述存储文件中已存储的字节数;
在所述待加密数据偏移量大于所述存储文件中已存储的字节数的情况下,根据所述待加密数据长度,将所述加密数据存储于所述存储文件中已存储的字节之后。
6.根据权利要求5所述的方法,其特征在于,所述采用所述第二密钥对所述待加密数据进行加密处理,得到所述加密数据,包括:
在所述待加密数据偏移量小于或者等于所述存储文件中已存储的字节数的情况下,根据所述待加密数据偏移量和所述待加密数据长度,从所述存储文件中确定待解密数据;
对所述待解密数据进行解密处理,得到解密数据,并根据所述待加密数据偏移量和所述待加密数据长度,从所述解密数据中确定待替换数据;
将所述待替换数据从所述解密数据中删除,得到目标解密数据;
根据所述待加密数据偏移量和所述待加密数据长度,将所述待加密数据加入所述目标解密数据中,得到目标加密数据;
根据所述第二密钥对所述目标加密数据进行加密处理,得到所述加密数据;
所述对所述加密数据进行存储,包括:
根据所述待解密数据在所述存储文件中的存储起始位置,将所述加密数据写入所述存储文件。
7.根据权利要求5所述的方法,其特征在于,所述对所述加密数据进行存储,包括:
在所述加密数据偏移量小于或者等于所述存储文件中已存储的字节数的情况下,根据所述待加密数据偏移量和所述待加密数据长度,从所述存储文件中确定待替换数据;
将所述待替换数据从所述存储文件中删除,并根据所述待加密数据偏移量和所述待加密数据长度,将所述加密数据写入所述存储文件。
8.一种数据处理方法,其特征在于,所述方法包括:
接收解密应用发送的解密相关信息,所述解密相关信息包括加密数据的存储文件的存储标识和所述解密应用的应用标识号;
根据所述应用标识号和第一密钥,生成第二密钥,所述第一密钥为根据存储设备的设备标识号生成的密钥,所述存储设备用于存储加密数据;
根据所述加密数据的存储文件的存储标识,获取所述加密数据,并采用所述第二密钥对所述加密数据进行解密处理,得到所述加密数据对应的解密数据。
9.一种数据处理装置,其特征在于,所述装置包括:
接收模块,用于接收加密应用发送的加密相关信息,所述加密相关信息包括待加密数据和所述加密应用的应用标识号;
生成模块,用于根据所述应用标识号和第一密钥,生成第二密钥,所述第一密钥为根据存储设备的设备标识号生成的密钥,所述存储设备用于存储加密数据;
加密模块,用于采用所述第二密钥对所述待加密数据进行加密处理,得到所述加密数据。
10.一种数据处理装置,其特征在于,所述装置包括:
接收模块,用于接收解密应用发送的解密相关信息,所述解密相关信息包括加密数据的存储文件的存储标识和所述解密应用的应用标识号;
生成模块,用于根据所述应用标识号和第一密钥,生成第二密钥,所述第一密钥为根据存储设备的设备标识号生成的密钥,所述存储设备用于存储加密数据;
解密模块,用于根据所述加密数据的存储文件的存储标识,获取所述加密数据,并采用所述第二密钥对所述加密数据进行解密处理,得到所述加密数据对应的解密数据。
11.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至8中任一项所述的方法的步骤。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至8中任一项所述的方法的步骤。
13.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至8中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211206601.9A CN115883126A (zh) | 2022-09-30 | 2022-09-30 | 数据处理方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211206601.9A CN115883126A (zh) | 2022-09-30 | 2022-09-30 | 数据处理方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115883126A true CN115883126A (zh) | 2023-03-31 |
Family
ID=85770215
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211206601.9A Pending CN115883126A (zh) | 2022-09-30 | 2022-09-30 | 数据处理方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115883126A (zh) |
-
2022
- 2022-09-30 CN CN202211206601.9A patent/CN115883126A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10148437B2 (en) | Encryption system with key recovery | |
CN110881063B (zh) | 一种隐私数据的存储方法、装置、设备及介质 | |
US9009496B2 (en) | Method and apparatus for implementing secure and selectively deniable file storage | |
US8789210B2 (en) | Key usage policies for cryptographic keys | |
KR101405720B1 (ko) | 암호화 속성을 이용하는 가속 크립토그래피 | |
JP2010517447A (ja) | ファイルサイズを保ちつつのファイル暗号化 | |
JP2010517448A (ja) | セキュアファイル暗号化 | |
US8755527B2 (en) | Key management policies for cryptographic keys | |
US8856520B2 (en) | Secure key management | |
US9306745B2 (en) | Secure key management | |
JP2020155801A (ja) | 情報管理システム及びその方法 | |
US8862893B2 (en) | Techniques for performing symmetric cryptography | |
CN116366289B (zh) | 无人机遥感数据的安全监管方法及装置 | |
CN114896621B (zh) | 应用服务的获取方法、加密方法、装置、计算机设备 | |
CN115766244A (zh) | 车联网信息加密方法、装置、计算机设备和存储介质 | |
CN115883126A (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN110516457B (zh) | 一种数据存储方法及读取方法、存储设备 | |
WO2023212838A1 (en) | Fast signature generation and verification | |
CN114928551B (zh) | 一种系统配置方法、装置和存储介质 | |
CN117667667A (zh) | 应用程序的抓包测试方法及装置、存储介质、计算机设备 | |
CN117938546B (zh) | 一种电子账号的验证及数据访问方法 | |
CN117997651B (zh) | 数据共享方法、系统、设备及存储介质 | |
CN117371051A (zh) | 数据匹配方法、装置、计算机设备和存储介质 | |
US20130036474A1 (en) | Method and Apparatus for Secure Data Representation Allowing Efficient Collection, Search and Retrieval | |
Weir | Data At Rest Innovation with Turnstile |
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 | ||
CB03 | Change of inventor or designer information | ||
CB03 | Change of inventor or designer information |
Inventor after: Zhao Yang Inventor after: Wang Bo Inventor before: Zhao Yang |