一种事务日志的处理方法、存储介质与设备与流程

文档序号:37340304发布日期:2024-03-18 18:09阅读:11来源:国知局
一种事务日志的处理方法、存储介质与设备与流程

本发明涉及数据库技术,特别是涉及一种事务日志的处理方法、存储介质与设备。


背景技术:

1、在kingbasees数据库(简称kes数据库)中,事务日志其实指的是xlog日志(或称为wal日志)。为了防止从xlog日志泄漏用户信息,需要对xlog日志记录有用户数据的数据区进行加密保护。现有的xlog日志的加密方法和解密方法是在xlog日志的写流程对xlog日志进行加密,并在xlog日志的读流程对xlog日志进行自动解密。

2、然而,在现有的xlog日志加密方法和解密方法中,没有记录xlog日志的数据区中各个部分的每个data数据块加密后的长度数据。并且由于现有的加密算法(如sm4)会对加密的数据进行对齐,并在对加密的数据进行对齐之后将记录的长度数据由加密前的明文长度更新为加密后的密文长度,导致在xlog日志中各个部分的每个data数据块完成加密后,在xlog日志的读流程中,既无法获取到xlog日志的数据区中各个部分的每个data数据块的密文长度,也无法直接获取到xlog日志的数据区中各个部分的每个data数据块的明文长度并根据每个data数据块的明文长度来推算每个data数据块的密文长度。因此,使用现有的xlog日志的解密方法,无法准确对加密后的xlog日志的数据区中的各个部分进行解码以准确获取xlog日志的数据区中各个部分的每个data数据块,从而导致了无法准确地对加密后的xlog日志进行解密的问题。


技术实现思路

1、本发明的一个目的是要提供一种事务日志的处理方法,以准确分离出待解密的事务日志的各个数据块,从而提高解密的准确性。

2、本发明一个进一步的目的是要提高获取待解密的事务日志的数据块的长度信息的准确性,以提高解码待解密的事务日志的准确性。

3、根据本发明的一个方面,本发明提供了一种事务日志的处理方法,待解密的事务日志包括多个数据块,并且事务日志的处理方法包括:

4、在待解密的事务日志的读流程,获取数据块的长度信息;

5、根据数据块的长度信息解码得到待解密的事务日志的各个数据块。

6、可选地,待解密的事务日志包括事务日志头部和事务日志数据区,其中,事务日志数据区包括main data和/或至少一个block区,block区包含page data和/或tuple data,main data、page data和tuple data均包括多个data数据块;并且

7、数据块的长度信息包括在事务日志的写流程中预先写入事务日志中的预设位置的data数据块的长度信息。

8、可选地,在待解密的事务日志的读流程之前,事务日志的处理方法还包括:

9、在事务日志的写流程,在事务日志包括main data或tuple data的情况下,在事务日志数据区增设若干个预设长度的第一预设位置,其中,第一预设位置的数量与事务日志所包括的data数据块的数量相等,且第一预设位置与数据块一一对应设置;

10、在每个第一预设位置内写入和其对应的data数据块的长度信息。

11、可选地,data数据块的长度信息为data数据块的密文长度;并且

12、根据数据块的长度信息解码得到待解密的事务日志的各个数据块的流程包括:

13、根据data数据块的密文长度解码得到事务日志的各个data数据块。

14、可选地,data数据块的长度信息为data数据块的明文长度;并且

15、根据数据块的长度信息解码得到待解密的事务日志的各个数据块的流程包括:

16、根据data数据块的明文长度计算得到data数据块的密文长度;

17、根据data数据块的密文长度解码得到事务日志的各个data数据块。

18、可选地,事务日志头部包括第二预设位置;并且

19、在待解密的事务日志的读流程之前,事务日志的处理方法还包括:

20、在事务日志的写流程,在第二预设位置内写入page data的每个data数据块的长度信息;其中

21、data数据块的长度信息为page data的每个数据块的明文长度。

22、可选地,根据data数据块的明文长度计算得到data数据块的密文长度的流程包括:

23、获取加密操作的数据对齐长度;

24、根据data数据块的明文长度和数据对齐长度计算得到data数据块的密文长度。

25、可选地,根据data数据块的明文长度和数据对齐长度计算得到data数据块的密文长度的流程包括:

