上下文:我们有遥测系统为我们的服务,并希望跟踪保留,有多少用户使用不同的功能等。
处理用户可识别信息和遵守GDPR有两种选择:
选项1很难实现(用于遥测系统)。选项2不允许回答诸如“特性X的6个月保留时间是什么?”之类的问题。
如何获得上述问题的答案之一是每周/一天计算每个特性的HyperLogLog块,并将它们永远分开存储。这将允许基于这些blobs进行合并/计算/计算保留。
假设任何用户可识别信息在30天后(用户帐户被删除后)消失,那么HyperLogLog blobs是否仍然允许跟踪用户(即回答某个特定用户是否在两年前使用了特性X)?
如果它允许,那么它是不兼容的(并不意味着它是兼容的,如果它不允许)。
发布于 2020-04-27 23:16:05
一般来说,是不符合 GDPR的。这个问题在最近的一个谷歌报纸中得到了一定程度的解决(参见第8节:“缓解策略”)。
HLL中使用的散列函数通常不具有加密安全性(通常是MurmurHash),因此即使进行了盐碱化,您也可能仍然能够回答“是否是HLL数据结构的用户部分”的问题,这是否定的。
Afaik,如果您保持HLL超过30天,,在HLL聚合之前应用盐渍加密散列(即盐渍SHA-2或BLAKE2b,BLAKE3),并且在每一个<30天的周期后销毁盐。这将允许您保持<30天间隔。您将无法在多个时间间隔内合并HLLs,但只能合并超过28天的块,但根据您的业务需要,这仍然是非常有价值的。
https://stackoverflow.com/questions/57000767
复制相似问题