2017
2018
2019
2020
ByronGoguen
Basho
Voltaire

根据coincodecap.com的数据显示,Cardano被评为开发最活跃的加密货币之一。coincodecap.com.

02

Shelley

去中心化

继Byron时期之后,Cardano的Shelley时期是一个网络增长和发展的时期。与始于主网启动的单个时间点的Byron时期不同,向Shelley的转变旨在实现平稳、低风险的过渡,而不会造成服务中断。

Shelley时期涵盖了Cardano对去中心化进行优化的关键早期步骤 - 与任何第一步一样,这些步骤将逐渐实施,但意义重大。Byron时期采用了联合网络,但随着Shelley时期的发展,越来越多的节点将转向由Cardano社区运行。一旦大多数节点由网络参与者运行,Cardano将变得更加去中心化,从而享受更高的安全性和稳健性。

Shelley还将见证委托和奖励方案的引入,这是一个以推动权益池和社区采用为目标的奖励系统。作为一个权益证明网络,用户质押他们的ADA以加入网络。这种委托和激励机制采用博弈论和对权益证明网络的最新研究成果精心设计,将允许和鼓励用户将自己的权益委托给权益池(始终在线、由社区运行的网络节点),并因诚实参与网络而获得奖励。

在Shelley时期即将结束时,我们预计Cardano将比其他大型区块链网络的去中心化程度高五十到一百倍,其中激励方案旨在达到约一千个权益池的平衡。目前著名的区块链网络通常由不到10个挖矿池控制,这使它们面临着被恶意行为破坏的严重风险 - Cardano采用固有设计的系统来鼓励更大程度的去中心化,从而避免了这种风险。不仅如此,整个Cardano网络的运行成本仅相当于同等权益证明区块链的电力成本的一小部分,使用相当于单个房屋而不是一个小镇的电力。

Shelley时期代表着网络的自然成熟,这使其对新老用户更有用、更有益、更有价值。这也是为未来做好准备。Shelley将为完全去中心化网络和全新的应用生态系统奠定基础,从而为将在Goguen、Basho和Voltaire时期引入的更多特性做好准备。

Shelley时期研究(只有英文版)

Ouroboros Praos: An Adaptively-Secure, Semi-synchronous Proof-of-Stake Blockchain(Ouroboros Praos:一种自适应安全、半同步的权益证明区块链)

一篇分析和讨论Ouroboros Praos的研究论文:Praos是一种可证明安全的权益证明协议,它改进了Ouroboros,旨在保护Cardano免受自适应攻击者的攻击。

Ouroboros Genesis: Composable Proof-of-Stake Blockchains with Dynamic Availability(Ouroboros Genesis:具有动态可用性的可组合权益证明区块链)

一篇分析和讨论Ouroboros Genesis的研究论文。Ouroboros Genesis通过使利益相关者能够安全地加入或重新加入区块链,进一步改进了Ouroboros权益证明协议。

Stake-Bleeding Attacks on Proof-of-Stake Blockchains(对权益证明区块链的权益流损攻击)

一篇研究论文,介绍了对没有检查点的权益证明区块链发起的攻击,以说明交易费用与奖励之间的密切关系以及PoS协议的安全属性。

Secure Two-Party Computation over Unreliable Channels(不可靠信道上的安全双方计算)

一篇研究论文,探讨了普通模型中的双方计算,其中假定没有可靠的信道(反映现实世界的设置)。我们研究了通信最优、抗噪声、半诚实的双方计算的可行性,并为此设计出一种信息理论技术。

Decreasing Security Threshold Against Double Spend Attack in Networks with Slow Synchronization(降低慢速同步网络中抵抗双重支付攻击的安全阈值)

一篇研究论文,研究与网络参数相关的工作量证明区块链中双重支付攻击的概率变化,并介绍了阈值的概念:基于概率实现成功攻击的最小对手比率。

A Formal Specification of the Cardano Ledger(Cardano分类账的形式化规范)

Shelley版本引入的分类账规则的形式化规范和可执行模型。

Specification of the Blockchain Layer(区块链层的规范)

一个形式化规范,在Byron时期以及向Cardano的Shelley时期过渡的范围内,对有效区块的定义以及将其添加到区块链所需的内容进行了形式化。

