【发布时间】:2018-03-27 07:03:18
【问题描述】:
我正在开发一个系统,该系统大量使用假名来向研究人员提供对隐私至关重要的数据。这些假名应具有以下属性:
- 它们不应包含任何信息(例如创建时间、与其他假名的关系、编码数据……)。
- 创建独特的假名应该很容易。
- 它们应该是人类可读的。这意味着人们在大声朗读时应该很容易比较、复制和理解它们。
我的第一个想法是使用UUID4。它们在 (1) 和 (2) 方面都相当出色,但在 (3) 方面则不然。
一种变体是使用更宽的字母表对 UUID 进行编码,从而生成更短的字符串(例如参见 shortuuid)。但我不确定这是否真的提高了可读性。
我目前正在研究的另一种方法是 2005 年的一篇题为 "An optimal code for patient identifiers" 的论文,旨在解决我的问题。那里描述的算法创建具有 30 位熵的 8 个字符的假名。不过,我更愿意使用更广泛审查的标准。
然后还有git方式:只显示实际笔名的前几个字符。但这意味着假名可能会在一段时间后失去其唯一性。
所以我的问题是:对于人类可读的唯一 ID,是否有任何广泛使用的标准?
【问题讨论】:
标签: standards uuid human-readable