26、计算data数据块的明文长度除以数据对齐长度的余数;

27、判断余数是否为零;

28、若否,则计算data数据块的明文长度除以数据对齐长度的商,对商进行加一处理,并将对商进行加一处理的计算结果与数据对齐长度的乘积作为data数据块的密文长度;

29、若是,则确定data数据块的密文长度等于data数据块的明文长度。

30、根据本发明的另一个方面,还提供了一种机器可读存储介质,其上存储有机器可执行程序,机器可执行程序被处理器执行时实现上述任一种的事务日志的处理方法。

31、根据本发明的又一个方面,还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并在处理器上运行的机器可执行程序,并且处理器执行机器可执行程序时实现上述任一种的事务日志的处理方法。

32、本发明的事务日志的处理方法通过在待解密的事务日志的读流程,获取待解密的事务日志所包括的数据块的长度信息,并根据数据块的长度信息解码得到待解密的事务日志的各个数据块,以在解码事务日志的各个部分的阶段准确地对事务日志的各个待解密的数据块进行分离,保证了后续事务日志的解密操作的顺利进行,并提高了解密操作的准确性。

33、进一步地,在本发明的事务日志的处理方法中,待解密的事务日志包括多个data数据块,并且data数据块的长度信息在事务日志的写流程中预先写入事务日志中的预设位置,实现了在待解密的事务日志的读流程可以直接获取到数据块的长度信息,提高了获取待解密的事务日志的数据块的长度信息的准确性,从而提高了解码待解密的事务日志的准确性。

34、根据下文结合附图对本发明具体实施例的详细描述,本领域技术人员将会更加明了本发明的上述以及其他目的、优点和特征。



技术特征:

1.一种事务日志的处理方法,其中,待解密的事务日志包括多个数据块,并且所述事务日志的处理方法包括:

2.根据权利要求1所述的事务日志的处理方法,其中,所述待解密的事务日志包括事务日志头部和事务日志数据区,其中,所述事务日志数据区包括main data和/或至少一个block区,所述block区包含page data和/或tupledata,所述main data、所述page data和所述tupledata均包括多个data数据块;并且

3.根据权利要求2所述的事务日志的处理方法,其中,在所述待解密的事务日志的读流程之前,所述事务日志的处理方法还包括:

4.根据权利要求3所述的事务日志的处理方法,其中,所述data数据块的长度信息为所述data数据块的密文长度;并且

5.根据权利要求3所述的事务日志的处理方法,其中,所述data数据块的长度信息为所述data数据块的明文长度;并且

6.根据权利要求5所述的事务日志的处理方法,其中,所述事务日志头部包括第二预设位置;并且

7.根据权利要求6所述的事务日志的处理方法,其中,所述根据所述data数据块的明文长度计算得到所述data数据块的密文长度的流程包括:

8.根据权利要求7所述的事务日志的处理方法,其中,所述根据所述data数据块的明文长度和所述数据对齐长度计算得到所述data数据块的密文长度的流程包括:

9.一种机器可读存储介质,其上存储有机器可执行程序,所述机器可执行程序被处理器执行时实现根据权利要求1至8任一项所述的事务日志的处理方法。

10.一种计算机设备,包括存储器、处理器及存储在所述存储器上并在所述处理器上运行的机器可执行程序,并且所述处理器执行所述机器可执行程序时实现根据权利要求1至8任一项所述的事务日志的处理方法。


技术总结
本发明涉及数据库技术,特别是涉及一种事务日志的处理方法、存储介质与设备。待解密的事务日志包括多个数据块,并且该事务日志的处理方法包括:在待解密的事务日志的读流程,获取数据块的长度信息;根据数据块的长度信息解码得到待解密的事务日志的各个数据块。本发明的事务日志的处理方法准确地解码得到了待解密的事务日志的各个数据块,保证了后续事务日志的解密操作的顺利进行,避免了因加密操作使得各个数据块的明文长度和密文长度不同带来的无法准确解码的问题,保证了解密操作的准确性,提高了用户的使用体验。

技术研发人员:沈志伟
受保护的技术使用者:北京人大金仓信息技术股份有限公司
技术研发日:
技术公布日:2024/3/17
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1