Engineering Design Specification for Delegation and Incentives in Cardano Shelley(Cardano Shelley中委托和激励的工程设计规范)

一种工程规范,详细说明了向Cardano中添加必要的功能以支持和激励委托的设计。

Ouroboros-BFT: A Simple Byzantine Fault Tolerant Consensus Protocol(Ouroboros-BFT:一种简单的拜占庭容错共识协议)

本文定义了一种简单的确定性协议,可用于容忍拜占庭错误的分类账共识,其中协议由n个服务器在同步网络上执行,当t < n/3时,可以容忍任意t个拜占庭错误。

Shelley 工作范围


共识奖励和费用

设计激励计划的目的是确保以一种使整个系统稳定可靠运作的方式行事,从而符合每个人的利益。运用数学、博弈论和经济学理论,激励系统专为实现上述目的而设计,包括为操作整个节点提供适当的奖励、委托权益的激励、设定交易费用的方法等等。



委托证书

权益委托由委托证书推动,ADA持有者在委托时指定并记录在区块链上。ADA持有者可以稍后通过颁发更新的委托证书来随意更改其委托设置。请注意,即使在委托时,ADA持有者仍保留花费其ADA的唯一权利和能力。



开放的Ouroboros委托研究论文和实现

去中心化的关键是利益相关者委托权益的能力。在诸如Cardano的权益证明系统中,利益相关者有义务参与该协议。由于这对某些用户来说可能并不总是切合实际,因此利益相关者能够将他们的义务委托给其他人(所谓的权益池)来履行义务。权益池始终运行在线的核心节点,以参与协议并在区块链中生成区块。我们的研究人员发表了一篇研究论文,概述了如何实现这一目标:"权益池的奖励分享方案",而代码实施工作已经开始。



权益池

并非每个ADA的利益相关者都拥有全时运行Cardano节点的资源、知识或意愿。为了解决这一问题并激励高性能的可靠网络节点,Cardano允许ADA的持有者将质押权限委托给Cardano权益池。权益池是由网络参与者运行的Cardano节点,他们致力于确保全时可用性和适当的硬件环境,以便为Cardano网络的响应时间、安全性和活跃性提供支持。当ADA持有者将其权益委托给该运营者的池时,权益池运营者可以获得奖励以便为网络提供支持。激励和奖励模型旨在激励委托给大量的权益池,确保网络的去中心化不断进行。由激励模型激励的最佳权益池数量可以调整,以微调网络性能的参数。



Ouroboros Praos

随着Cardano的发展,我们必须保持安全性。Ouroboros Praos对我们的权益证明协议Ouroboros做出了改进。Praos提供了免受自适应攻击者影响的安全性,可以容忍更严苛的网络条件,同时还能提高效率(从而提高可扩展性)。

通过私人领袖选择和前向安全签名,Praos确保强大的对手无法预测谁将成为下一个时隙领袖并发起针对性的攻击(例如,DDoS攻击)。该协议还能容忍对手控制的消息传递延迟以及不断变化的利益相关者群体中个体参与者的逐渐腐败,前提是利益相关者分配保持诚实的多数权益。



Ouroboros Genesis

Ouroboros Genesis是Ouroboros协议的下一个开发阶段。它在动态可用性下实现了安全性,引入这种形式化模型的目的是捕获节点离线并以不协调的方式重新加入协议执行时的情况。

该协议还引入了一种全新的链选择规则,使各方能够"从Genesis开始引导",从而仅以创世区块为基础重新加入执行链,而无需任何可信的第三方或检查点。Genesis确保每个新加入或重新加入的利益相关者都可以获得区块链的最新版本,从而避免远程攻击。

值得注意的是,通过Ouroboros Genesis,Cardano和其他权益证明区块链可以证明与工作量证明区块链的安全保证相匹配。



OUROBOROS BFT

成功实现OBFT是Shelley时期之前的重要发展里程碑。随着Cardano 1.5和OBFT的发布,可以开始准备逐步去中心化的网络。此更新不会影响用户当前使用的功能,但是,这是准备通过Shelley实现完全去中心化的必要技术步骤。



Daedalus中的委托

Daedalus将使用户能够使用简单而直观的UI,从应用程序委托他们的权益。在选择要委托给哪个权益池之前,ADA持有者将能够审查所有可用的权益池和相关信息,包括预计的奖励。用户还可以随时在钱包内更改其委托设置。



