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

用于安全存储数据的数据存储服务器和客户端设备的制作方法

2023-03-15 13:20:02 来源:中国专利 TAG:

技术特征:
1.一种客户端设备(110),其特征在于,包括处理器(111),所述处理器(111)用于:获取包括多个明文数据元素的数据(125a);以及,对于所述多个明文数据元素中的明文数据元素:使用消息验证码(message authentication code,mac)密钥(115b)生成所述明文数据元素的二进制表示(200)的第一部分(200a)的第一mac,其中,所述第一部分(200a)包括所述明文数据元素的所述二进制表示(200)的一个或多个最高有效位,并且所述明文数据元素的所述二进制表示(200)还包括与所述第一部分(200a)互补的剩余部分(200b),所述剩余部分(200b)包括所述明文数据元素的所述二进制表示(200)的剩余最低有效位;基于所述第一mac,从数据存储服务器(120)检索数据桶(500a-500d),其中,所述数据桶(500a-500d)包括数据桶头和加密的数据桶内容;使用加密密钥(115a)对所述加密的数据桶内容进行解密,以获取明文形式的数据桶内容;将所述明文数据元素的所述二进制表示(200)的所述剩余部分(200b)添加到所述明文形式的数据桶内容中,以获取明文形式的更新的数据桶内容;使用所述加密密钥(115a)对所述明文形式的更新的数据桶内容进行加密;将具有所述加密的更新的数据桶内容的所述数据桶(500a-500d)发送到所述数据存储服务器(120),以用于将所述数据桶(500a-500d)存储在所述数据存储服务器(120)的数据库(125)中。2.根据权利要求1所述的客户端设备(110),其特征在于,所述处理器(111)还用于,对于所述多个明文数据元素中的所述明文数据元素:使用所述mac密钥(115b)生成所述明文数据元素的所述二进制表示(200)的第二部分的第二mac,其中,所述第二部分包括所述明文数据元素的所述二进制表示(200)的与所述第一部分(200a)不同的一个或多个其它最高有效位,并且所述明文数据的所述二进制表示(200)的所述剩余部分(200b)与所述第二部分(200a)互补;基于所述第一mac和所述第二mac,从所述数据存储服务器(120)检索所述数据桶(500a-500d)。3.根据权利要求2所述的客户端设备(110),其特征在于,所述处理器(111)还用于,对于所述多个明文数据元素中的明文数据元素:使用所述mac密钥(115b)生成所述明文数据元素的所述二进制表示(200)的第三部分的第三mac,其中,所述第三部分包括所述明文数据元素的所述二进制表示(200)的与所述第二部分不同的一个或多个其它最高有效位,并且所述明文数据元素的所述二进制表示(200)的所述剩余部分(200b)与所述第三部分互补;基于所述第一mac、所述第二mac和所述第三mac,从所述数据存储服务器(120)检索所述数据桶(500a-500d)。4.根据上述权利要求中任一项所述的客户端设备(110),其特征在于,所述处理器(111)还用于:使用所述加密密钥(115a)对所述多个明文数据元素进行加密,以获取多个密文数据元素(300b);将包括所述多个密文数据元素(300b)的所述数据(125a)发送到所述数据存储服务器
(120),以用于将所述数据(125a)存储在所述数据库(125)中。5.根据权利要求4所述的客户端设备(110),其特征在于,所述处理器(111)还用于将所述加密密钥(115a)的标识符与包括所述多个密文数据元素(300b)的所述数据(125a)一起发送到所述数据存储服务器(120),以用于基于所述加密密钥(115a)的所述标识符,将所述数据(125a)存储在所述数据库(125)中。6.根据上述权利要求中任一项所述的客户端设备(110),其特征在于,所述第一mac是基于哈希的消息验证码(hash-based message authentication code,hmac)。7.根据上述权利要求中任一项所述的客户端设备(110),其特征在于,所述明文数据元素的所述二进制表示(200)的所述第一部分(200a)包括由所述明文数据元素的所述二进制表示(200)的所述最高有效位定义的一个或多个字节,并且所述明文数据元素的所述二进制表示(200)的所述剩余部分(200b)包括由所述明文数据元素的所述二进制表示(200)的所述最低有效位定义的一个或多个字节。8.根据上述权利要求中任一项所述的客户端设备(110),其特征在于,所述处理器(111)还用于从远程密钥管理服务器(130)获取所述加密密钥(115a)的加密版本和所述mac密钥(115b)的加密版本中的至少一个,其中,所述加密密钥(115a)的所述加密版本和所述mac密钥(115b)的所述加密版本中的至少一个是用客户端设备主密钥加密的。9.根据上述权利要求中任一项所述的客户端设备(110),其特征在于,所述处理器(111)还用于将所述加密密钥(115a)的所述加密版本和所述mac密钥(115b)的所述加密版本中的至少一个发送到所述数据存储服务器(120)。10.根据权利要求4或5所述的客户端设备(110),其特征在于,用于处理存储在所述数据存储服务器(120)的所述数据库(125)中的所述数据(125a)的数据查询,所述数据(125a)包括所述多个密文数据元素(300b),其中,所述数据查询由至少一个查询值定义,所述处理器(111)还用于:使用所述mac密钥(115b)生成所述至少一个查询值的二进制表示的第一部分的至少一个第一查询mac,其中,所述第一部分包括所述查询值的所述二进制表示的一个或多个最高有效位,并且所述查询值的所述二进制表示还包括由所述查询值的所述二进制表示的所述剩余最低有效位定义的互补剩余部分;基于所述至少一个第一查询mac,从所述数据存储服务器(120)检索一个或多个数据桶(500a-500d),其中,所述一个或多个数据桶(500a-500d)中的每个数据桶包括数据桶头和加密的数据桶内容;用所述加密密钥(115a)对所述加密的数据桶内容进行解密;通过将所述第一部分与所述解密的互补剩余部分组合,生成数据元素的明文二进制表示。11.根据权利要求10所述的客户端设备(110),其特征在于,对于每个数据桶(500a-500d),所述数据桶内容还包括,对于所述数据桶内容的每个密文数据元素,存储位置标识符(300a),特别是行标识符(300a),用于标识与所述数据库(125)中相应的密文数据元素(300b)关联的数据(300c)的存储位置,并且其中,用于从所述数据库(125)检索所述密文数据元素(300b)和/或与查询范围的所述数据元素关联的所述数据(300c),所述处理器(111)还用于:
对于与所述数据查询匹配的一个或多个数据元素,基于所述存储位置标识符(300a),从所述数据库(125)检索所述密文数据元素(300b)和/或与所述一个或多个数据元素关联的所述数据(300c)。12.一种操作客户端设备(110)的方法(700),其特征在于,所述方法(700)包括:获取包括多个明文数据元素的数据(125a);以及,对于所述多个明文数据元素中的明文数据元素:使用消息验证码(message authentication code,mac)密钥(115b)生成(701)所述明文数据元素的二进制表示(200)的第一部分(200a)的第一mac,其中,所述第一部分(200a)包括所述明文数据元素的所述二进制表示(200)的一个或多个最高有效位,并且所述明文数据元素的所述二进制表示(200)还包括与所述第一部分(200a)互补的剩余部分(200b),所述剩余部分(200b)包括所述明文数据元素的所述二进制表示(200)的剩余最低有效位;基于所述第一mac,从数据存储服务器(120)检索(703)数据桶(500a-500d),其中,所述数据桶(500a-500d)包括数据桶头和加密的数据桶内容;使用加密密钥(115a)对所述加密的数据桶内容进行解密(705),以获取明文形式的数据桶内容;将所述明文数据元素的所述二进制表示(200)的所述剩余部分(200b)添加(707)到所述明文形式的数据桶内容中,以获取明文形式的更新的数据桶内容;使用所述加密密钥(115a)对所述明文形式的更新的数据桶内容进行加密(709);将具有所述加密的更新的数据桶内容的所述数据桶(500a-500d)发送(711)到所述数据存储服务器(120),以用于将所述数据桶(500a-500d)存储在所述数据存储服务器(120)的数据库(125)中。13.一种数据存储服务器(120),其特征在于,包括处理器(121),所述处理器(121)用于:基于消息认证码(authentication code,mac)密钥(115b)从客户端设备(110)接收明文数据元素的二进制表示(200)的第一部分(200a)的第一mac,其中,所述第一部分(200a)包括所述明文数据元素的所述二进制表示(200)的一个或多个最高有效位,并且所述明文数据元素的所述二进制表示(200)还包括与所述第一部分(200a)互补的剩余部分(200b),所述剩余部分(200b)包括所述明文数据元素的所述二进制表示(200)的剩余最低有效位;基于所述第一mac选择存储在所述数据存储服务器(120)的数据库(125)中的数据桶(500a-500d);向所述客户端设备(110)提供所述数据桶(500a-500d),其中,所述数据桶(500a-500d)包括数据桶头和加密的数据桶内容;从所述客户端设备(110)接收具有更新的加密数据桶内容的所述数据桶(500a-500d);将具有所述更新的加密数据桶内容的所述数据桶(500a-500d)存储在所述数据库(125)中,其中,所述更新的加密数据桶内容包括呈基于加密密钥(115a)的加密形式的所述明文数据元素的所述二进制表示(200)的所述剩余部分(200b)。14.根据权利要求13所述的数据存储服务器(120),其特征在于,所述处理器(121)还用于:基于所述mac密钥(115b)从所述客户端设备(110)接收所述明文数据元素的所述二进
制表示(200)的第二部分的第二mac,其中,所述第二部分包括所述明文数据元素的所述二进制表示(200)的与所述第一部分不同的一个或多个其它最高有效位,并且所述明文数据元素的所述二进制表示(200)的所述剩余部分(200b)与所述第二部分互补;基于所述第一mac和所述第二mac,选择存储在所述数据库(125)中的所述数据桶(500a-500d);向所述客户端设备(110)提供所述数据桶(500a-500d)。15.根据权利要求14所述的数据存储服务器(120),其特征在于,所述处理器(121)还用于:基于所述mac密钥(115b)从所述客户端设备(110)接收所述明文数据元素的所述二进制表示(200)的第三部分的第三mac,其中,所述第三部分包括所述明文数据元素的所述二进制表示(200)的与所述第二部分不同的一个或多个其它最高有效位,并且所述明文数据元素的所述二进制表示(200)的所述剩余部分(200b)与所述第三部分互补;基于所述第一mac、所述第二mac和所述第三mac,选择所述数据库(125)中存储的所述数据桶(500a-500d);向所述客户端设备(110)提供所述数据桶(500a-500d)。16.根据权利要求13至15中任一项所述的数据存储服务器(120),其特征在于,所述处理器(121)还用于:从所述客户端设备(110)接收数据(125a),所述数据(125a)包括用所述加密密钥(115a)加密的多个密文数据元素(300b);将所述数据(125a)存储在所述数据库(125)中。17.根据权利要求16所述的数据存储服务器(120),其特征在于,所述处理器(121)还用于:从所述客户端设备(110)接收所述加密密钥(115a)的标识符与包括所述多个密文数据元素(300b)的所述数据(125a);基于所述加密密钥(115a)的所述标识符,将所述数据(125a)存储在所述数据库(125)中。18.根据权利要求16或17所述的数据存储服务器(120),其特征在于,所述数据库(125)是关系数据库(125),所述处理器(121)还用于将包括所述多个密文数据元素(300b)的所述数据(125a)存储在所述关系数据库(125)的表(300)中。19.根据权利要求13至18中任一项所述的数据存储服务器(120),其特征在于,所述第一mac是基于哈希的消息认证码(hash-based message authentication code,hmac)。20.根据权利要求13至19中任一项所述的数据存储服务器(120),其特征在于,所述明文数据元素的所述二进制表示(200)的所述第一部分(200a)包括由所述明文数据元素的所述二进制表示(200)的所述最高有效位定义的一个或多个字节,并且所述明文数据元素的所述二进制表示(200)的所述剩余部分(200b)包括由所述明文数据元素的所述二进制表示(200)的所述最低有效位定义的一个或多个字节。21.根据权利要求13至20中任一项所述的数据存储服务器(120),其特征在于,所述处理器(121)还用于从所述客户端设备(110)接收所述加密的加密密钥(115a)和所述加密mac密钥(115b)中的至少一个。
22.根据权利要求16至18中任一项所述的数据存储服务器(120),其特征在于,用于处理存储在所述数据库(125)中的所述数据(125a)的数据查询,所述数据(125a)包括所述多个密文数据元素,其中,所述数据查询由至少一个查询值定义,所述处理器(121)还用于:基于所述mac密钥(115b),接收所述至少一个查询值的二进制表示的第一部分的至少一个第一查询mac,其中,所述第一部分包括所述查询值的所述二进制表示的一个或多个最高有效位,并且所述查询值的所述二进制表示还包括由所述查询值的所述二进制表示的所述剩余最低有效位定义的互补剩余部分;基于所述第一查询mac,选择存储在所述数据库(125)中的一个或多个数据桶(500a-500d);向所述客户端设备(110)提供所述一个或多个数据桶(500a-500d),其中,每个数据桶包括数据桶头和加密的数据桶内容。23.根据权利要求22所述的数据存储服务器(120),其特征在于,对于每个数据桶(500a-500d),所述数据桶内容还包括,对于所述数据桶内容的每个密文数据元素,存储位置标识符(300a),特别是行标识符(300a),用于标识与所述数据库(125)中相应的密文数据元素(300b)关联的数据(300c)的存储位置,并且其中,用于从所述数据库(125)检索与查询范围的所述数据元素(300b)关联的数据(300c),所述处理器(121)还用于:基于所述存储位置标识符(300a),对于与所述数据查询匹配的一个或多个数据元素(300b),从所述数据库(125)检索与所述一个或多个数据元素关联的所述数据(300c);将所述数据(300c)发送到所述客户端设备(110)。24.一种操作数据存储服务器(120)的方法(800),其特征在于,所述方法(800)包括:基于消息认证码(authentication code,mac)密钥(115b)从客户端设备(110)接收(801)明文数据元素的二进制表示(200)的第一部分(200a)的第一mac,其中,所述第一部分(200a)包括所述明文数据元素的所述二进制表示(200)的一个或多个最高有效位,并且所述明文数据元素的所述二进制表示(200)还包括与所述第一部分(200a)互补的剩余部分(200b),所述剩余部分(200b)包括所述明文数据元素的所述二进制表示(200)的剩余最低有效位;基于所述第一mac选择(803)存储在所述数据存储服务器(120)的数据库(125)中的数据桶(500a-500d);向所述客户端设备(110)提供(805)所述数据桶(500a-500d),其中,所述数据桶(500a-500d)包括数据桶头和加密的数据桶内容;从所述客户端设备(110)接收(807)具有更新的加密数据桶内容的所述数据桶(500a-500d);将具有所述更新的加密数据桶内容的所述数据桶(500a-500d)存储(809)在所述数据库(125)中,其中,所述更新的加密数据桶内容包括呈基于所述加密密钥(115a)的加密形式的所述明文数据元素的所述二进制表示(200)的所述剩余部分(200b)。25.一种包括计算机可读存储介质的计算机程序产品,其特征在于,所述计算机可读存储介质用于存储程序代码,当所述程序代码由计算机或处理器执行时,使得所述计算机或所述处理器执行根据权利要求12所述的方法(700)。26.一种计算机程序产品,其特征在于,包括用于存储程序代码的计算机可读存储介
质,所述程序代码由计算机或处理器执行时,所述程序代码使所述计算机或所述处理器执行根据权利要求24所述的方法(800)。

技术总结
本发明涉及一种客户端设备(110),用于将包括例如数值的数据元素的数据(125a)存储在服务器(120)的数据库(125)中。所述客户端设备用于使用MAC密钥(115b)生成每个数据元素的二进制表示的第一部分的第一MAC。所述第一部分包括所述数据元素的所述二进制表示的最高有效位,其中,所述二进制表示还包括由剩余最低有效位定义的互补剩余部分。此外,所述客户端设备用于将所述剩余部分以加密形式存储在所述数据库中的数据桶中,其中,所述数据桶由所述第一MAC标识。有利地,所述客户端设备和所述服务器允许将安全敏感数据以加密形式存储在所述数据库中,同时支持所述数据的范围查询。同时支持所述数据的范围查询。同时支持所述数据的范围查询。


技术研发人员:
受保护的技术使用者:华为技术有限公司
技术研发日:2020.06.29
技术公布日:2023/2/3
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

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

相关文献