[发明专利]基于平衡排序树存储结构的保序加密算法有效
申请号: | 201811163799.0 | 申请日: | 2018-10-02 |
公开(公告)号: | CN109495446B | 公开(公告)日: | 2020-12-22 |
发明(设计)人: | 汪星辰;赵运磊;朱扬勇 | 申请(专利权)人: | 复旦大学 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L9/06;G06F21/60 |
代理公司: | 上海正旦专利代理有限公司 31200 | 代理人: | 陆飞;陆尤 |
地址: | 200433 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 平衡 排序 存储 结构 加密算法 | ||
本发明属于密码技术领域,具体为基于平衡排序树存储结构的保序加密算法。本发明算法中,其数据存储基本结构包括AVL树、红黑树、B树、B+树或B*树;不同的数据存储结构,其算法表述略有差异。本发明算法以AVL树结构为例,其包括基本的基于AVL树的理想安全的保序加密算法以及一些改进的的保序加密算法。各种算法都从树形结构、初始化算法、加密算法、解密算法、orderby排序算法、范围查询算法、删除算法、平衡算法、交互式查询算法进行描述。相对于大多数无法达到理想安全的保序加密,本发明中的算法安全性有绝对的优势,本发明给出的算法也进行了全方位的对比,适用于绝大多数系统,尤其适用于安全性需求较高、带宽配置足量的系统。
技术领域
本发明属于密码技术领域,具体涉及基于平衡排序树存储结构的保序(编码)加密算法。
背景技术
预备知识和符号标示:
本发明的数据存储基本结构采用AVL树、红黑树(RBT)、B树、B+树、B*树,在此对其特征进行简单描述:
AVL树本质上还是一棵二叉(排序)搜索树,它的特点是:
(a)本身首先是一棵二叉搜索树;
(b)带有平衡条件:每个结点的左右子树的高度之差的绝对值(平衡因子)最多为1。
红黑树(RBT)是每个节点都带有颜色属性的二叉(排序)查找树,颜色或红色或黑色。在二叉查找树强制一般要求以外,对于任何有效的红黑树增加了如下的额外要求:
(a)节点是红色或黑色;
(b)根节点是黑色;
(c)每个叶节点(空节点)是黑色的;
(d)每个红色节点的两个子节点都是黑色(从每个叶子到根的所有路径上不能有两个连续的红色节点);
(e)从任一节点到其每个叶子的所有路径都包含相同数目的黑色节点。
一棵m阶B树是一棵平衡的m路搜索(排序)树。它或者是空树,或者是满足下列性质的树:
(a)根结点至少有两个子女;
(b)每个非根节点所包含的关键字个数j满足:
(c)除根结点以外的所有结点(不包括叶子结点)的度数正好是关键字总数加1,故内部子树个数k满足:
(d)所有的叶子结点都位于同一层。
B+树是应文件系统所需而出的一种B树的变型树。一棵m阶的B+树和m阶的B树的差异在于:
(a)有n棵子树的结点中含有n个关键字,每个关键字不保存数据,只用来索引,所有数据都保存在叶子节点;
(b)所有的叶子结点中包含了全部关键字的信息,及指向含这些关键字记录的指针,且叶子结点本身依关键字的大小自小而大顺序链接;
(c)所有的非终端结点可以看成是索引部分,结点中仅含其子树(根结点)中的最大(或最小)关键字;
(d)通常在B+树上有两个头指针,一个指向根结点,一个指向关键字最小的叶子结点。
B*树是B+树的变体,在B+树的非根和非叶子结点再增加指向兄弟的指针;B*树定义了非叶子结点关键字个数至少为2m/3,即块的最低使用率为2/3(代替B+树的1/2)。
具有伪随机输出性质的哈希函数在密码学分析中常被理想化为一个“随机预言机(random oracle)”。常用的伪随机函数也出于此。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于复旦大学,未经复旦大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811163799.0/2.html,转载请声明来源钻瓜专利网。