钱包后端重新设计

重新设计的Daedalus钱包后端基于IOHK研究人员创建的Cardano形式化钱包规范,这使其成为第一个使用形式化规范构建并使用形式化验证进行测试的加密货币钱包。常规用户和交易所用户都将受益于由此产生的性能改进,以及通过这种严格方法创建的钱包带来的空前安全性。



分离的钱包

钱包功能已经与节点分离并从中移除,以实现更好的功能分离和更低的依赖性。



纸钱包V2

为了提高安全性,新版纸钱包将允许离线创建纸钱包,并且不需要Daedalus与区块链同步。在新版本汇总,将采用新的单地址方案,但纸钱包的恢复将保持与纸钱包证书的初始版本的兼容性。通过将纸钱包与普通ADA钱包相关联,此过程将变得更容易且更直观。Daedalus还将支持以只读模式恢复纸钱包以进行审计,这样便可确保私钥安全地保持离线机状态。



硬件钱包支持

硬件钱包支持最初添加到Yoroi和AdaLite轻钱包中,并且还将添加到Daedalus钱包,以便用户可以将其ADA安全地保存在硬件钱包中,例如Ledger Nano、Ledger X和Trezor。



更快的钱包恢复速度

钱包恢复过程得到改善:钱包余额将在恢复后立即显示,而交易历史将在后台恢复。虽然这项工作已经完成,但钱包恢复过程仍在不断改进。



改善了Daedalus的钱包备份和恢复

钱包一般比较容易出现用户错误。更好的钱包恢复使我们能够通过将BIP39助记码链接到唯一的散列键来改善用户体验并减少用户错误。这将使用户能够识别是否已正确输入助记码,以及更轻松地实现备份和还原。散列键可以打印或存储在纸张或常规钱包旁边,并以代码和矢量图的形式显示。输入助记码后,将出现散列键;用户只需将显示的散列键与存储的散列键进行比较。



热钱包和冷钱包

传统上,冷钱包以牺牲可读性为代价提供安全性。对于冷钱包和热钱包实现,通过从任何热钱包中移除私钥即可将热钱包转换为冷钱包(反之亦然),实际上,这可在将其变成冷钱包的同时保持其可读性。通过这种方式,冷钱包变得可读,可提供交易和资金的证据,并且可以发送给第三方,但无法执行新的交易。



节点和区块链状态UI

我们将添加一个界面,用于以图形方式显示区块链的状态和各组件之间通信,从而显示系统的运行状况,以便识别任何问题。



BIP44分层确定性钱包地址

Cardano正在添加分层确定性(HD)钱包。这种钱包是在BIP32(比特币改进提案)中引入的,后来在BIP44中进行了改进。这种密钥导出方法使用分层确定性密钥从单个主对中派生密钥对。HD钱包以主密钥开始,通过使用索引对主密钥进行哈希运算来生成新的子密钥。通过更改索引,可创建不同的密钥,随后可以通过向索引提供主密钥来确定性地再现这些密钥。利用HD钱包,用户无需在每次使用时存储和生成新的密钥:只需要存储主密钥即可派生所有其他密钥。



人性化的地址

钱包由一组地址组成,每个地址都有ADA。目前,钱包地址是一长串数字和字母,不太容易一眼就将彼此区分开来。与比特币地址相比,Cardano地址目前要长得多。现在这项功能可以缩短钱包地址,从而使通信变得更轻松。这项工作的目标是使地址在长度上与比特币的地址更加接近,可通过简化地址中表示的信息并改进表示权益委托信息的方式来实现这一目标。



密钥演化签名

密钥演化签名是一种安全功能,其中时隙领袖的密钥会定期更改以避免在将来被恶意使用,这样一来,便无法使用过去时隙领袖中的被盗或非法购买的密钥对历史时隙中的链进行更改。



多重签名交易

Cardano中的多重签名交易将允许Daedalus为联合控制资金的人之间共享的钱包提供支持。例如,它支持由两个人持有的简单联合钱包,其中两个人需要为所有交易签名。它还支持更复杂的安排,例如由三个人持有的钱包,其中任何两个人都可以签署交易。这是一个非常有用的安全功能,可以防止一个人的密钥被泄露,也可以作为一个十分有益的功能,以便在需要协议来完成支付的情况下联合控制资金。



