买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】一种单轮交互的链表ORAM访问方法_长沙理工大学_202110054402.X 

申请/专利权人:长沙理工大学

申请日:2021-01-15

公开(公告)日:2022-09-09

公开(公告)号:CN112966294B

主分类号:G06F21/62

分类号:G06F21/62;G06F21/60;G06F3/06;G06F16/27;G06F16/22

优先权:

专利状态码:有效-授权

法律状态:2022.09.09#授权;2021.07.02#实质审查的生效;2021.06.15#公开

摘要:本发明公开了一种生成链表树的方法,其中:所述链表树LL‑tree是加密的满二叉树,所述方法包括生成链表树的各个链表树节点LL‑treenode,所述链表树节点包括头部head和尾部tail,如下:

主权项:1.一种访问链表树的方法,包括读操作和写操作:1创建一次性令牌用户将输入的地址通过地址编码方法转换成一组块地址,假设i表示第i棵树,Mi为第i棵树用户掩码,对每一个块地址ai,bi,计算得到L-1棵位置树的所有令牌t1,t2,…,tL-1;2在链表树上搜索在链表树上搜索递归表示为:xi+1=ComputeTi,ti,其中xi+1为第i+1棵树的叶子位置,Ti为第i棵树,ti为用户发送的第i棵树的令牌,其中Compute算法流程具体描述如下:步骤A、访问第一层树节点,如果当前节点为d,那么用户使用d.head.m异或ti,得到一个变量t,如果当前节点包含了ai,bi数据块,那么t就是一个正确的块密钥,就能在emaps中解密一个数据块并得到下一棵树的访问叶子xi+1,算法成功结束;否则,继续搜索下一层节点;步骤B、假设d为第二层的树节点,用户使用d.head.m异或上一步骤A获得的t;如果当前节点包含了ai,bi数据块,那么t就是一个正确的块密钥,就能在emaps中解密一个数据块并得到下一棵树的访问叶子xi+1,算法成功结束;否则,继续搜索下一层节点;步骤C、依次访问,最终得到叶子xi+1;3读数据用户得到一条RLL后,采用两个步骤读写数据:步骤A、用户创建L个临时缓冲区,用于存储一条RLL,用户将全部的chunk解密后写入对应的临时缓冲区,所述RLL是指根据链表树LL-tree生成随机链表;步骤B、用户为所有解密过的chunk重新分配L个随机叶标识符,其中第i棵树的chunka′,data0,data1,leaf的叶子的标识符,被写入到第i-1棵树的chunka′2,data*0,data*1,leaf*中,的data*0或者data*1中,如果a′为偶数,写入data*0中,a′为奇数,写入data*1中;4重建RLL将L个缓冲区中的chunk数据洗牌后生成重新调整chunk的位置,然后对每一个树节点,采用节点初始化加密算法加密树节点,并得到一条新的RLL,将新的RLL被打包到下一次读请求中;在下一次新的读写请求时候,用户将新的查询令牌连同历史的被缓冲的RLL一并发送到云服务器,然后首先由云服务器执行历史的节点覆盖更新操作,再执行新的查询操作;所述链表树是根据以下的生成链表树的方法生成且经由以下的初始化链表树的方法初始化的,其中,所述生成链表树的方法中,所述链表树LL-tree是加密的满二叉树,所述生成链表树的方法包括生成链表树的各个链表树节点LL-treenode,所述链表树节点包括头部head和尾部tail,如下: 其中头部head包括m和emaps,尾部tail包括M和chunks,emaps和chunks是分别由z项组成的复合结构;M、m、emaps和chunks的定义分别如下:M表示节点掩码,节点掩码是由用户生成的一个随机值,是私密信息,不对云公开;m表示密文掩码,是存储在链表树节点头部的一个加密值,由节点的节点掩码和其父节点的节点掩码执行异或运算得到,密文掩码对云公开;chunks包含z个chunk,其中chunk是指一个数据块,chunk存储了四个元素a,data0,data1,leaf,即一个地址a、两个相邻的数据data0,data1和一个叶标识符leaf,叶标识符leaf用于表示节点属于哪一条叶子到树根的路径;emaps包含z个加密映射表emap,其中每个emap存放两组键值对信息k1,v1,k2,v2,用于保存加密后的值;所述初始化链表树的方法中,所述链表树是根据上述生成链表树的方法生成的,该初始化链表树的方法包括:对于一组数据A[.],假设其中共有N=2L个数据块,用户将N个数据块随机存储在数据树TL的树节点中,树节点的一个chunk可以存储两个地址相邻的数据块,用另外一棵相邻的较小的树TL-1存储这些随机节点对应的叶子位置,在TL-1中,存储了2L-1个数据块,它们的值分别是TL的2L-1个叶子位置,它的全部叶子位置保存在TL-2中,依此类推,直到最后一棵树T1,它只包含一个树节点,T1-TL-1称为位置树。

全文数据:

权利要求:

百度查询: 长沙理工大学 一种单轮交互的链表ORAM访问方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。