一种处理数据的方法、装置、计算机可读存储介质及装置转让专利
申请号 : CN202111607184.4
文献号 : CN113987589B
文献日 : 2022-03-18
发明人 : 陆舟
申请人 : 飞天诚信科技股份有限公司
摘要 :
权利要求 :
1.一种处理数据的方法,其特征在于,包括:当安全存储模块的安全访问接口被应用程序调用时,执行如下步骤:步骤101,所述安全存储模块判断是否存在预置数组的当前内存空间的初始地址和当前内存空间偏移地址,如果是,执行步骤103;
如果否,执行步骤102;
步骤102,所述安全存储模块根据预置的初始地址和预置的偏移地址获取预置数组,执行步骤104;
步骤103, 所述安全存储模块根据所述预置数组的当前内存空间的初始地址和当前内存空间偏移地址获取预置数组,执行步骤104;
步骤104,所述安全存储模块根据获取的所述预置数组生成向量数组;
步骤105,所述安全存储模块获取所述预置数组的新内存空间的初始地址和新内存空间偏移地址;
步骤106,所述安全存储模块根据预置密钥和向量数组获取加解密密钥,根据加解密密钥对待处理数据进行处理;
步骤107,所述安全存储模块根据所述预置数组的新内存空间的初始地址和新内存空间偏移地址存储所述预置数组,并将所述预置数组的新内存空间的初始地址和新内存空间偏移地址存储为所述预置数组的当前内存空间的初始地址和当前内存空间偏移地址。
2.如权利要求1所述方法,其特征在于,所述步骤104中所述安全存储模块根据获取的所述预置数组生成向量数组具体为:所述安全存储模块将所述预置数组作为向量数组。
3.如权利要求1所述方法,其特征在于,所述步骤104中所述安全存储模块根据获取的所述预置数组生成向量数组包括如下步骤:步骤B101,所述安全存储模块创建空数组,获取预设索引值,根据所述预设索引值获取所述预置数组中与其对应的数值作为预置向量,将所述预置向量记录到空数组得到当前向量数组,初始化计数值;
步骤B102,所述安全存储模块将所述预设索引值作为上一个索引值,将所述预置向量作为上一个向量;
步骤B103,所述安全存储模块根据所述上一个向量与所述预置数组的长度进行计算得到当前索引值,根据所述当前索引值获取所述预置数组中与其对应的数值作为当前向量, 将所述当前向量顺序记录到当前向量数组,更新所述计数值;
步骤B104,所述安全存储模块根据所述计数值判断是否已获取到全部向量,如果是,执行步骤B106, 如果否,执行步骤B105;
步骤B105,所述安全存储模块将所述当前索引值设置为所述上一个索引值,将当前向量设置为所述上一个向量,返回步骤B103;
步骤B106,所述安全存储模块将所述当前向量数组作为向量数组。
4.如权利要求1所述方法,其特征在于,所述步骤104中所述安全存储模块根据获取的所述预置数组生成向量数组包括如下步骤:步骤M1,所述安全存储模块读取设备标识文件中的设备标识;
步骤M2 ,所述安全存储模块将获取的所述预置数组按照预定的字节数进行分组,将各个分组分别与所述设备标识进行异或运算,将各个异或运算结果进行组合生成向量数组。
5.如权利要求4所述方法,其特征在于,所述步骤M1之前还包括:步骤M01, 所述安全存储模块判断设备标识文件是否存在,如果是,执行步骤M1, 如果否,执行步骤M02;
步骤M02, 所述安全存储模块生成设备标识,根据所述设备标识生成设备标识文件并存储,执行步骤M2。
6.如权利要求1所述方法,其特征在于,所述步骤105中所述安全存储模块获取所述预置数组的新内存空间的初始地址和新内存空间偏移地址具体为:所述安全存储模块调用动态内存分配函数获取所述预置数组的新内存空间的初始地址;所述安全存储模块调用随机数生成函数获取所述预置数组的新内存空间偏移地址。
7.如权利要求6所述方法,其特征在于,所述随机数生成函数的输入参数的范围为大于
0且小于内存空间的长度与预置数组长度的差值。
8.如权利要求1所述方法,其特征在于,所述安全存储模块的安全访问接口包括安全读接口和/或安全写接口;
步骤106具体为:当所述安全访问接口为安全写接口时,所述安全存储模块根据所述向量数组和所述预置数组的新内存空间的初始地址和新内存空间偏移地址生成第二新向量数组,使用预置密钥对所述第二新向量数组进行加密得到加解密密钥,使用所述加解密密钥对待写数据进行加密后存储;
当安全访问接口为安全读接口时,所述安全存储模块根据所述向量数组和所述预置数组的当前内存空间的初始地址和当前内存空间偏移地址生成第一新向量数组,使用预置密钥对所述第一新向量数组进行加密得到加解密密钥,使用所述加解密密钥对读取的数据进行解密得到解密数据,向所述应用程序返回所述解密数据,根据所述向量数组和预置数组的新内存空间的初始地址和新内存空间偏移地址生成第二新向量数组,使用预置密钥对所述第二新向量数组进行加密得到新加解密密钥,使用新加解密密钥对所述解密数据进行加密后存储。
9.如权利要求1所述方法,其特征在于,所述安全存储模块的安全访问接口包括安全读接口和/或安全写接口;
步骤106具体为:当安全访问接口为安全写接口时,所述安全存储模块判断是否存在待写数据对应的数据文件,
如果是,所述安全存储模块根据数据文件读取数据,根据所述向量数组和所述预置数组的当前内存空间的初始地址和当前内存空间偏移地址生成第一新向量数组,使用预置密钥对所述第一新向量数组进行加密得到加解密密钥,使用所述加解密密钥对读取的数据进行解密得到解密数据,根据待写数据对所述解密数据进行修改,所述安全存储模块根据所述向量数组和所述预置数组的新内存空间的初始地址和新内存空间偏移地址生成第二新向量数组,使用预置密钥对所述第二新向量数组进行加密得到新加解密密钥,使用所述新加解密密钥对修改后的解密数据进行加密后存储以更新所述数据文件;
如果否,所述安全存储模块根据所述向量数组和所述预置数组的新内存空间的初始地址和新内存空间偏移地址生成第二新向量数组,使用预置密钥对所述第二新向量数组进行加密得到加解密密钥,使用所述加解密密钥对待写数据进行加密后存储以生成数据文件;
当安全访问接口为安全读接口时,所述安全存储模块根据所述向量数组和所述预置数组的当前内存空间的初始地址和当前内存空间偏移地址生成第一新向量数组,使用预置密钥对所述第一新向量数组进行加密得到加解密密钥;所述安全存储模块读取数据,使用所述加解密密钥对读取的数据进行解密得到解密数据,向所述应用程序返回所述解密数据,根据所述向量数组和所述预置数组的新内存空间的初始地址和新内存空间偏移地址生成第二新向量数组,使用预置密钥对所述第二新向量数组进行加密得到新加解密密钥,使用所述新加解密密钥对所述解密数据进行加密后存储。
10.如权利要求8所述方法,其特征在于,所述步骤106中的所述安全存储模块根据所述向量数组和所述预置数组的当前内存空间的初始地址和当前内存空间偏移地址生成第一新向量数组具体为:根据所述向量数组、所述预置数组的当前内存空间的初始地址和当前内存空间偏移地址进行异或运算得到第一新向量数组;
根据所述向量数组和所述预置数组的新内存空间的初始地址和新内存空间偏移地址生成第二新向量数组具体为:根据所述向量数组、所述预置数组的新内存空间的初始地址和新内存空间偏移地址进行异或运算生成第二新向量数组。
11.如权利要求1所述方法,其特征在于,所述步骤106具体为:所述安全存储模块读取文件密钥文件,使用预置密钥对所述向量数组进行加密得到加解密密钥,使用所述加解密密钥对所述文件密钥文件进行解密得到文件密钥,所述安全存储模块使用所述文件密钥对待处理数据进行处理。
12.如权利要求1所述方法,其特征在于,所述安全存储模块的安全访问接口包括安全读接口和/或安全写接口,
所述步骤106具体为:
当安全存储模块的安全访问接口为安全读接口时,所述安全存储模块读取文件密钥文件,使用预置密钥对所述向量数组进行加密得到加解密密钥,使用所述加解密密钥对所述文件密钥文件进行解密得到文件密钥;所述安全存储模块读取数据,使用文件密钥对读取的数据进行解密得到解密数据,向所述应用程序返回所述解密数据;生成随机数,将所述随机数作为新文件密钥,所述安全存储模块使用新文件密钥对所述解密数据进行加密后存储;使用所述加解密密钥对新文件密钥进行加密生成新文件密钥文件,将所述新文件密钥文件存储为文件密钥文件;
当安全存储模块的安全访问接口为安全写接口时,所述安全存储模块生成随机数,将所述随机数作为文件密钥,所述安全存储模块使用文件密钥对待写数据进行加密后存储,根据加解密密钥对文件密钥进行加密生成文件密钥文件并保存。
13.如权利要求1所述方法,其特征在于,所述安全存储模块的安全访问接口包括安全读接口和/或安全写接口;
所述步骤106具体为:
当安全存储模块的安全访问接口为安全读接口时,所述安全存储模块读取文件密钥文件,使用预置密钥对所述向量数组进行加密得到加解密密钥,使用所述加解密密钥对所述文件密钥文件进行解密得到文件密钥;所述安全存储模块读取数据,使用所述文件密钥对读取的数据进行解密后获取解密数据,向所述应用程序返回所述解密数据;生成随机数,将所述随机数作为新文件密钥,所述安全存储模块使用所述新文件密钥对所述解密数据进行加密后存储;根据加解密密钥对所述新文件密钥进行加密得到新文件密钥文件,将新文件密钥文件存储为文件密钥文件;
当安全存储模块的安全访问接口为安全写接口时,所述安全存储模块判断是否存在待写数据对应的数据文件,
如果是,所述安全存储模块读取文件密钥文件,使用预置密钥对所述向量数组进行加密得到加解密密钥,使用所述加解密密钥对所述文件密钥文件进行解密得到文件密钥;所述安全存储模块根据所述数据文件读取数据,使用所述文件密钥对读取的数据进行解密后获取解密数据,根据所述待写数据对所述解密数据进行修改,生成随机数,将所述随机数作为新文件密钥, 使用所述新文件密钥对修改后的数据进行加密后存储以更新所述数据文件,所述安全存储模块使用加解密密钥对所述文件密钥进行加密得到新文件密钥文件,将所述新文件密钥文件存储为文件密钥文件;
如果否,所述安全存储模块生成随机数,将所述随机数作为文件密钥,所述安全存储模块使用所述文件密钥对待写数据进行加密后存储以生成数据文件,根据所述加解密密钥对所述文件密钥进行加密得到新文件密钥文件,将新文件密钥文件存储为文件密钥文件。
14.如权利要求1所述方法,其特征在于,所述安全存储模块的安全访问接口包括安全读接口和/或安全写接口;
步骤106具体为:
当安全访问接口为安全写接口时,根据所述向量数组和所述预置数组的当前内存空间的初始地址和当前内存空间偏移地址生成第一新向量数组,使用预置密钥对所述第一新向量数组进行加密得到加解密密钥,所述安全存储模块读取文件密钥文件,使用所述加解密密钥对所述文件密钥文件进行解密得到文件密钥,使用所述文件密钥对待写数据进行加密后存储,所述安全存储模块根据所述向量数组和所述预置数组的新内存空间的初始地址和新内存空间偏移地址生成第二新向量数组,使用所述预置密钥对所述第二新向量数组进行加密得到新加解密密钥,使用所述新加解密密钥对所述文件密钥加密得到新文件密钥文件,并将所述新文件密钥文件存储为文件密钥文件;
当安全访问接口为安全读接口时,所述安全存储模块根据所述向量数组和所述预置数组的当前内存空间的初始地址和当前内存空间偏移地址生成第一新向量数组,使用预置密钥对所述第一新向量数组进行加密得到加解密密钥,所述安全存储模块读取文件密钥文件,使用所述加解密密钥对所述文件密钥文件进行解密得到文件密钥,使用所述文件密钥对读取的数据进行解密后获取解密数据,向所述应用程序返回所述解密数据,根据所述向量数组和所述预置数组的新内存空间的初始地址和新内存空间偏移地址生成第二新向量数组,使用预置密钥对所述第二新向量数组进行加密得到新加解密密钥,使用所述新加解密密钥对文件密钥进行加密得到新文件密钥文件,并将所述新文件密钥文件存储为文件密钥文件。
15.如权利要求1所述方法,其特征在于,所述安全存储模块的安全访问接口包括安全读接口和/或安全写接口;
所述步骤106具体为:
当安全访问接口为安全写接口时,所述安全存储模块判断是否存在待写数据对应的数据文件,
如果是,所述安全存储模块根据所述数据文件读取数据,所述安全存储模块根据所述向量数组和所述预置数组的当前内存空间的初始地址和当前内存空间偏移地址生成第一新向量数组,使用预置密钥对所述第一新向量数组进行加密得到加解密密钥,所述安全存储模块读取文件密钥文件,使用所述加解密密钥对所述文件密钥文件进行解密得到文件密钥,使用所述文件密钥对读取的数据进行解密得到解密数据,根据所述待写数据对所述解密数据进行修改,使用文件密钥对修改后的解密数据进行加密后存储以更新所述数据文件,所述安全存储模块根据所述向量数组和所述预置数组的新内存空间的初始地址和新内存空间偏移地址生成第二新向量数组,使用预置密钥对第二新向量数组进行加密得到新加解密密钥,使用所述新加解密密钥对所述文件密钥进行加密得到新文件密钥文件,并将所述新文件密钥文件存储为文件密钥文件;
如果否,所述向量数组和所述预置数组的当前内存空间的初始地址和当前内存空间偏移地址生成第一新向量数组,使用预置密钥对所述第一新向量数组进行加密得到加解密密钥所述安全存储模块读取文件密钥文件,使用所述加解密密钥对所述文件密钥文件进行解密得到文件密钥,使用所述文件密钥对待写数据进行加密后存储以生成数据文件,所述安全存储模块根据所述向量数组和所述预置数组的新内存空间的初始地址和新内存空间偏移地址生成第二新向量数组,使用预置密钥对第二新向量数组进行加密得到新加解密密钥,使用新加解密密钥对所述文件密钥加密后得到新文件密钥文件,并将所述新文件密钥文件存储为文件密钥文件;
当安全访问接口为安全读接口时,所述安全存储模块根据所述向量数组和所述预置数组的当前内存空间的初始地址和当前内存空间偏移地址生成第一新向量数组,使用预置密钥对所述第一新向量数组进行加密得到加解密密钥,所述安全存储模块读取文件密钥文件,使用所述加解密密钥对所述文件密钥文件进行解密得到文件密钥,使用所述文件密钥对读取的数据进行解密后获取解密数据,向所述应用程序返回所述解密数据,根据所述向量数组和所述预置数组的新内存空间的初始地址和新内存空间偏移地址生成第二新向量数组,使用预置密钥对所述第二新向量数组进行加密得到新加解密密钥,使用所述新加解密密钥对所述文件密钥进行加密后得到新文件密钥文件,并将新文件密钥文件存储为文件密钥文件。
16.如权利要求1所述方法,其特征在于,所述安全存储模块的安全访问接口包括安全读接口和/或安全写接口;
所述步骤106具体为:
当安全访问接口为安全写接口时,所述安全存储模块生成随机数,将所述随机数作为文件密钥,使用文件密钥对待写数据进行加密后存储,根据所述向量数组和所述预置数组的新内存空间的初始地址和新内存空间偏移地址生成第二新向量数组,使用预置密钥对所述第二新向量数组进行加密得到加解密密钥,使用所述加解密密钥对所述文件密钥进行加密后得到文件密钥文件并存储;
当安全访问接口为安全读接口时,所述安全存储模块根据所述向量数组和所述预置数组的当前内存空间的初始地址和当前内存空间偏移地址生成第一新向量数组,使用预置密钥对所述第一新向量数组进行加密得到加解密密钥,所述安全存储模块读取文件密钥文件,使用所述加解密密钥对文件密钥文件进行解密得到文件密钥,使用文件密钥对读取的数据进行解密后获取解密数据,向所述应用程序返回所述解密数据;生成随机数,将所述随机数作为新文件密钥,使用新文件密钥对所述解密数据进行加密和存储,根据所述向量数组和所述预置数组的新内存空间的初始地址和新内存空间偏移地址生成第二新向量数组,使用预置密钥对所述第二新向量数组进行加密得到新加解密密钥,使用新加解密密钥对新文件密钥进行加密后生成新文件密钥文件,将所述新文件密钥文件存储为文件密钥文件。
17.如权利要求1所述方法,其特征在于,所述安全存储模块的安全访问接口包括安全读接口和/或安全写接口;
步骤106具体为:
当所述安全访问接口为安全写接口时,所述安全存储模块判断是否存在待写数据对应的数据文件,
如果是,所述安全存储模块根据所述数据文件读取数据,所述安全存储模块根据所述向量数组和所述预置数组的当前内存空间的初始地址和当前内存空间偏移地址生成第一新向量数组,使用预置密钥对所述第一新向量数组进行加密得到加解密密钥,所述安全存储模块读取文件密钥文件,使用所述加解密密钥对所述文件密钥文件进行解密得到文件密钥,使用所述文件密钥对读取的数据进行解密后得到解密数据,并根据待写数据对所述解密数据进行修改;生成随机数,将所述随机数作为新文件密钥,使用所述新文件密钥对修改后的解密数据进行加密后存储以更新所述数据文件,根据所述向量数组和所述预置数组的新内存空间的初始地址和新内存空间偏移地址生成第二新向量数组,使用预置密钥对所述第二新向量数组进行加密得到新加解密密钥,使用所述新加解密密钥对新文件密钥进行加密得到新文件密钥文件,将所述新文件密钥文件作为文件密钥文件;
如果否,所述安全存储模块生成随机数,将所述随机数作为文件密钥,使用所述文件密钥对写入数据进行加密后存储以生成数据文件,根据所述向量数组和所述预置数组的新内存空间的初始地址和新内存空间偏移地址生成第二新向量数组,使用预置密钥对所述第二新向量数组进行加密得到加解密密钥,使用所述加解密密钥对所述文件密钥进行加密后得到文件密钥文件并存储;
当所述安全访问接口为安全读接口时,所述安全存储模块根据所述向量数组和所述预置数组的当前内存空间的初始地址和当前内存空间偏移地址生成第一新向量数组,使用预置密钥对所述第一新向量数组进行加密得到加解密密钥,所述安全存储模块读取文件密钥文件,使用所述加解密密钥对所述文件密钥文件进行解密得到文件密钥,使用所述文件密钥对读取的数据进行解密后获取解密数据,向所述应用程序返回所述解密数据;生成随机数,将所述随机数作为新文件密钥,使用所述新文件密钥对所述解密数据进行加密后存储,根据所述向量数组和所述预置数组的新内存空间的初始地址和新内存空间偏移地址生成第二新向量数组,使用预置密钥对所述第二新向量数组进行加密得到新加解密密钥,使用所述新加解密密钥对所述新文件密钥进行加密得到新文件密钥文件,将所述新文件密钥文件存储为文件密钥文件。
18.如权利要求11所述方法,其特征在于,步骤106之前还包括:所述安全存储模块判断文件密钥文件是否存在,如果是,执行步骤106,如果否,当安全访问接口为安全写接口时,所述安全存储模块生成随机数,将所述随机数作为文件密钥,使用预置密钥对向量数组进行加密得到加解密密钥,使用加解密密钥对文件密钥加密得到文件密钥文件,执行步骤106;
当安全访问接口为安全读接口时,所述安全存储模块报错。
19.一种处理数据的装置,其特征在于,所述装置包括至少一个处理器、存储器及存储在所述存储器上并可被所述至少一个处理器执行的指令,所述至少一个处理器执行所述指令以实现权利要求1至18任一项所述的方法。
20.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行如权利要求1至18任一项所述的方法。
21.一种芯片,其特征在于,所述芯片与存储器耦合,用于执行所述存储器中存储的计算机程序,以执行权利要求1至18任一项所述的方法。
说明书 :
一种处理数据的方法、装置、计算机可读存储介质及装置
技术领域
背景技术
的安全,需要对数据进行加解密处理,数据的加解密处理需要使用密钥,而现有技术中生成
密钥的参数通常比较单一,在多次需要重复生成密钥的过程中,生成密钥的参数容易被破
解,因此在数据的处理过程中存在安全隐患。
发明内容
为预置数组的当前内存空间的初始地址和当前内存空间偏移地址。
法。
片,该芯片与存储器耦合,用于执行存储器中存储的计算机程序,以执行上述方法。
数的存储位置是随机变化的,有效的防止了密钥被泄露和破解,随机变化的存储位置还参
与了密钥的运算和生成,因此密钥不容易被破解,从而提高了数据处理过程中的安全性。
附图说明
具体实施方式
本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他
实施例,都属于本发明保护的范围。
为预置数组的当前内存空间的初始地址和当前内存空间偏移地址。
存空间偏移地址上的预置数组删除,不再赘述。
始化计数值;
前向量顺序记录到当前向量数组,更新计数值;
数组的新内存空间的初始地址;安全存储模块调用随机数生成函数获取预置数组的新内存
空间偏移地址。
密钥对第二新向量数组进行加密得到加解密密钥,使用加解密密钥对待写数据进行加密后
存储;
新向量数组进行加密得到加解密密钥,使用加解密密钥对读取的数据进行解密得到解密数
据,向所述应用程序返回所述解密数据,根据向量数组和预置数组的新内存空间的初始地
址和新内存空间偏移地址生成第二新向量数组,使用预置密钥对第二新向量数组进行加密
得到新加解密密钥,使用新加解密密钥对解密数据进行加密后存储。
新向量数组进行加密得到加解密密钥,使用加解密密钥对读取的数据进行解密得到解密数
据,根据待写数据对所述解密数据进行修改,安全存储模块根据向量数组和预置数组的新
内存空间的初始地址和新内存空间偏移地址生成第二新向量数组,使用预置密钥对第二新
向量数组进行加密得到新加解密密钥,使用新加解密密钥对修改后的数据进行加密后存储
以更新所述数据文件;
密密钥,使用加解密密钥对待写数据进行加密后存储以生成数据文件;
新向量数组进行加密得到加解密密钥,所述安全存储模块读取数据,使用加解密密钥对读
取的数据进行解密得到解密数据,向所述应用程序返回所述解密数据,根据向量数组和预
置数组的新内存空间的初始地址和新内存空间偏移地址生成第二新向量数组,使用预置密
钥对第二新向量数组进行加密得到新加解密密钥,使用新加解密密钥对解密数据进行加密
后存储。
述向量数组、所述预置数组的当前内存空间的初始地址和当前内存空间偏移地址进行异或
运算得到第一新向量数组;
内存空间偏移地址进行异或运算生成第二新向量数组;
运算结果与第三者进行异或运算得到第一新向量数组;
结果与第三者进行异或运算得到第二新向量数组。
为文件密钥,使用预置密钥对向量数组进行加密得到加解密密钥,使用加解密密钥对文件
密钥加密得到文件密钥文件,执行步骤106;当安全访问接口为安全读接口时,安全存储模
块报错;
模块使用文件密钥对待处理数据进行处理。
进行解密得到文件密钥;安全存储模块读取数据,使用文件密钥对读取的数据进行解密得
到解密数据,向所述应用程序返回所述解密数据;生成随机数,将随机数作为新文件密钥,
安全存储模块使用新文件密钥对解密数据进行加密后存储;使用加解密密钥对新文件密钥
进行加密生成新文件密钥文件,将新文件密钥文件存储为文件密钥文件;
密密钥对文件密钥进行加密生成文件密钥文件并保存。
进行解密得到文件密钥;安全存储模块读取数据,使用文件密钥对读取的数据进行解密后
获取解密数据,向所述应用程序返回所述解密数据;生成随机数,将随机数作为新文件密
钥,安全存储模块使用新文件密钥对解密数据进行加密后存储;根据加解密密钥对新文件
密钥进行加密得到新文件密钥文件,将新文件密钥文件存储为文件密钥文件;
据数据文件读取数据,使用文件密钥对读取的数据进行解密后获取解密数据,根据所述待
写数据对所述解密数据进行修改,生成随机数,将随机数作为新文件密钥, 使用新文件密
钥对修改后的数据进行加密后存储以更新所述数据文件,安全存储模块使用加解密密钥对
新文件密钥进行加密得到新文件密钥文件,将新文件密钥文件存储为文件密钥文件;
行加密得到新文件密钥文件,将新文件密钥文件存储为文件密钥文件。
为文件密钥,使用预置密钥对向量数组进行加密得到加解密密钥,使用加解密密钥对文件
密钥加密得到文件密钥文件,执行步骤106;当安全访问接口为安全读接口时,安全存储模
块报错;
储模块读取文件密钥文件,使用加解密密钥对文件密钥文件进行解密得到文件密钥,使用
文件密钥对待写数据进行加密后存储,安全存储模块根据向量数组和预置数组的新内存空
间的初始地址和新内存空间偏移地址生成第二新向量数组,使用预置密钥对第二新向量数
组进行加密得到新加解密密钥,使用新加解密密钥对文件密钥加密得到新文件密钥文件,
并将新文件密钥文件存储为文件密钥文件;
新向量数组进行加密得到加解密密钥,安全存储模块读取文件密钥文件,使用加解密密钥
对文件密钥文件进行解密得到文件密钥,使用文件密钥对读取的数据进行解密后获取解密
数据,向应用程序返回所述解密数据,根据向量数组和预置数组的新内存空间的初始地址
和新内存空间偏移地址生成第二新向量数组,使用预置密钥对第二新向量数组进行加密得
到新加解密密钥,使用新加解密密钥对文件密钥进行加密得到新文件密钥文件,并将新文
件密钥文件存储为文件密钥文件。
为文件密钥,使用预置密钥对向量数组进行加密得到加解密密钥,使用加解密密钥对文件
密钥加密得到文件密钥文件,执行步骤106;当安全访问接口为安全读接口时,安全存储模
块报错;
置密钥对第一新向量数组进行加密得到加解密密钥,安全存储模块读取文件密钥文件,使
用加解密密钥对文件密钥文件进行解密得到文件密钥,使用文件密钥对读取的数据进行解
密得到解密数据,根据所述待写数据对解密数据进行修改,,使用文件密钥对修改后的解密
数据进行加密后存储以更新所述数据文件,安全存储模块根据向量数组和预置数组的新内
存空间的初始地址和新内存空间偏移地址生成第二新向量数组,使用预置密钥对第二新向
量数组进行加密得到新加解密密钥,使用新加解密密钥对文件密钥进行加密得到新文件密
钥文件,并将新文件密钥文件存储为文件密钥文件;
安全存储模块读取文件密钥文件,使用加解密密钥对文件密钥文件进行解密得到文件密
钥,使用文件密钥对待写数据进行加密后存储以生成数据文件,安全存储模块根据向量数
组和预置数组的新内存空间的初始地址和新内存空间偏移地址生成第二新向量数组,使用
预置密钥对第二新向量数组进行加密得到新加解密密钥,使用新加解密密钥对文件密钥加
密后得到新文件密钥文件,并将新文件密钥文件存储为文件密钥文件;
新向量数组进行加密得到加解密密钥,安全存储模块读取文件密钥文件,使用加解密密钥
对文件密钥文件进行解密得到文件密钥,使用文件密钥对读取的数据进行解密后获取解密
数据,向应用程序返回解密数据,根据向量数组和预置数组的新内存空间的初始地址和新
内存空间偏移地址生成第二新向量数组,使用预置密钥对第二新向量数组进行加密得到新
加解密密钥,使用新加解密密钥对文件密钥进行加密后得到新文件密钥文件,并将新文件
密钥文件存储为文件密钥文件。
空间的初始地址和新内存空间偏移地址生成第二新向量数组,使用预置密钥对第二新向量
数组进行加密得到加解密密钥,使用加解密密钥对新文件密钥进行加密后得到新文件密钥
文件并存储,并将新文件密钥文件存储为文件密钥文件;
新向量数组进行加密得到加解密密钥,安全存储模块读取文件密钥文件,使用加解密密钥
对文件密钥文件进行解密得到文件密钥,使用文件密钥对数据进行解密后获取解密数据,
向所述应用程序返回所述解密数据;生成随机数,将随机数作为新文件密钥,使用新文件密
钥对所述解密数据进行加密和存储,根据向量数组和预置数组的新内存空间的初始地址和
新内存空间偏移地址生成第二新向量数组,使用预置密钥对第二新向量数组进行加密得到
新加解密密钥,使用新加解密密钥对新文件密钥进行加密后生成新文件密钥文件,将新文
件密钥文件存储为文件密钥文件。
置密钥对第一新向量数组进行加密得到加解密密钥,安全存储模块读取文件密钥文件,使
用加解密密钥对文件密钥文件进行解密得到文件密钥,使用文件密钥对读取的数据进行解
密后得到解密数据,并根据待写数据对解密数据进行修改,生成随机数,将随机数作为新文
件密钥,使用新文件密钥对修改后的解密数据进行加密后存储以更新数据文件,根据向量
数组和预置数组的新内存空间的初始地址和新内存空间偏移地址生成第二新向量数组,使
用预置密钥对第二新向量数组进行加密得到新加解密密钥,使用加新解密密钥对新文件密
钥进行加密得到新文件密钥文件,将新文件密钥文件作为文件密钥文件;
地址和新内存空间偏移地址生成第二新向量数组,使用预置密钥对第二新向量数组进行加
密得到加解密密钥,使用加解密密钥对新文件密钥进行加密后得到新文件密钥文件,并将
新文件密钥文件存储为文件密钥文件;
新向量数组进行加密得到加解密密钥,安全存储模块读取文件密钥文件,使用加解密密钥
对文件密钥文件进行解密得到文件密钥,使用文件密钥对读取的数据进行解密后获取解密
数据,向应用程序返回所述解密数据;生成随机数,将随机数作为新文件密钥,使用所述新
文件密钥对所述解密数据进行加密后存储,根据向量数组和预置数组的新内存空间的初始
地址和新内存空间偏移地址生成第二新向量数组,使用预置密钥对第二新向量数组进行加
密得到新加解密密钥,使用新加解密密钥对新文件密钥进行加密得到新文件密钥文件,将
新文件密钥文件存储为文件密钥文件。
文,inLen表示原文长度,filePath表示文件路径;
据,outLen用于接收读取到的数据的长度,filePath表示文件路径;
函数具体为:objectForKey,输入参数为键的信息,具体为:kSecAttrDescription;
数据长度为0时,不存在预置密钥。
向量数组进行加密,得到加解密密钥,使用加解密密钥对文件密钥和第一哈希值进行加密
得到文件密钥加密数据,根据文件密钥加密数据生成文件密钥文件,执行步骤206;
0xF2,0x3A,0xE2,0x29,0x20,0xE3,0x13,0x67,0xEB,0x29,0x77,0x68,0x62,0x86,0x3F},
对文件密钥进行哈希运算,生成第一哈希值:{0x6C,0x1B,0x3F,0xC3,0x47,0x24,0x60,
0x39,0x08,0x91,0x7B,0x11,0x00,0x86,0x90,0xC3,0x86,0x38,0x9C,0xD6,0x3E,0xC2,
0x13,0xA4,0x58,0x27,0x4D,0xF0,0xB3,0xB1,0x58,0x53};
空间的初始地址;
小于内存空间的长度与预置数组长度的差值;
计数值;
值,根据当前索引值得到预置数组中与其对应的数值作为当前向量, 将当前向量顺序记录
到当前向量数组,并将计数值加1得到当前计数值;
0x81,0x22,0x15,0x21,0x9a,0x91,0xb2,0xc8,0x85,0x0e,0x47,0x74,0xdc,0xb7,0xe1,
0xb8,0x24,0xba,0xe5,0x9d,0x67,0x50,0xe8,0x07,0xf5,0x92,0xa4,0x0e,0x67,0x5d,
0x9b,0x10,0xcd,0x9c,0x3b,0xce,0x97,0x7a,0x25,0x38,0xe4,0x85,0x50,0x3e,0xd3,
0xe7,0x94,0x6e,0x44,0x61,0x3e,0x2c,0x6f,0xfe,0xb5,0xf4,0xc1,0xab,0x73,0xa4,
0x26,0xed,0xe8,0x53,0x89,0xf2,0x9a,0x53,0xe6,0x58,0xb1,0x2b,0x0b,0xeb,0x6c,
0xa9,0x30,0x29,0xde,0x19,0x4b,0x4a,0x73,0x6f,0x7e,0xf0,0xf4,0x0c,0x98,0x57,
0x41,0x08,0xaf,0x4a,0xbc,0x4c,0x96,0x65,0xb8,0x68,0xcc,0x85,0xbb,0x80,0xa2,
0xf0,0x0e,0x1a,0x8b,0xae,0x21,0x07,0x4d,0xdd,0x3c,0xf5,0xdd,0xba,0x1e,0x4f,
0xb2,0x5f,0xba,0x81,0x3b,0x2f,0x0d,0x68,0x57,0xac,0x4f,0x90,0x43,0x4f,0x5f,
0x10,0x9a,0x37,0x55,0xa3,0x95,0xbb,0xdc,0x24,0xd1,0xd2,0xf4,0x8e,0x50,0xea,
0xcf,0xc6,0x9e,0xc7,0x2b,0x66,0xb5,0xa7,0xae,0x61,0x7f,0x81,0x84,0xaf,0x7c,
0x81,0xab,0xd0,0x38,0x50,0x4b,0x58,0x33,0x71,0x29,0x74,0x04,0x8e,0x70,0xa6,
0x20,0x4a,0xfa,0x39,0x99,0x4a,0xf3,0xee,0x09,0x38,0x49,0x96,0x9f,0x0b,0x11,
0x3b,0xfa,0x2a,0x5d,0xc2,0xe6,0x32,0xf2,0xdf,0x2c,0xee,0x7e,0x76,0x7c,0xc3,
0xb8,0x96,0x25,0x9f,0x05,0x04,0xe0,0x07,0xa3,0x35,0x7c,0x71,0xf2,0xd5,0xc1,
0xff,0x3a,0xf5,0xe0,0x66,0x14,0x13,0x2d,0x66,0xd2,0x2e,0xe1,0x5f,0xdd,0x60,
0xe8,0x0a,0x11,0xae,0xc8,0x8a,0xc8,0x44,0xf5,0x73,0xf7,0x3c,0x58,0x58,0x2e,
0x47,0xc0,0xe0,0x0c,0xfb,0x1e,0x45,0xf4,0x10,0xc8,0x13,0x6f,0x73,0x1c,0xae,
0x2f,0x76,0x30,0x70,0x5c,0x3d,0xa5,0x3c,0x38,0x49,0xf4,0xdb,0x4e,0x0d,0xa8,
0x0a,0x6e,0x1a,0xa8,0x31,0x2f,0x14,0x59,0x47,0x49,0xf0,0xc2,0x12,0xb2,0xfb,
0x10,0xf1,0xd6,0x07,0xed,0xb0,0x5d,0x8a,0xe0,0xeb,0x74,0x1d,0xbf,0xf3,0xcc,
0xac,0x31,0x89,0x31,0xcf,0x53,0xc0,0xa5,0x56,0xf4,0xd7,0x0d,0x3b,0xc6,0xc4,
0x96,0x3b,0x3a,0x8c,0x53,0x5b,0xa0,0x60,0xd2,0xff,0xf9,0x00,0x9d,0x01,0xfe,
0xc1,0xd2,0x2c,0x03,0x57,0x21,0xe6,0x5f,0x6b,0x1d,0xb7,0x11,0xbc,0xa7,0xe3,
0x88,0xd4,0x03,0xa2,0x26,0x63,0x0e,0xde,0x56,0x2b,0xca,0xc6,0xd9,0x9b,0xbd,
0x17,0xf0,0xc5,0x56,0xfb,0x63,0x7c,0xd1,0x65,0x7f,0x12,0x6f,0x4d,0xdb,0x06,
0xbb,0xa1,0xcc,0xc2,0x4f,0x78,0x9a,0x29,0xa9,0x60,0x1c,0x60,0x35,0x4f,0x65,
0xac,0xe1,0xc6,0x13,0x77,0x13,0xde,0x4d,0x45,0x94,0x18,0xcf,0xb1,0x3b,0xf3,
0x8e,0x47,0xcd,0xaa,0x6a,0xd8,0xc0,0x28,0x2d,0x5c,0x2d,0xad,0x4f,0x1e,0xee,
0x8e,0x84,0x1d,0xa9,0xdc,0xd7,0xc1,0x77,0xd6,0x42,0xb6,0x43,0x03,0xea,0xed,
0xff,0xaf,0x41,0x7d,0x21,0x82,0x3b,0xa3,0x28,0xb6,0xe8,0x45,0x32,0xc0,0x4c,
0xbf,0xea,0x56,0x5b,0x23,0x5f,0x6f,0xb3,0x00,0xc5,0x71,0x81,0xed,0xb3,0x0f,
0xa8,0x2b,0x06,0xad,0x85,0x12,0x04,0x85,0x0f,0xfa,0x1c,0x39,0x5b,0xa0,0x0a,
0x1b,0x1c,0x7c,0x85,0x1a,0x61,0x25,0x19,0xe0,0xb1,0x1f,0xdb,0x55,0x11,0x43,
0x5b,0xdf,0xb8,0x44,0xd3,0xd5,0x20,0xfa,0xb6,0xd5,0x3a,0x94,0xb0,0xe6,0xff,
0x6c,0x6d,0xad,0x34,0xa2,0xaa,0x2d,0xb1,0x0f,0x57,0x77,0x89,0x9a,0x59,0x13,
0x5f,0xfd,0x47,0xfc,0xe0,0xdc,0x51,0x75,0x8a,0x0f,0xf2,0x2c,0x66,0x94,0x2d,
0x44,0x6d,0x17,0x1f,0xdc,0xb2,0xf3,0xbd,0x4c,0xeb,0x0d,0xd4,0xeb,0x11,0x43,
0x88,0xb0,0x0e,0x9a,0x49,0xa5,0x77,0x0c,0xf8,0x04,0x4a,0x35,0x9f,0x1b,0x26,
0x46,0x96,0x9d,0x97,0x83,0xa9,0xca,0x45,0x20,0xf2,0x67,0x77,0x58,0x18,0x04,
0xf5,0x30,0xe3,0xc7,0xd7,0xbb,0xbc,0xd3,0x1a,0x0a,0x94,0x76,0xbb,0xc6,0x49,
0xff,0x7c,0x1e,0x3d,0xba,0x68,0x98,0xf7,0x97,0x6f,0xb7,0xbb,0x8c,0x70,0x66,
0x99,0xee,0x27,0xa7,0x53,0x8d,0x7d,0x4b,0x00,0xdf,0x9e,0x2e,0x7a,0x1a,0x40,
0xcf,0x0d,0x20,0x61,0x04,0x87,0x9d,0x0b,0x5c,0x92,0x45,0x08,0x04,0x27,0x9e,
0x0c,0x52,0x1c,0xff,0xfc,0xe7,0xab,0x70,0x0d,0xa7,0xc2,0x27,0xfb,0x87,0xbb,
0xf3,0xd7,0x80,0x99,0x0b,0xc6,0x34,0xb0,0x2c,0xb2,0x79,0x1d,0x3d,0x22,0xac,
0x72,0x25,0x95,0x3e,0x8b,0xae,0x9b,0x4a,0x9b,0x5f,0x07,0xfc,0x7b,0xe4,0x17,
0xec,0x26,0xf7,0xf7,0x94,0xac,0x05,0x71,0x16,0x7e,0xa9,0x77,0x45,0x83,0x80,
0x3c,0xee,0x22,0x89,0x58,0x5d,0xf2,0xbc,0x19,0x91,0x3c,0x88,0xc9,0x70,0xd0,
0x79,0xe3,0xfc,0x4c,0xcf,0x04,0xfb,0x80,0xb5,0xe6,0xa4,0x34,0x37,0xe6,0xc0,
0x48,0x96,0x29,0x5c,0xdd,0xb9,0x59,0xf6,0xda,0x00,0x86,0x4f,0xf2,0xe2,0x54,
0xf7,0xcd,0x36,0xd0,0x9e,0x07,0xc5,0xec,0x65,0x34,0x18,0x01,0xc9,0x2d,0x95,
0x64,0x72,0x04,0xbe,0xba,0x85,0x09,0x7b,0x4d,0x97,0xb9,0x8a,0x3a,0xb2,0x15,
0x2e,0xed,0xe2,0x93,0x9f,0x96,0x70,0x26,0x41,0xea,0x04,0x28,0xee,0x70,0x89,
0x21,0x8e,0x57,0x31,0x60,0xc6,0xa1,0xb5,0x32,0xbd,0xc9,0xbe,0xc9,0x50,0x82,
0x02,0x23,0xa6,0xdf,0x1c,0x6c,0x17,0xc0,0x1c,0x8a,0xfa,0x7b,0xe4,0x89,0x85,
0x80,0x64,0x5f,0x21,0xb0,0x72,0x85,0x5f,0xe7,0xd7,0x6e,0xf4,0x6c,0xfd,0x11,
0x2d,0x20,0xef,0xec,0xc3,0x9d,0x0a,0xa7,0xf3,0xff,0x97,0xc4,0x4e,0x16,0xd3,
0x14,0x4b,0x4d,0xab,0x63,0x49,0x36,0xe4,0x3a,0x07,0xa7,0x2a,0x54,0xdf,0x82,
0xfa,0xbf,0x17,0x3e,0xd0,0xdd,0xf8,0xa2,0xf3,0x46,0xe6,0xb9,0xbc,0x58,0xa3,
0xa4,0x43,0x87,0x86,0x8a,0x86,0x9f,0xb3,0xf4,0x6e,0x00,0x09,0xbd,0xb4,0x7b,
0xa0,0x78,0xa0,0x11,0xf1,0x4a,0x1b,0xfd,0xce,0x15,0xed,0x83,0x98,0x18,0x09,
0x75,0x0c,0x5c,0xd6,0xbe,0x4b,0x14,0xd8,0xa5,0xa7,0x58,0xae,0x0d,0x22,0x7f,
0xa2,0x14,0xc7,0x45,0x8a,0x08,0xac,0x2f,0x8b,0x28,0x0d,0x74,0xc6,0x9c,0xfd,
0xc7,0xb2,0x9a,0x38,0x8f,0x1e,0x8d,0xb2,0xfd,0xa1,0x3f,0x9f,0x52,0x60,0x21,
0x67,0x40,0xef,0x88,0xdd,0xc8,0x7e,0x8a,0xb2,0xfc,0x69,0x20,0xc0,0xad,0x91,
0x8b,0xa9,0xeb,0xf1,0xd1,0xe0,0x68,0xdd,0x92,0x91,0x41,0x84,0xa8,0x4b,0x7b},
预设索引值为10,预设索引值获取预置数组中与其对应的数值为0xbe,将0xbe记录到空数
组以生成当前向量数组,记录计数值为1, 将预设索引值10作为上一个索引值,并将预置向
量0xbe作为上一个向量,安全存储模块获取上一个向量0xbe与第一预定值128的取余结果
62、上一个索引值10和第二预定值64的和136,获取的和136与预置数组的长度1024取余得
到当前索引值136,根据当前索引值得到预置数组中与其对应的数值0xba作为当前向量,
将当前向量顺序记录到当前向量数组,并将计数值加1得到当前计数值2,当判断当前计数
值小于16时,则将当前索引值136设置为上一个索引值,将当前向量0xba设置为上一个向
量,再次执行步骤a6,依次类推,直到当前计数值等于16时,则生成的当前向量数组具体为:
{0xbE,0xba,0x60,0x60,0xDC,0xA9,0xC9,0xC6,0x53,0x05,0x0D,0x88,0x4F,0xA5,0xD7,
0xA6},即为根据获取的预置向量数组生成的向量数组。
0x3F,0x82,0x79,0xB6,0xD8,0xF4,0x03,0x1A,0xA7,0x2C,0x12,0x98,0x0B,0x70,0x22,
0x44,0x42,0x48,0x71,0xE5,0x04,0xE6,0x2B,0x1F,0x01,0xA5,0x6E,0x79,0x11,0x92,
0xFF,0x8F,0xC5,0x04,0x15,0x23,0xCA,0xFA,0x96,0xB3,0x71,0x11,0x8D,0xCF,0x4B,
0x86,0xEA,0x99,0xE8,0xB3,0xA8,0x1F,0x92,0x3D,0x30,0xFA,0x21,0xC0}。
文件密钥文件存在,当调用结果为‑1时,则文件密钥文件不存在。
件密钥文件进行解密得到文件密钥以及第二哈希值;
size, size_t count, FILE* stream),其中输入参数为:接收数据变量,读取的每个元素
大小,读取的元素个数,文件对象指针;
0x48,0x71,0xE5,0x04,0xE6,0x2B,0x1F,0x01,0xA5,0x6E,0x79,0x11,0x92,0xFF,0x8F,
0xC5,0x04,0x15,0x23,0xCA,0xFA,0x96,0xB3,0x71,0x11,0x8D,0xCF,0x4B,0x86,0xEA,
0x99,0xE8,0xB3,0xA8,0x1F,0x92,0x3D,0x30,0xFA,0x21,0xC0} ,
{0xD8,0x19,0xE8,0xF7,0xC7,0x85,0x1C,0xA0,0x23,0xD1,0x65,0xB1,0xAF,0xB6,0xDE,
0x3F}。
件,结束;
块根据安全写接口的传入参数中的文件名和文件路径创建数据文件,执行步骤208;
存在与文件名和文件路径对应的数据文件,当调用结果为‑1时,则不存在与文件名和文件
路径对应的数据文件。
组,并将预置数组的新内存空间的初始地址和新内存空间偏移地址存储为预置数组的当前
内存空间的初始地址和当前内存空间偏移地址。
函数具体为:objectForKey,输入参数为键的信息,具体为:kSecAttrDescription;
数据长度为0时,不存在预置密钥。
文件密钥文件存在,当调用结果为‑1时,则文件密钥文件不存在。
件密钥文件进行解密得到文件密钥以及第四哈希值;
size, size_t count, FILE* stream),其中输入参数为:接收数据变量,读取的每个元素
大小,读取的元素个数,文件对象指针;
0x71,0xE5,0x04,0xE6,0x2B,0x1F,0x01,0xA5,0x6E,0x79,0x11,0x92,0xFF,0x8F,0xC5,
0x04,0x15,0x23,0xCA,0xFA,0x96,0xB3,0x71,0x11,0x8D,0xCF,0x4B,0x86,0xEA,0x99,
0xE8,0xB3,0xA8,0x1F,0x92,0x3D,0x30,0xFA,0x21,0xC0} ,
存在与文件名和文件路径对应的文件,当调用结果为‑1时,则不存在与文件名和文件路径
对应的文件。
置数组,并将预置数组的新内存空间的初始地址和新内存空间偏移地址存储为预置数组的
当前内存空间的初始地址和当前内存空间偏移地址。
的当前内存空间的初始地址和当前内存空间偏移地址;结束。
的当前内存空间的初始地址和当前内存空间偏移地址;
置密钥对第二新向量数组进行加密得到加解密密钥,使用加解密密钥对数据进行加密后存
储;
加密得到加解密密钥,使用加解密密钥对读取的数据进行解密得到解密数据,向所述应用
程序返回所述解密数据,根据向量数组和预置数组的新内存空间的初始地址和新内存空间
偏移地址生成第二新向量数组,使用预置密钥对第二新向量数组进行加密得到新加解密密
钥,使用新加解密密钥对读取的数据进行加密后存储。
预置密钥对第一新向量数组进行加密得到加解密密钥,使用加解密密钥对读取的数据进行
解密得到解密数据,对解密数据进行修改,安全存储模块根据向量数组和预置数组的新内
存空间的初始地址和新内存空间偏移地址生成第二新向量数组,使用预置密钥对第二新向
量数组进行加密得到新加解密密钥,使用新加解密密钥对修改后的解密数据进行加密后存
储以更新数据文件;
行加密得到加解密密钥,使用加解密密钥对待写数据进行加密后存储以生成数据文件;
加密得到加解密密钥,安全存储模块读取数据,使用加解密密钥对读取的数据进行解密得
到解密数据,向应用程序返回解密数据,根据向量数组和预置数组的新内存空间的初始地
址和新内存空间偏移地址生成第二新向量数组,使用预置密钥对第二新向量数组进行加密
得到新加解密密钥,使用新加解密密钥对解密数据进行加密后存储;
前内存空间偏移地址进行异或运算得到第一新向量数组;
移地址进行异或运算生成第二新向量数组。
钥文件进行解密得到文件密钥;安全存储模块根据数据文件读取数据,使用文件密钥对读
取的数据进行解密后得到解密数据,向应用程序返回解密数据;生成随机数,将所随机数作
为新文件密钥,使用新文件密钥对解密数据进行加密后存储,使用加解密密钥对新文件密
钥进行加密生成新文件密钥文件,将新文件密钥文件存储为文件密钥文件;
对第一新向量数组进行加密得到加解密密钥,安全存储模块生成随机数,将随机数作为文
件密钥,安全存储模块使用文件密钥对待写数据进行加密后存储,根据加解密密钥对文件
密钥进行加密生成文件密钥文件并保存。
用文件密钥对读取得数据进行解密后得到解密数据,向应用程序返回解密数据;生成随机
数,将随机数作为新文件密钥,安全存储模块使用新文件密钥对解密数据进行加密后存储
以更新数据文件;根据加解密密钥对新文件密钥进行加密得到新文件密钥文件,将新文件
密钥文件保存为文件密钥文件;
据数据文件读取数据,使用文件密钥对读取的数据进行解密后得到解密数据,对解密数据
进行修改,生成随机数,将随机数作为新文件密钥, 使用新文件密钥对修改后的解密数据
进行加密后存储以更新数据文件,安全存储模块使用加解密密钥对新文件密钥进行加密得
到新文件密钥文件,将新文件密钥文件保存为文件密钥;
件并保存。
使用预置密钥对第一新向量数组进行加密得到加解密密钥,安全存储模块读取文件密钥文
件,使用加解密密钥对文件密钥文件进行解密得到文件密钥,使用文件密钥对待写数据进
行加密后存储,安全存储模块根据向量数组和预置数组的新内存空间的初始地址和新内存
空间偏移地址生成第二新向量数组,使用预置密钥对第二新向量数组进行加密得到新加解
密密钥,使用新加解密密钥对文件密钥加密得到新文件密钥文件,并将新文件密钥文件存
储为文件密钥文件;
加密得到加解密密钥,安全存储模块读取文件密钥文件,使用加解密密钥对文件密钥文件
进行解密得到文件密钥,使用文件密钥对读取的数据进行解密后获取解密数据,向应用程
序返回解密数据,根据向量数组和预置数组的新内存空间的初始地址和新内存空间偏移地
址生成第二新向量数组,使用预置密钥对第二新向量数组进行加密得到新加解密密钥,使
用新加解密密钥对文件密钥进行加密得到新文件密钥文件,并将新文件密钥文件存储为文
件密钥文件。
置密钥对第一新向量数组进行加密得到加解密密钥,安全存储模块读取文件密钥文件,使
用加解密密钥对文件密钥文件进行解密得到文件密钥,使用文件密钥对读取的数据进行解
密后得到解密数据,对解密数据进行修改,使用文件密钥对修改后的解密数据进行加密后
存储以更新数据文件,安全存储模块根据向量数组和预置数组的新内存空间的初始地址和
新内存空间偏移地址生成第二新向量数组,使用预置密钥对第二新向量数组进行加密得到
新加解密密钥,使用新加解密密钥对文件密钥进行加密得到新文件密钥文件,并将新文件
密钥文件存储为文件密钥文件;
存储模块读取文件密钥文件,使用加解密密钥对文件密钥文件进行解密得到文件密钥,使
用文件密钥对待写数据进行加密后存储以生成数据文件,安全存储模块根据向量数组和预
置数组的新内存空间的初始地址和新内存空间偏移地址生成第二新向量数组,使用预置密
钥对第二新向量数组进行加密得到新加解密密钥,使用新加解密密钥对文件密钥加密后得
到新文件密钥文件,并将新文件密钥文件存储为文件密钥文件;
加密得到加解密密钥,安全存储模块读取文件密钥文件,使用加解密密钥对文件密钥文件
进行解密得到文件密钥,使用文件密钥对读取的数据进行解密获取解密数据,向应用程序
返回解密数据,根据向量数组和预置数组的新内存空间的初始地址和新内存空间偏移地址
生成第二新向量数组,使用预置密钥对第二新向量数组进行加密得到新加解密密钥,使用
加解密密钥对文件密钥进行加密后得到新文件密钥文件,并将新文件密钥文件存储为文件
密钥文件。
置数组的新内存空间的初始地址和新内存空间偏移地址生成第二新向量数组,使用预置密
钥对第二新向量数组进行加密得到加解密密钥,使用加解密密钥对文件密钥进行加密后得
到文件密钥文件并存储;
加密得到加解密密钥,安全存储模块读取文件密钥文件,使用加解密密钥对文件密钥文件
进行解密得到文件密钥,使用文件密钥对读取的数据进行解密,向应用程序返回所述解密
数据;生成随机数,将随机数作为新文件密钥,使用新文件密钥对所述解密数据进行加密后
存储以更新数据文件,根据向量数组和预置数组的新内存空间的初始地址和新内存空间偏
移地址生成第二新向量数组,使用预置密钥对第二新向量数组进行加密得到新加解密密
钥,使用新加解密密钥对新文件密钥进行加密后生成新文件密钥文件,将新文件密钥文件
存储为文件密钥文件。
置密钥对第一新向量数组进行加密得到加解密密钥,安全存储模块读取文件密钥文件,使
用加解密密钥对文件密钥文件进行解密得到文件密钥,使用文件密钥对读取的数据进行解
密后得到解密数据,并对解密数据进行修改,生成随机数,将随机数作为新文件密钥,使用
新文件密钥对修改后的解密数据进行加密后存储以更新数据文件,根据向量数组和预置数
组的新内存空间的初始地址和新内存空间偏移地址生成第二新向量数组,使用预置密钥对
第二新向量数组进行加密得到新加解密密钥,使用新加解密密钥对新文件密钥进行加密得
到新文件密钥文件,将新文件密钥文件作为文件密钥文件;
和新内存空间偏移地址生成第二新向量数组,使用预置密钥对第二新向量数组进行加密得
到加解密密钥,使用加解密密钥对文件密钥进行加密后得到文件密钥文件并存储;
加密得到加解密密钥,安全存储模块读取文件密钥文件,使用加解密密钥对文件密钥文件
进行解密得到文件密钥,使用文件密钥对读取的数据进行解密向应用程序返回解密数据;
生成随机数,将随机数作为新文件密钥,使用新文件密钥对解密数据进行加密并存储以更
新数据文件;根据向量数组和预置数组的新内存空间的初始地址和新内存空间偏移地址生
成第二新向量数组,使用预置密钥对第二新向量数组进行加密得到加解密密钥,使用新加
解密密钥对新文件密钥进行加密得到新文件密钥文件,将新文件密钥文件存储为文件密钥
文件。
行该指令以实现上述实施例中的一种处理数据的方法。该装置是芯片系统时,可以由芯片
构成,也可以包含芯片和其他分立器件,本申请实施例对此不作具体限定;该芯片与存储器
耦合,用于执行存储器中存储的计算机程序,以执行上述实施例中公开的处理数据的方法。
程序产品包括一个或多个计算机程序。在加载和执行计算机程序时,全部或部分地产生按
照本申请实施例的流程或功能。该计算机程序可以存储在计算机可读存储介质中,或者从
一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一
个基站、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital
subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个基站、服务器或数
据中心进行传输。计算机可读存储介质可以是本发明的装置能够存取的任何可用介质或者
是包含一个或多个可以用介质集成的服务器、数据中心等数据存储设备。可用介质可以是
磁性介质(例如,软盘、硬盘、磁带),光介质(例如,DVD)、 或者半导体介质(例如固态硬盘
(solid state disk,SSD))等。
开实施例的其他变化。在权利要求中,“包括”(comprising)一词不排除其他组成部分或步
骤,“一”或“一个”不排除多个的情况。单个处理器或其他单元可以实现权利要求中列举的
若干项功能。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能组
合起来产生良好的效果。
本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。