我是否需要为邀请系统使用哈希而不是用户ID?

时间:2013-03-04 21:09:34

标签: security

我正在实现推荐系统,我想知道我是否需要使用散列作为referrer_id,或者我是否可以使用用户的ID?我不想教条地使用哈希作为一切,所以你能给我一些潜在陷阱的例子吗?

1 个答案:

答案 0 :(得分:2)

这取决于对您来说重要的事情。如果您需要确定referrer_id来自提供引用的用户,那么您将需要某种与无法猜到的令牌相结合的哈希。如果您所做的只是哈希用户ID,那么您无法提供任何真正的安全性,因为攻击者可以简单地猜测用户ID并对其进行哈希以使您的服务器满意。

重要的是要知道散列不会产生任何不可预测性。 总是为同一输入产生相同的输出。散列是有价值的,因为它可以防止篡改(输入中的微小变化会导致输出发生很大变化)并且可以规范化数据的大小,但绝不应该将其与加密混淆。

您关注referrer_id的机密性,完整性和可用性多少?这些问题的答案将决定您需要投入多少精力来保护referrer_id。