Claimed or Attested? A Commit-Signature Dataset and Identity Trust Tiers across the World of Code
本文介绍了针对“代码世界”(World of Code)的首个提交签名数据集,该数据集通过区分声称的开发者身份与经过密码学认证的开发者身份,为建立身份信任层级的精度锚点以及校准超过 58 亿次提交语料库中的别名映射提供了依据。
原始论文采用 CC BY 4.0 许可(http://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明
想象一下,整个软件开发的历史就像一座由数十亿张手写笔记组成的宏大、全球性的图书馆。每当程序员保存一段代码时,他们都会留下一张便条说:“这是我写的。”但问题在于:任何人都可以拿起笔,在便条上写下“我是史蒂夫·乔布斯”或“我是首席执行官”,即便他们并不是。在代码的世界里,这被称为声明(claim)。它仅仅是输入框里的一个名字,没有任何证明其真实性的效力。
这篇论文介绍了一种将这些摇摆不定的“声明”转化为**证明(attestations)**的新方法——这种证明如同指纹一般可靠。
以下是他们如何实现以及他们发现了什么的详细解读,我们使用了简单的类比:
1. 问题所在:“名牌” vs. “指纹”
在代码的图书馆(称为“代码世界”)中,大多数笔记仅仅是声明。如果有人写下“约翰·史密斯”,我们必须猜测他是那个约翰·史密斯,还是另一个约翰·史密斯,或者是一个冒充他的人。这就像一个派对,每个人都戴着自己制作的名牌。冒充者可以戴上和名人一样的名牌,而图书馆无法分辨其中的区别。
2. 解决方案:“数字印章”
作者找到了一种方法,可以发现隐藏在图书馆里的指纹。
- 秘密: 当一名程序员非常细心时,他们不仅会写下名字,还会用密码学签名来“封印”他们的笔记(就像给信件盖上火漆印一样,只不过是数字形式)。这个印章与他们拥有的特定密钥相绑定。
- 发现: 作者意识到,图书馆一直都在存储这些印章,只是它们被藏在了笔记的“消息”部分,一直被忽略和未被读取。这就像是在阅读多年的书籍时,发现了一张藏在书里的藏宝图,但你从未看过封底。
- 提取: 他们不需要回到原始源文件(那就像要重读图书馆里的每一本书),他们只需扫描现有的索引卡(表格),就能提取出这些隐藏的印章。
3. 他们的发现:“信任等级”
他们将数十亿条笔记分成了四个信任等级,就像安全等级徽章一样:
- 第 0 级(声明): 笔记没有印章。它仅仅是一个名字。“我是鲍勃。”(占笔记总数的 49%)。
- 第 1 级(平台印章): 笔记是由一台巨大的机器(例如 GitHub 的自动系统)封印的,因为用户在网站上点击了一个按钮。这证明了该用户对该网站而言是谁,但不一定对全世界而言是谁。 (占笔记总数的 50%)。
- 第 2 级(个人密钥): 笔记是由开发者直接控制的个人密钥封印的。这是一个强有力的“指纹”。它证明了:“我确实是这个密钥的所有者。”(占笔记总数的不到 1%)。
- 第 3 级(跨界链接): 该个人密钥还与现实世界的身份相关联,例如发表的学术论文或经过验证的身份。这是“黄金标准”。
4. “扇出”闸门:过滤噪音
作者注意到了一些有趣的事情:有些密钥被数百人共享(例如公司的“团队密钥”或机器人)。如果一个密钥被太多不同的人使用,它就不是一个好的个人身份指纹。
- 过滤器: 他们构建了一个“扇出闸门(fan-out gate)”。如果一个密钥被超过 50 个不同的人使用,他们就会将其视为“团队密钥”,并在身份识别目的中忽略它。如果一个密钥仅由少数几个人使用,他们就知道这属于特定的个人。
- 结果: 这帮助他们区分了“真实的人”与“机器人及共享账号”。
5. 抓捕冒充者
由于现在拥有了这些“指纹”,他们可以抓住骗子。
- 虚荣问题: 有时,著名的名字(如“林纳斯·托瓦兹”)会被冒充者使用。
- 测试: 如果一个名字被许多不同的密钥签名,这就是一个危险信号。这意味着太多人在声称自己是那一个人。作者发现,被 20 个以上不同密钥签名的名字几乎可以确定是冒充者或“虚荣”字符串。他们现在可以自动标记这些情况,用数学证明取代旧的“黑名单”列表。
6. 为什么这很重要
作者明确表示:这并不是解决图书馆中所有名字的魔杖。
- 精准而非覆盖: 只有约 17% 的笔记拥有这些印章。大多数并没有。
- 锚点: 把图书馆想象成一艘摇晃的小船。那些带有签名的笔记就是锚。它们虽然不能撑起整艘船,但能让它稳固在正确的位置。
- 益处: 对于试图将软件作者与学术科学家联系起来的研究人员(例如:“写这段代码的人是否也写了那篇论文?”),该数据集提供了一个“黄金标准”来验证他们的工作。它将一种猜测(“这两个名字看起来很像”)转变为一个事实(“这两个人确实是同一个人,因为他们共享同一个密码学密钥”)。
总结
这篇论文是一个挖掘大规模代码数据库中隐藏“数字指纹”的工具。它并不能修复整个数据库,但它创造了一个微小、极度可靠的真相层。这使得研究人员能够停止猜测谁写了什么,而是开始确切地知道,特别是在试图将代码世界与科学世界联系起来时。
您所在领域的论文太多了?
获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。