从序列号创建匿名唯一标识符的算法



我想为一个移动应用程序记录一些简单的使用统计数据。为了保护用户的隐私,如果可能的话,我不希望将他们的实际设备序列号存储在数据库中。是否存在一种简单的算法,可以将序列号散列或转换为匿名标识符,并且不能反转,同时仍然保证唯一性?

是的,您想使用UUID。几乎所有的语言都有这个。

创建设备序列号的HASH。根据定义,哈希是一种单向加密。使用SHA-256算法

现在,根据输入的大小,哈希函数可能会产生一些冲突,这将导致您的唯一标识符在某些(非常罕见的)情况下不是唯一的。为了避免这种情况,你可以附加一些其他的任意信息,如IP地址或时间戳。

[SHA-256 of serial number][Time Stamp][Data to store]

最新更新