地址方案向后兼容性

在实现BIP44钱包地址后,一些ADA可能会保留在旧钱包地址中。Cardano将继续无限期地为旧钱包地址提供支持,因此在引入新的钱包地址方案后无需移动ADA。



钱包后端中多个代码库的支持

钱包后端已经与节点分离,同时抽象出通信接口。这样一来,便可在技术规范的基础上将在功能上等效的节点写入不同的代码库,一个在Haskell中,一个在Rust中。



流畅的代码更新

Cardano确保流畅的代码更新,而不是成为影响其他区块链的硬分叉问题的牺牲品。新代码与旧代码一起包含在内,而不是在一次更新中从旧代码转换为新代码,更新后,节点将继续使用旧代码,直到已经更新了足够多的网络。直到这时才会触发代码转换。



更快且更具弹性的存储

在Shelley时期,经过重新设计和重构的存储系统提供了更高的I/O效率,因此实现了更出色的节点和钱包性能。此外,钱包还能更好地处理更常见的数据损坏形式,例如,由于关闭不完整或中止而导致的数据损坏,这种情况下发生的问题会影响最新的区块链数据。



更快的网络同步

区块的下载速度得到改进,这可提高区块链同步的速度。现实条件下的测试表明,经过改进的协议比以前快四倍。



联网

完全去中心化的加密货币需要完全去中心化的网络层,网络层是系统的一部分,允许节点加入网络并发送和接收交易与区块。为了完全实现去中心化,这将以对等(P2P)方式工作,而不依赖于任何中央机构。它也会像现在一样工作,无需任何特殊的防火墙或家庭互联网设置。网络必须为开放状态以允许任何人加入,但现有的大型开放式P2P网络容易受到相对较少的恶意节点的攻击。其他研究人员已经从这些现有P2P网络上吸取了教训,我们正在遵循他们现在推荐的最佳实践。最后,新网络层旨在为大规模分布式拒绝服务(DDoS)攻击提供一定程度的保护。

网络协议

为实现上述目标,Cardano具有完全自定义的定制网络层,由以下小型协议组成:

  • 节点到节点协议包
  • 节点到客户端协议包
  • 握手版本协商
  • 承载拓扑配置和管理 - 对等点发现和选择
  • 链同步协议
  • 区块获取协议
  • 交易提交协议
  • 多路复用层


Byron-Shelley过渡框架

Byron-Shelley过渡框架提供了从Byron安全转移到Shelley时期的方法。来自联合网络的旧节点会逐步将创建区块的责任移交给权益池,而我们的DevOps团队将监视健康指标,例如链增长和正确委托的权益数量。这种机制对于降低Cardano中这一关键阶段的风险至关重要。



Byron-Shelley网络代理

这是一个网络基础设施,可以在最初的Shelley升级后在新旧Cardano节点之间实现持续通信。利用代理,即使仍然处于Byron兼容时期,Shelley节点也能够验证在Byron时期创建的区块,确保网络与传统节点协同工作。



mempool重实现

mempool会存储尚未写入区块的进程内交易。对于Shelley时期,Cardano mempool已经以更有效的方式重新实现,从而提高了性能。此外,经过设计,它还对分布式拒绝服务(DDoS)攻击具有极高的抵抗能力。



交易创造和提交的重实现

在Shelley代码库中,交易创建和提交过程将分为两个阶段。这将允许离线创建和交易签名,而这是硬件钱包和许多交易所的要求。



链生成器和验证器

链生成器和验证器组件用于随机生成和验证链以用于测试目的,从而能够在各种场景中全面测试共识和网络功能。利用这些功能,团队可以对系统进行基于属性的测试,捕获并解决仅在罕见边界情况下出现的缺陷,以及使用更传统的测试方法无法发现的缺陷。



日志记录和监视

我们已经实施了经过改进的日志记录和监视系统,其中具有用于跟踪运行性能和诊断问题的附加细节和粒度。结构化的机器和人类可读格式用于实现可搜索性和易用性。改进的日志记录系统支持实时监视和指标,并且可以在运行时在组件级别激活和调整,从而无需重新启动即可更改日志配置。



代码增强和重新实现

