在将在全球范围内使用的应用程序中,有哪些好的候选者可以使用自然键来唯一标识用户/人员?
我们如何处理边缘情况?- 没有国家或官方文件的人(难民) - 更改姓名或性别/性别的人
密钥应该是健壮和独特的。
在将在全球范围内使用的应用程序中,有哪些好的候选者可以使用自然键来唯一标识用户/人员?
我们如何处理边缘情况?- 没有国家或官方文件的人(难民) - 更改姓名或性别/性别的人
密钥应该是健壮和独特的。
没有上下文是不可能回答的。与任何信息系统一样,您需要了解生成和使用数据的需求和操作流程。如果人们将与您的系统进行交互或为其提供服务,那么哪些属性需要构成这些交互和服务的一部分?如果相关人员必须在线注册,或者如果他们必须同意合同,或者如果有一些其他信息收集过程,那么这些交互很可能会定义密钥,例如登录名、合同标识符或数字签名。
请注意,在许多情况下,也许几乎所有情况下,系统中识别的都是与人的交互或合同,而不一定是个人本身。
Imo,最独特的值之一,可以用来识别人是唯一的,同时不是随机生成的,它可能是通过账户常数的一些数学计算生成的代码。其中一些可能是出生日期和地点或出生证明上的姓名。这将生成一个几乎是唯一的 id(同名、相同日期和在同一个地方出生的人多久出生一次?)而且也是自然的,因为它不是随机生成的。一个很好的例子是目前在意大利使用的唯一标识卫生系统中的个人以及意大利财政代码(不要与 ID 混淆)
我认为这可以回答您的问题,否则我认为需要更多上下文。
更多信息,请访问https://en.wikipedia.org/wiki/Italian_fiscal_code_card
简单的。它们不存在。高度敏感的安全系统采用指纹或虹膜扫描,但不包括法人,而且无论如何这种扫描不是自然而然的。目前甚至没有真正的政府的国家用,呃,不太先进的手段“识别”他们的公民,然后根据定义,这些手段也不太“强大”(/可靠)。
正如其他人所评论的那样,获得 100% 独特的东西将是困难的——可能需要在边缘情况和实用性之间取得平衡。
务实,您可以假设以下字段组合可能在绝大多数情况下唯一标识一个人:
但是对于常见的名字,这会下降 - 如果你的名字是詹姆斯史密斯并且你出生在婴儿潮期间,那么不太可能有其他人有你的名字和出生日期。
要进一步缩小范围,您可以添加出生时间和地点 - 但这些可能更难获得。即便如此,也没有 100% 的铸铁保证——在历史的某个时刻,两个婴儿在同一天出生在同一家医院,记录的出生时间和名字都相同,这并非完全不可能……