[发明专利]一种基于规则冗余消除的加密环境中访问控制方法有效
申请号: | 201610245485.X | 申请日: | 2016-04-19 |
公开(公告)号: | CN105790929B | 公开(公告)日: | 2018-12-28 |
发明(设计)人: | 崔勇;唐翯祎;吴建平;任奎;翁健 | 申请(专利权)人: | 清华大学;暨南大学 |
主分类号: | H04L9/06 | 分类号: | H04L9/06;H04L9/08;H04L9/28;H04L29/06;H04L29/08 |
代理公司: | 西安智大知识产权代理事务所 61215 | 代理人: | 段俊涛 |
地址: | 100084 北京市海淀区1*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 规则 冗余 消除 加密 环境 高效 访问 控制 方法 | ||
1.一种基于规则冗余消除的加密环境中访问控制方法,在密文构造中,先根据叶子节点属性确定各个叶子的秘密,再按树结构自叶子往上构造非叶子节点的秘密,从而确定所有节点的秘密,然后递归构造防止冗余计算出现,所述根据叶子节点属性确定各个叶子的秘密的方法是根据叶子节点属性随机选取一些秘密,然后赋给叶子节点,具体包括以下两个步骤:
步骤1.取出全部属性集合,针对每一个属性,随机选取一个数值作为它的秘密,第i个属性得到秘密s[i];
步骤2.遍历访问控制树的所有叶子节点,对于节点N,将N的属性对应的秘密赋值给N,亦即,假设N的属性为A(N),则s[N]=s[A(N)];
在叶子节点秘密确定后,执行非叶子节点秘密构造算法,使非叶子节点将通过递归的方式自叶子往根构造各个节点的秘密,最终生成每一个文件的秘密,即对应访问控制树的根秘密;
其特征在于,所述非叶子节点秘密构造算法为从根节点开始的递归算法,包括如下步骤:
步骤1:调用冗余判定算法,若当前输入节点N是已出现的冗余节点,则直接访问对应的秘密,否则转步骤2;
步骤2:递归对所有N的所有孩子节点调用节点秘密构造算法,得到每个孩子节点的秘密;
步骤3:若当前输入节点N为AND节点,直接使用拉格朗日插值法生成当前节点的秘密,转步骤5,否则转步骤4;
步骤4:当前输入节点N非AND节点,则首先随机选取一个秘密作为N的秘密值,并用拉格朗日插值计算出对应的各个子节点的新秘密,对每个子节点,生成额外信息,维护子节点本身的秘密与刚生成的新秘密之间的联系,保存该额外信息;
步骤5:将当前输入节点N及它对应的秘密存入冗余哈希表。
2.根据权利要求1所述基于规则冗余消除的加密环境中访问控制方法,其特征在于,在确定各个叶子的秘密之前,先执行访问控制树结构调整算法,将输入的访问控制规则对应的访问控制树调整为统一的结构,以防止相同表达能力的访问控制结构被判定为不相同,保证判定的准确性。
3.根据权利要求2所述基于规则冗余消除的加密环境中访问控制方法,其特征在于,所述访问控制树结构调整算法是从访问控制树根节点开始执行的递归算法,包括如下步骤:
步骤1:判定当前输入节点N是否为AND节点或OR节点,如果不是,转步骤5;
步骤2:初始化孩子节点集合S为空集,待测试节点集合S’为当前输入节点N的所有孩子节点;
步骤3:循环访问待测试节点集合S’中的节点N’,若节点类型与当前输入节点N相同,则将N’的所有孩子节点加入待测试节点集合S’中,否则直接将N’放入孩子节点集合S;
步骤4:为当前节点N与孩子节点集合S中的所有节点建立父子关系,使得集合S中所有节点均成为N的孩子节点;
步骤5:对当前节点的所有孩子节点递归调用本算法。
4.根据权利要求1所述基于规则冗余消除的加密环境中访问控制方法,其特征在于,对表达能力相同的多余的非叶子节点进行合并。
5.根据权利要求1所述基于规则冗余消除的加密环境中访问控制方法,其特征在于,在递归计算某个节点的秘密时,执行访问控制子树冗余判定算法,先进行一次冗余判定,再决定是否进行计算,以防止访问控制子树结构相同的两个节点的密文重复使用及重复计算。
6.根据权利要求5所述基于规则冗余消除的加密环境中访问控制方法,其特征在于,所述访问控制子树冗余判定算法的核心是生成访问控制子树的哈希值,哈希生成的算法是一个由根节点出发的递归算法,包括如下步骤:
步骤1:调用本算法,生成当前节点的各个子节点哈希值;
步骤2:将所有子节点哈希值按字典序排序,得到哈希序列{H1,H2,…}
步骤3:将该节点类型与上述哈希序列作为输入,调用一个接受任意长度输入的哈希函数,得到当前节点哈希值。
7.根据权利要求1所述基于规则冗余消除的加密环境中访问控制方法,其特征在于,
通过引入冗余判定算法,使得计算过程中避免已经出现的结构被重复计算,同时通过引入额外信息,使得去冗余的过程中能保证算法的正确性;
通过在各个叶子节点上递归调用自身,并形成叶子节点哈希序列,然后将自身类型放入哈希求值过程中,使得结构相同的不同访问控制子树一定能得到相同的哈希值,且复杂度为线性。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学;暨南大学,未经清华大学;暨南大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610245485.X/1.html,转载请声明来源钻瓜专利网。