在首次推出Cardano网络后,我们为增强整个代码库做了大量工作。代码的基本结构和效率已得到改善,在某些情况下甚至被完全重写。存储和同步等核心网络元素也经过重新设计和重新实现,从而在整个代码库中实现更出色的性能、可靠性和可维护性。



设计激励计划的目的是确保以一种使整个系统稳定可靠运作的方式行事,从而符合每个人的利益。运用数学、博弈论和经济学理论,激励系统专为实现上述目的而设计,包括为操作整个节点提供适当的奖励、委托权益的激励、设定交易费用的方法等等。


权益委托由委托证书推动,ADA持有者在委托时指定并记录在区块链上。ADA持有者可以稍后通过颁发更新的委托证书来随意更改其委托设置。请注意,即使在委托时,ADA持有者仍保留花费其ADA的唯一权利和能力。


去中心化的关键是利益相关者委托权益的能力。在诸如Cardano的权益证明系统中,利益相关者有义务参与该协议。由于这对某些用户来说可能并不总是切合实际,因此利益相关者能够将他们的义务委托给其他人(所谓的权益池)来履行义务。权益池始终运行在线的核心节点,以参与协议并在区块链中生成区块。我们的研究人员发表了一篇研究论文,概述了如何实现这一目标:"权益池的奖励分享方案",而代码实施工作已经开始。


并非每个ADA的利益相关者都拥有全时运行Cardano节点的资源、知识或意愿。为了解决这一问题并激励高性能的可靠网络节点,Cardano允许ADA的持有者将质押权限委托给Cardano权益池。权益池是由网络参与者运行的Cardano节点,他们致力于确保全时可用性和适当的硬件环境,以便为Cardano网络的响应时间、安全性和活跃性提供支持。当ADA持有者将其权益委托给该运营者的池时,权益池运营者可以获得奖励以便为网络提供支持。激励和奖励模型旨在激励委托给大量的权益池,确保网络的去中心化不断进行。由激励模型激励的最佳权益池数量可以调整,以微调网络性能的参数。


随着Cardano的发展,我们必须保持安全性。Ouroboros Praos对我们的权益证明协议Ouroboros做出了改进。Praos提供了免受自适应攻击者影响的安全性,可以容忍更严苛的网络条件,同时还能提高效率(从而提高可扩展性)。

通过私人领袖选择和前向安全签名,Praos确保强大的对手无法预测谁将成为下一个时隙领袖并发起针对性的攻击(例如,DDoS攻击)。该协议还能容忍对手控制的消息传递延迟以及不断变化的利益相关者群体中个体参与者的逐渐腐败,前提是利益相关者分配保持诚实的多数权益。


Ouroboros Genesis是Ouroboros协议的下一个开发阶段。它在动态可用性下实现了安全性,引入这种形式化模型的目的是捕获节点离线并以不协调的方式重新加入协议执行时的情况。

该协议还引入了一种全新的链选择规则,使各方能够"从Genesis开始引导",从而仅以创世区块为基础重新加入执行链,而无需任何可信的第三方或检查点。Genesis确保每个新加入或重新加入的利益相关者都可以获得区块链的最新版本,从而避免远程攻击。

值得注意的是,通过Ouroboros Genesis,Cardano和其他权益证明区块链可以证明与工作量证明区块链的安全保证相匹配。


成功实现OBFT是Shelley时期之前的重要发展里程碑。随着Cardano 1.5和OBFT的发布,可以开始准备逐步去中心化的网络。此更新不会影响用户当前使用的功能,但是,这是准备通过Shelley实现完全去中心化的必要技术步骤。


Daedalus将使用户能够使用简单而直观的UI,从应用程序委托他们的权益。在选择要委托给哪个权益池之前,ADA持有者将能够审查所有可用的权益池和相关信息,包括预计的奖励。用户还可以随时在钱包内更改其委托设置。


重新设计的Daedalus钱包后端基于IOHK研究人员创建的Cardano形式化钱包规范,这使其成为第一个使用形式化规范构建并使用形式化验证进行测试的加密货币钱包。常规用户和交易所用户都将受益于由此产生的性能改进,以及通过这种严格方法创建的钱包带来的空前安全性。


钱包功能已经与节点分离并从中移除,以实现更好的功能分离和更低的依赖性。


