上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
2.1 关联攻击
假设我们想从刚刚得到的去标识数据中获取某个朋友的收入信息。去标识数据中的姓名一列已经被移除了,但我们碰巧知道能帮助标识出这位朋友的一些辅助数据。我们的这位朋友叫Karrie Trusslove,我们知道Karrie的出生日期和邮政编码。
我们尝试攻击的数据集与我们知道的一些辅助信息之间存在一些重叠列,可以应用这些重叠列来实施一次简单的关联攻击(linkage attack)。在本例中,两个数据集都包含出生日期和邮政编码列。我们在尝试攻击的数据集中查找出与Karrie的出生日期和邮政编码匹配的行。数据库领域将此类匹配操作称为关联(join)两个数据表。我们可以使用Pandas的merge函数实现此操作。如果只能检索到唯一一行数据,我们就从尝试攻击的数据集中找到了Karrie所属的行。
我们确实只找到了一行匹配的数据。通过使用辅助数据,可以在去标识数据集中重标识出一个个体。我们可以根据重标识攻击结果进一步推断出Karrie的收入小于5万美元。