玩币族移动版

玩币族首页 > 区块链资产 >

从源代码看ripple 与 stellar 的区别

Snip20140905_30

  历史

  Jed MacCaleb 想到了一个不依赖挖矿的数字货币的点子,于是他雇了一帮程序员来实现他的想法。最终他与 Ryan Fugger 的一个叫做 Ripple 的项目合并,并准备用它打造一个目标是为全球经济提供巨大流动性,任何人都可以使用的可扩展的支付体系。他们成立了公司 Open Coin ,后更名为Ripple Labs。Jed 随后又拉拢 Chris Larsen 作为 Open Coin 的 CEO,他们三人共同保留了 20% 的XRP,其余的部分留给 Ripple Labs,并由 Ripple Labs 决定剩下这部分如何分配给大众。可惜好景不长,Jed 因为 “与 Chris 等关于 Ripple 的未来发展路线有巨大分歧” 而离开了 Ripple Labs,并对外公布了“一个秘密的比特币项目”,结果一年之后,这个秘密项目发布时大伙儿眼镜大跌了一把:几乎 99% 基于 ripple 的代码,仅做了一些小修改以及把钱包换了个皮肤。

  那么究竟 stellar 有什么魔力让一群人不断追逐呢 今儿我们就从源码层面上来聊聊 Ripple 和 Stellar 的区别。

  差异

  下面我们就来看自从 2014 年 4 月 24 日到现在的修改,有兴趣的朋友可以去 Github 查看这些源码(https://github.com/stellar/stellard):

  钱包地址开头从原来的小写字母“r”改为了“g”。还有很多相关的类型也做了类似的变更。“g”代表什么含义 现在还无从查明。

  增加通货膨胀。这可能是最有革命性的一条变更。这样每个钱包都可以投票选举出另外一个钱包,让持有人每周可以获得目前 STR 总量的 0.019% 的利息。被选举的理由可以是为整个网络持续做贡献,或者参与源代码的开发。相关的两个字段 “FeePool”、“InflationSeq” 也被加入到了 Ledger 中。

  钱包可以被删除。这意味着用户可以把他的多个钱包合并为一个钱包。当然在此之前需要移除这些钱包的信任线。

  删除了一些冗余的数据结构,比如“Nickname”和“GeneratorMap”。不从原有的中央节点启动。

  使用 P256 来创建和验证签名信息,之前是 ed25519。

  允许所有用户访问 wallet_public 这个接口,并且重命名其为 create_keys。这项改动或许会有安全风险,黑客可以伪造一个相应信息,然后拿走你的私钥了。

  修改了一些接口的名称,修改了创世 ledger 的序号。

  从“AccountRoot”信息中移除了“EmailHash”、“WalletLocator”、“WalletSize”、“MessageKey”和“Domain”这些字段,并且移除了“PasswordSpend”标志位。

  合并了 rippled 的主干代码。

  那上述变更是否导致了 Stellar 与 Ripple 之间有了不可逾越的差异,或者有重大创新 虽然很多人觉得通货膨胀是个不错的创新,但是我笔者确认为

  签名算法改为 ed25519 或许在某一天可以解决 rippled 节点的性能问题,但是如果不解决目前节点存储性能的问题的话这点优势真是微乎其微的。删除钱包的功能很有用,除此之外基本就是整理代码一类的工作了。 但是很明显,通过一个只有三个程序员的团队的代码中并不能知晓他们的准确走向。Stellar 团队目前还没有给出一个明确的路线规划图来。目前来看最坏的情况就是解决安全问题的补丁并没有被合并到 Ripple 的项目代码中去,但却有新的 bug 层出不穷的出现。 向一个开发的、解释透彻的 STR 发布计划是可接受的,单目前为止这仅仅是页面上的一些文字罢了,关键是是否经得起时间考验。

  Ripple 与 Stellar 的差异是否真的能被市场所认可 这就需要时间来考验。

知识: Ripple stellar 源代码