为了提高安全性,新版纸钱包将允许离线创建纸钱包,并且不需要Daedalus与区块链同步。在新版本汇总,将采用新的单地址方案,但纸钱包的恢复将保持与纸钱包证书的初始版本的兼容性。通过将纸钱包与普通ADA钱包相关联,此过程将变得更容易且更直观。Daedalus还将支持以只读模式恢复纸钱包以进行审计,这样便可确保私钥安全地保持离线机状态。


硬件钱包支持最初添加到Yoroi和AdaLite轻钱包中,并且还将添加到Daedalus钱包,以便用户可以将其ADA安全地保存在硬件钱包中,例如Ledger Nano、Ledger X和Trezor。


钱包恢复过程得到改善:钱包余额将在恢复后立即显示,而交易历史将在后台恢复。虽然这项工作已经完成,但钱包恢复过程仍在不断改进。


钱包一般比较容易出现用户错误。更好的钱包恢复使我们能够通过将BIP39助记码链接到唯一的散列键来改善用户体验并减少用户错误。这将使用户能够识别是否已正确输入助记码,以及更轻松地实现备份和还原。散列键可以打印或存储在纸张或常规钱包旁边,并以代码和矢量图的形式显示。输入助记码后,将出现散列键;用户只需将显示的散列键与存储的散列键进行比较。


传统上,冷钱包以牺牲可读性为代价提供安全性。对于冷钱包和热钱包实现,通过从任何热钱包中移除私钥即可将热钱包转换为冷钱包(反之亦然),实际上,这可在将其变成冷钱包的同时保持其可读性。通过这种方式,冷钱包变得可读,可提供交易和资金的证据,并且可以发送给第三方,但无法执行新的交易。


我们将添加一个界面,用于以图形方式显示区块链的状态和各组件之间通信,从而显示系统的运行状况,以便识别任何问题。


Cardano正在添加分层确定性(HD)钱包。这种钱包是在BIP32(比特币改进提案)中引入的,后来在BIP44中进行了改进。这种密钥导出方法使用分层确定性密钥从单个主对中派生密钥对。HD钱包以主密钥开始,通过使用索引对主密钥进行哈希运算来生成新的子密钥。通过更改索引,可创建不同的密钥,随后可以通过向索引提供主密钥来确定性地再现这些密钥。利用HD钱包,用户无需在每次使用时存储和生成新的密钥:只需要存储主密钥即可派生所有其他密钥。


钱包由一组地址组成,每个地址都有ADA。目前,钱包地址是一长串数字和字母,不太容易一眼就将彼此区分开来。与比特币地址相比,Cardano地址目前要长得多。现在这项功能可以缩短钱包地址,从而使通信变得更轻松。这项工作的目标是使地址在长度上与比特币的地址更加接近,可通过简化地址中表示的信息并改进表示权益委托信息的方式来实现这一目标。


密钥演化签名是一种安全功能,其中时隙领袖的密钥会定期更改以避免在将来被恶意使用,这样一来,便无法使用过去时隙领袖中的被盗或非法购买的密钥对历史时隙中的链进行更改。


Cardano中的多重签名交易将允许Daedalus为联合控制资金的人之间共享的钱包提供支持。例如,它支持由两个人持有的简单联合钱包,其中两个人需要为所有交易签名。它还支持更复杂的安排,例如由三个人持有的钱包,其中任何两个人都可以签署交易。这是一个非常有用的安全功能,可以防止一个人的密钥被泄露,也可以作为一个十分有益的功能,以便在需要协议来完成支付的情况下联合控制资金。


在实现BIP44钱包地址后,一些ADA可能会保留在旧钱包地址中。Cardano将继续无限期地为旧钱包地址提供支持,因此在引入新的钱包地址方案后无需移动ADA。


钱包后端已经与节点分离,同时抽象出通信接口。这样一来,便可在技术规范的基础上将在功能上等效的节点写入不同的代码库,一个在Haskell中,一个在Rust中。


Cardano确保流畅的代码更新,而不是成为影响其他区块链的硬分叉问题的牺牲品。新代码与旧代码一起包含在内,而不是在一次更新中从旧代码转换为新代码,更新后,节点将继续使用旧代码,直到已经更新了足够多的网络。直到这时才会触发代码转换。


