摘要

  • RFC 3043 提议使用 urn:pin,让个人与组织可以在不同应用中由持久名称标识。
  • 在 Network Solutions 内部解析器之外,这些标识符的结构不可知;文档也将该公司的解析器视为权威来源。语法可全球识别,并不意味着解析权同样可携带。

问题不只是怎样给一个人贴上长久不变的标签,而是当电子邮件地址、姓氏、雇主、互联网服务商,甚至最初分配名称的系统发生变化时,引用还能否继续成立。Network Solutions 在 2001 年 1 月发布的 RFC 3043,把这视为目录服务和电子商务的难题:即使两条记录描述相似,也要能区分;多年之后还要能指向同一个人或组织。

它提出的答案是 Personal Internet Name(PIN),以 pin 命名空间下的统一资源名称(URN)表示。RFC 中的示例是 urn:pin:bs4321234 这样的短令牌,而不是暴露姓氏或公司名称的字符串。名称特定字符串(NSS)被描述为由字母数字组成的平坦空间。更关键的是,文档明确说,除 Network Solutions 的内部解析器外,外界无法了解其内部结构,也不应据此推断或依赖任何含义。这里的“不透明”是设计边界,不是鼓励读者猜测编码。

这种分离确有实际价值。应用可以传递稳定引用,而不必把易变的电子邮件地址写入其中,也不必绑定某个目录的本地记录编号。RFC 所描述的模型承诺不重新分配标识符,并声称即使发生改名、公司重组、死亡或解散,名称与所指个人或组织之间的关联仍保持永久。RFC 3043 还把标准化的 URN 解析机制视为一种开放、非专有的方式,使其他应用也能引用并解析 PIN。

但注册模板又划出另一条边界:谁有权说明 PIN 的含义。Network Solutions 通过专有注册系统分配标识符,并称该系统可以保证唯一性。当时的算法从上一次已分配的编号开始,按正整数递增;文档同时预留了未来变更算法的可能。至于解析,它指定由 Network Solutions 自己运行 URN 解析器,并提醒读者,改用其他服务解析容易出错,且不能视为权威结果。

这就是可携带性的悖论。令牌可以被复制到原目录之外的应用中,但外部应用既不能独立推知其结构,也不能仅凭解析字符串就声称自己掌握权威绑定。“引用可以传播”和“权威可以传播”是两项不同能力。格式可以较容易地越过组织边界,认证令牌背后究竟是哪一个人或组织的权力却没有因此一并转移。

这并非 pin 独有的难题。命名空间可以让引用在全球范围内彼此区分,同时仍让分配、纠错、解析和争议处理依赖某个管理者。这种取舍有其理由:不透明可以保留内部灵活性,单一分配者可以协调唯一性,指定解析器也能给应用一个明确的权威来源。不过,连续性风险也随之集中。如果标识符要比负责解析它的服务或机构活得更久,设计就必须说明解析器如何交接、记录如何导出、身份争议如何处理,以及指定解析器不可用时怎样验证。RFC 3043 描述了分配与解析机制;现有证据并不能证明这些延续保障曾经存在。

文档状态也需要准确区分。IETF Datatracker 目前把 RFC 3043 标为 Legacy 系列的 Informational 文档,并注明它在 IETF 标准流程中没有正式地位。另一方面,IANA 当前的 URN 命名空间注册表仍在正式命名空间表中列出 pin,并以 RFC 3043 为参考。这两项记录回答的是不同问题:RFC 在标准流程中的地位,不等于命名空间是否列于 IANA 注册表。无论哪一项,都不能单独证明今天仍有服务运行或实际使用。

这段历史并非在说集中式解析器必然不好。稳定标识符解决了一个问题——当描述或位置变化时,旧引用容易失效;但它不会自动解决另一个问题——必须依赖指定机构分配名称或确认权威解析。RFC 3043 在自己的注册模板里把二者区分得相当清楚。持久名称的传播范围可能超过其信任锚。若系统同时承诺持久性与开放性,就不能只说明名称如何构成,还要写明谁可以验证绑定、权威如何转移,以及原解析器退出后哪些东西能够保留下来。