1.一种支持精准检查的医疗共享云存储文件审计方法,其特征是应用于由密钥生成中心KGC、用户、云服务器提供商CSP、多个消费者和第三方审计员TPA组成的系统中,并包括以下步骤:步骤一:系统初始化;
步骤 1.1 所述密钥生成中心KGC选择两个阶为素数p的乘法循环群 和 ,以及一个双线性映射 ;
步骤1.2所述密钥生成中心KGC选择五个哈希函数 , , 、一个对称加密算法 、一个伪随机变换操作 以及一个伪随机置换的映射函数 ;其中, 表示小于p大于零的整数集合, 表示映射关系;
步骤1.3所述密钥生成中心KGC从乘法循环群 中随机选择四个生成元 ,再选择一个随机值 ;然后计算部分公共参数 ,其中,m 代表最大被授权访问的消费者数量;定义并初始化 ;
步骤1.4 密钥生成中心KGC持有密钥 ,并公开公共参数;
步骤二、密钥生成:
所述密钥生成中心KGC计算私钥 并发送给用户,其中,ID代表所述用户的身份;
步骤三、外包文件加密:
步骤3.1 所述用户随机选择秘密值 ,计算公钥 ;
步骤3.2 所述用户随机选择一个对称密钥 ,并将自身每一个的文件都各自分成s个数据块,并用对称加密算法 对所有的数据块进行加密得到密文集 ;
步骤3.3 通过秘密值x,所述用户计算第一部分密文 、第二部分密文、第三部分密文 ;然后将密钥密文 作为密钥 的密文;
步骤3.4 所述用户提取自身所有文件的关键字,并建立一个关键字集合W,将所述关键字集合 用对称加密算法 进行加密后得到关键字密文 ;
步骤3.5 对于关键字集合W中的第k个关键字 ,用户创建一个具有n个比特位的向量;并初始化 =0;若所述用户的第i个文件 包含第k个关键字 ,则用户将向量 的第i个比特位 置为“1”,从而建立向量集合 ;
步骤四、安全索引生成:
步骤 4.1 对于第k个关键字 ,用户计算 作为向量 中的地址并进行加密后得到安全向量 其中, 表示异或运算;
步骤 4.2 对于第k个关键字 ,用户创建空集 ;
对于 ,当 时,用户将索引 加入集合 ,并计算关系认证标签,其中, 表示第j个数据块的部分关系认证标签,且 , 代表第i个文件的标识符;
步骤4.3 用户计算安全索引 ;
步骤五、文件验证标签生成:
步骤5.1 对于第i个文件的第j个数据块的密文 ,用户计算验证标签,并得到验证标签集合 ;
步骤六、文件访问授权:
步骤6.1 用户将消费者的身份集合记为 ,其中, 表示第 个消费者的身份,表示消费者身份的总数,且 ;用户随机选择两个值 并计算第一部分授权令牌、第二部分授权令牌 、第三部分授权令牌 、第四部分授权令牌 、从而得到用户的授权令牌 并发送给云服务器提供商CSP
步骤6.2 云服务器提供商CSP根据 和密文, 转换成密文 ,其中,第一部分密文,第二部分密文 ,第三部分密文 ,第四部分密文 ,第五;
步骤6.3 消费者根据密文 计算解密参数,其中,第一部分解密参数
,第二部分解密参数
;其中, 表示第 个消费者的私钥; 表示第 个消费者的身份;
所述消费者计算对称密钥 ,用于访问用户存储在云服务器提供商CSP上的密文文件;
步骤七、审计挑战生成步骤:
步骤7.1 用户或者消费者计算搜索陷门 ,并将搜索陷门 发送给第三方审计员TPA, 表示用户或消费者在审计挑战阶段选择的关键字; 表示关键字 的地址, 表示地址 的伪随机函数值;
步骤7.2 第三方审计员TPA收到搜索陷门 之后,随机选择一个集合 ,对于每一个 ,第三方审计员TPA随机选择 ,计算审计挑战 并发送给云服务器提供商CSP;
步骤八、审计证据验证步骤:
步骤8.1 所述云服务器提供商CSP从收到的审计挑战 中获得集合 ,根据地址 在安全索引 中找到安全向量和关系认证标签,并对安全向量进行解密后得到向量 ;
步骤8.2 所述云服务器提供商CSP初始化一个空集合 ,对于每一个 ,若向量,则将索引 加入集合 中;并计算第一部分证据,以及第二部分证据 ,并令审计证据 后返回给第三方审计员TPA;
步骤8.3 第三方审计员TPA根据云服务器提供商CSP返回的审计证据 ,验证等式是否成立,若成立,则表示云服务器存储的数据的完整性是正确的,否则,表示云服务器存储的数据的完整性遭到破坏。