在Shelley时期,经过重新设计和重构的存储系统提供了更高的I/O效率,因此实现了更出色的节点和钱包性能。此外,钱包还能更好地处理更常见的数据损坏形式,例如,由于关闭不完整或中止而导致的数据损坏,这种情况下发生的问题会影响最新的区块链数据。


区块的下载速度得到改进,这可提高区块链同步的速度。现实条件下的测试表明,经过改进的协议比以前快四倍。


完全去中心化的加密货币需要完全去中心化的网络层,网络层是系统的一部分,允许节点加入网络并发送和接收交易与区块。为了完全实现去中心化,这将以对等(P2P)方式工作,而不依赖于任何中央机构。它也会像现在一样工作,无需任何特殊的防火墙或家庭互联网设置。网络必须为开放状态以允许任何人加入,但现有的大型开放式P2P网络容易受到相对较少的恶意节点的攻击。其他研究人员已经从这些现有P2P网络上吸取了教训,我们正在遵循他们现在推荐的最佳实践。最后,新网络层旨在为大规模分布式拒绝服务(DDoS)攻击提供一定程度的保护。

网络协议

为实现上述目标,Cardano具有完全自定义的定制网络层,由以下小型协议组成:

  • 节点到节点协议包
  • 节点到客户端协议包
  • 握手版本协商
  • 承载拓扑配置和管理 - 对等点发现和选择
  • 链同步协议
  • 区块获取协议
  • 交易提交协议
  • 多路复用层

Byron-Shelley过渡框架提供了从Byron安全转移到Shelley时期的方法。来自联合网络的旧节点会逐步将创建区块的责任移交给权益池,而我们的DevOps团队将监视健康指标,例如链增长和正确委托的权益数量。这种机制对于降低Cardano中这一关键阶段的风险至关重要。


这是一个网络基础设施,可以在最初的Shelley升级后在新旧Cardano节点之间实现持续通信。利用代理,即使仍然处于Byron兼容时期,Shelley节点也能够验证在Byron时期创建的区块,确保网络与传统节点协同工作。


mempool会存储尚未写入区块的进程内交易。对于Shelley时期,Cardano mempool已经以更有效的方式重新实现,从而提高了性能。此外,经过设计,它还对分布式拒绝服务(DDoS)攻击具有极高的抵抗能力。


在Shelley代码库中,交易创建和提交过程将分为两个阶段。这将允许离线创建和交易签名,而这是硬件钱包和许多交易所的要求。


链生成器和验证器组件用于随机生成和验证链以用于测试目的,从而能够在各种场景中全面测试共识和网络功能。利用这些功能,团队可以对系统进行基于属性的测试,捕获并解决仅在罕见边界情况下出现的缺陷,以及使用更传统的测试方法无法发现的缺陷。


我们已经实施了经过改进的日志记录和监视系统,其中具有用于跟踪运行性能和诊断问题的附加细节和粒度。结构化的机器和人类可读格式用于实现可搜索性和易用性。改进的日志记录系统支持实时监视和指标,并且可以在运行时在组件级别激活和调整,从而无需重新启动即可更改日志配置。


在首次推出Cardano网络后,我们为增强整个代码库做了大量工作。代码的基本结构和效率已得到改善,在某些情况下甚至被完全重写。存储和同步等核心网络元素也经过重新设计和重新实现,从而在整个代码库中实现更出色的性能、可靠性和可维护性。


更新


蒙古 - 非常适合Atala和Cardano试点

多位部长和众多企业对区块链满怀热忱

想到蒙古,浮现在你脑海中的情景可能是草原、山脉、寒冷的冬天和游牧民族。大家不太可能将它与突破性技术联系到一起,但实际上,蒙古是一个非常适合实施区块链试点的国家。

2019年5月16日 | Charles Hoskinson

Cardano 2020年:实现愿景

新推出的路线图、产品展示和定期更新将突出显示进展

Cardano正处于激动人心的转型阶段。长期以来,此项目一直将深思熟虑的产品愿景与研究驱动的规范和基于证据的开发流程相结合。除了继续秉承这种严谨的精神,目前我们正在迈向一个新的发展阶段,全力交付世界首创的全新功能。项目逐渐开始接受现实的检验。

2019年5月7日 | David Esser
View all Shelley 更新

ouroboros-network Repository medusa

Explore historical and real-time GitHub commits