寓言故事
会撒盐的粮仓报表
山村粮仓每月公布各家余粮总数,方便商队安排车马。过去村长直接相加,大家相信总数不会暴露个人。后来村里只剩几户种稀有麦。某户一收一退,公布的总数就明显跳动,旁人很快猜到那家收成。村长先把户名删掉。可连续几个月对比总数,仍能推断谁多卖了一车、谁家可能断粮。
一个算师提出奇怪办法:每次公布前,按规则撒一点盐,让总数有受控的微小偏差。
村民担心报表不准。算师解释,单次报表不再暴露某一户是否在场;多次查询也要消耗预算,不能无限逼近真相。
粮仓保留准确原账,只把对外统计结果加噪,并限制查询次数、粒度和组合方式。商队仍能判断大趋势,却难以锁定某户。
后来有人故意反复问相近问题,想从差值里挖出个体。整套装置拒绝了超出预算的查询。
粮仓学到的不是“把数据弄脏”,而是在可用统计和个体隐私之间建立数学边界,让单个人的存在不决定答案。
算师还把撒盐的规则写给村长看:盐不能随手撒,今天多一点、明天少一点都要按骰盘来,否则外人仍能从规律里猜出真数。村长这才知道,保护隐私不是靠含糊,而是靠可证明的偏差。
年底分粮时,村里仍用内账精确结算;对商队、邻村和市集,只给加盐后的统计。大家牺牲了一点点清晰度,换来每户人家不必把粮缸暴露在所有人的算盘下。村民因此愿意继续交真实内账,因为他们知道公开账不会把某一家的日子单独端出去。这份边界让统计继续有用,也让沉默的人仍被保护。外人看见趋势,村民保住余地。村长也因此敢继续发布月报。更稳。可靠。