程序员如何看待 Libra 源码?GitHub 上质疑多于肯定
本文来自 Coindesk,原文作者:Christine Kim
Odaily 星球日报译者 | Moni
Facebook 发布加密货币 Libra 白皮书已过去两周,作为一个开源项目,Libra 的源代码也被发布在了知名开源社区及代码托管库 Github 上。虽然代码发布的时间并不算长,但鉴于社交网络巨头 Facebook 的影响力,已经吸引了大量加密社区评论者和程序员的关注。
Libra 加密货币目前是由“Libra 协会”治理,而且也是从 Facebook 中分拆出来运营的一个独立组织。截至目前,Github 上的 Libra 项目已经被近 10,000 名用户“保存”或“加星标”,也代表了早期开源参与者对这个项目的兴趣很大。此外,Github 上迄今已经创建了 1000 多个 Libra 代码克隆库,可以让那些程序员和“准程序员”们能够坐下来仔细研究 Libra 的代码。
实际上,一些已经使用过 Libra 代码的程序员已经发现其中“借鉴”了不少其他加密货币(比如比特币)系统中的功能,比如为区块验证人开放网络访问等。更重要的是,程序员们从 Libra源代码里发现这个加密货币项目似乎并不是如人们想象的那么“认真”。
Mikko Ohtamaa 创造了一个所谓“Libra Classic”的克隆项目,他表示 Facebook 在 Github 上发布的 Libra 源代码可能只是一个“投饵”,只是想看看社区的反应而已。
加密货币初创公司 Radix DLT 首席产品官 Albert Castellana 评论道:
“到目前为止,程序员们还没有在 Github 上针对 Libra 项目提交真正的代码缺陷,他们现在发现的主要问题要么是与代码构建有关,要么就是一些代码拼写错误。当然,还有一些批评者指出 Libra 不是一个去中心化的解决方案。”
为了能够支持这个最新的全球金融支付系统,Libra 加密货币在发行之时会由 28 个创始成员组成的团队来负责验证交易、追加新区块——至少开始阶段是这样设计的。当然,Facebook 也表示希望随着时间的推移、Libra 网络的不断扩大,未来会变得更加“去中心化”。
不过,加密社区对 Facebook 的这种说辞并不买账。
相比之下,原始比特币网络也是被设计为一个全球金融支付系统,但却能让任何具有计算资源的个人参与到创建、广播交易区块的工作中,并且能够在此过程中获得区块奖励,即比特币。
正是因为如此,加密货币行业里的一些意见领袖直接批评了 Libra 区块链的授权结构,除了在社交媒体上,他们还在 Github 上深挖了 Libra 代码的每个细节。
程序员社区在“深扒” Facebook Libra 开源代码
在GitHub上,任何对代码存储库具有读取权限的用户都可以创建问题并 pull request。(星球君 o-daily 注:pull request就是请求别人 pull 自己的代码库,程序员如果发现某个代码有问题,可以在自己的机器上 git clone 原库,切换 fork(分叉),并对代码做一些修改。完成之后就可以发起 Compare & pull request,添加一些注释后确认提交,如果原库作者看到你的更新并确认无误,就会把你的代码整合到自己的项目里,如果原库作者认为你的更新有问题,可以拒绝代码更新。)
在过去的四天时间里,Libra 代码库已经标记了大约 160 个问题,其中有超过 100 个问题已被经过身份验证的代码库用户关闭,其中一些还被标记为“偏离主题”。虽然这些问题中只有一半是 pull request,但却强化了加密货币社区里一个普遍存在的情绪,即 Facebook Libra 的授权区块链协议本质上是存在缺陷的。
Github 用户“gazhayes”本周二(6 月 25 日)提出了一个 pull request,他解释说:
“我发现了一个令人震惊的漏洞,但幸运的是有一个非常简单的解决办法......通过使用一个免授权系统可以很容易地解决这个问题,因为在这种系统里,权力是被分散在众多参与者身上的。”
但是,“gazhayes”的这个 pull request 已经在本周三(6 月 26 日)被 Libra GitHub 官方管理员关闭了,结果引发了程序员社区成员的抱怨和不满,因为他们都认为“gazhayes”提交的 pull request 是合法评论。
去中心化应用程序开发人员 Marcus Newton 评论说:
“gazhayes 提出的第 83 号 pull request 确实已经被锁定了,这表明 Libra 源代码的管理员没有对不同的观点和经验持开放态度。”
对于程序员社区的“抗议”,致力于为 Libra 区块链构建钱包应用程序的 Calibra 公司技术负责人 Ben Maurer 解释说:
“我们意识到 Libra 是一项变革性的工作,也需要一个围绕它、支持它的社区。但有些言论需要所有节制,因为偏离主题的对话肯定比不了富有成效的对话。第 83 号 pull request 没有实质性的内容,而且会占用审核资源。”
问题依然存在
“Libra Classic”项目创始人 Mikko Ohtamaa 似乎比较认同Ben Maurer 的说法,同时也指出 GitHub 对 Libra 项目的开源协作到底有没有功效还有待观察,他说道:
“人们只是讨厌 Facebook,所以就在 GitHub 代码存储库上挑毛病,现在所有的问题并不是客观的讨论问题,不过是一些程序员在表达自己讨厌 Facebook 的情绪罢了。 ”
不过,Mikko Ohtamaa相信随着时间的推移和代码进一步规范,可以让更多程序员充分了解 Libra 网络的运作方式,而仇视 Facebook 的情绪也会得到一定缓解,他补充说道:
“从现在开始,所有 Libra 的开发工作都是公开透明的,也都会在公开场合下进行。Github 上的 Libra 源代码基本上算是一个代码转储,但现在 Facebook......想让其他所有人明白他们在开源项目方面也有很高的声誉。”
但即便如此,如果从多方面角度来看似乎仍然存在一些没有解决的问题,这些问题同样会影响 Facebook 雄心勃勃的加密货币项目。加密安全创业公司 Casa 首席技术官 Jameson Lopp 表示,关于 Libra 开发语言 Move 仍有很多信息没有公开,他进一步解释说:
“这里有一个很大的问题,如果你不是验证人的话,是否也可以运行下载所有分类账状态的节点并检查它们。另一个问题是,Libra 所谓的副本节点操作模式是否也能够下载验证人所创建的区块。“
对于 Libra 开源项目下一步工作的种种质疑,Facebook 通讯经理 Alexandru Voica 表示:
“我们现在可以分享的一个具体情况就是——Facebook 计划为 Move 语言添加一个全新的命令行界面,这样开发人员可以在自己的开发环境中更轻松地使用 Move 语言了。”
Outlier Ventures首席技术官兼联合创始人 Aron van Ammers 认为,Facebook 的加密货币项目现在其实还处于早期阶段,可能会在未来几个月后才能让人们从中看到一些启发性的东西。 Aron van Ammers 最后总结说道:
“现在评论 Libra 还有些早,之前没有人从外部角度去观察、分析 Libra、Calibra 和 Facebook团队,但推出这么大的一个项目的确需要时间。“