数据库中的一致性与保密性
在数据库管理中,确保数据的一致性和保密性是至关重要的。安全管理员会指定潜在的秘密信息,例如在医疗数据库中,用户不应能推断出存在患有癌症或艾滋病的患者。
潜在秘密与查询推理
安全管理员 secadm 会明确潜在的秘密信息。例如,不希望用户推断出存在患有癌症或艾滋病的患者,即:
pot sec = {∃xIll(x, Aids), ∃xIll(x, Cancer)}
然而,一些普通的查询响应可能会让用户推断出潜在的秘密。比如:
eval ∗(Ill(Pete, Aids))(db) |=DB ∃xIll(x, Aids)
prior ∪eval ∗(∃x(Treat(x, MedB) ∧¬Ill(x, Flu)))(db) |=DB ∃xIll(x, Cancer)
从这里可以看出,某些查询结果可能会泄露潜在的秘密信息。
我们可以找到一些推理证明实例,如空数据库实例 db′1 = ∅ ,它是 prior 的一个模型,但不是任何潜在秘密的模型,其失真距离 db dist(db′1) = 4 。另一个推理证明实例 db′2 如下:
| Ill | Name | Diagnosis |
| — | — | — |
| | Mary | Flu |
| Trea
超级会员免费看
订阅专栏 解锁全文
8194

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



