基于类半群的多级密码系统安全分析
1. 多级加密与密钥管理
在多级加密系统中,数据加密与密钥管理是保障信息安全的关键环节。对于数据 $x_m$,首先使用密钥 $K_m$ 进行加密,得到 $x’ = E_{K_m}(x_m)$,然后以 $[x’, m]$ 的形式存储或广播。这样只有拥有 $K_m$ 的用户才能通过 $x_m = D_{K_m}(x’)$ 恢复出 $x_m$。这种方式的优点是只需要存储或广播一份 $x_m$ 的加密副本,但缺点是每个用户需要持有大量的密钥。
为了解决密钥存储问题,Akl 等人提出了一种密钥管理系统(KMS)。在这个系统中,用户 $U_j$ 只需存储自己的密钥 $K_j$,并且当且仅当 $U_i \leq U_j$ 时,用户 $U_j$ 能够计算出 $K_i$。然而,这种系统存在一个问题,即两个用户可能会合作计算出他们原本无权获取的密钥。
为了防止这种合作攻击,MacKinnon 等人提出了一个条件,并给出了满足该条件的所有密钥分配方案,同时提出了“最长链”算法:
1. 步骤 4 :在偏序集中找到最长链 ${i_1, \cdots, i_k}$。
2. 步骤 5 :为该链分配最小的可用素数 $p$(分配后该素数不可再用)。
3. 步骤 6 :从偏序集中移除节点 $i_1, \cdots, i_k$。
4. 步骤 7 :如果偏序集不为空,则返回步骤 4。
该算法的运行时间为 $O(|S|^2)$,它是一种启发式算法,其密钥生成依赖于 RSA 背后的
超级会员免费看
订阅专栏 解锁全文
63

被折叠的 条评论
为什么被折叠?



