Stellar共识协议(SCP)是Stellar网络的核心,确保系统安全高效地运营。SCP是在去中心化的金融网络中实现共识的革命性方法,基于联邦拜占庭协议(FBA)的概念,该协议侧重于去中心化控制的理念,节点自愿选择信任哪些其他参与者以获取可靠信息。了解更多关于拜占庭问题的信息,您可以参阅我们的另一篇文章:什么是拜占庭将军问题
文章摘录:“拜占庭将军问题(Byzantine failures),又称两军问题,1982年在莱斯利·兰波特研究分布式对等网络通信容错问题的论文中提出。在分布式系统的通讯过程中,可能会出现一些局部问题导致计算机发送错误信息,破坏系统一致性。因此,拜占庭将军问题本质上是关于点对点通信中的共识问题。”
SCP与工作量证明(PoW)和权益证明(PoS)机制有很大不同。比特币等网络使用的PoW需要大量计算来解决复杂的数学问题,以验证交易并创建新区块。而以太坊2.0等网络使用的PoS则要求验证者持有(有时还需锁定)一定数量的加密货币才能参与该过程。
SCP允许节点通过选择值得信赖的合作伙伴,称为Quorum Slice,来达成共识,消除了对能源密集型挖矿的需求,并且不需要验证者锁定资本作为权益。这种转变不仅减少了对环境的影响,还使网络安全的参与更加民主化。
SCP在速度和可靠性上具有明显优势。在Stellar网络上,交易可以在几秒钟内得到确认,这与PoW或PoS系统上可能需要几分钟甚至几小时才能确认交易的情况形成鲜明对比。此外,SCP的设计本质上可以防止双花攻击,并确保即使一些节点出现故障或恶意行为,网络也能继续平稳运行。
在共识机制的三个基本属性中,SCP重点关注其中两个:容错性和安全性,旨在在某些节点发生故障时仍能继续运行,并确保网络节点就交易结果达成一致,以避免冲突状态。虽然当节点难以达成协议时,这可能会延迟共识,但它大大降低了系统故障的可能性。
来源:https://developers.stellar.org/docs/fundamentals-and-concepts/stellar-stack
Stellar网络架构由多个层组成,这些层互相协调,提供全面的金融基础设施,目的是确保网络有强大的故障应对能力,对所有人开放,并以迅速且经济高效的方式运作,能够应对现实世界的金融活动。
Stellar网络层的设计以及各层之间的交互提供了一个坚实而灵活的基础,在此基础上可以构建和运营各种金融服务,从日常支付到复杂的去中心化金融应用。这种分层架构不仅确保了运营效率和可靠性,还支持创新,使开发人员能够专注于创建适合其特定用例的解决方案。
Stellar中的操作指的是可以改变账本状态的特定行为。每个操作都是一条做出更改的指令,这些指令以称为“交易”的集合形式提交到网络。交易具有原子性,要么全部成功,要么全部失败。操作涉及的范围从创建帐户到管理Stellar去中心化交易所(SDEX)中的订单。
Stellar中交易的建立过程是通过将一个或多个操作与其他信息(如源账户和序列号)捆绑在一起来完成的。这些交易使用源账户的密钥进行签名,以确保真实性,然后提交给Stellar网络进行处理。如果交易中的所有操作都有效,并且账户有足够的余额来支付费用和操作本身,则该笔交易被确认并纳入分类账。
此操作用于创建新的Stellar账户并存入资金。它需要一个初始余额,并在分类账中为该账户创建一个新条目。
支付操作允许账户向目标帐号发送特定资产的金额。这是在Stellar网络上转移价值的基本组成部分。
路径支付操作允许使用不同的资产进行支付;Stellar网络找到发送资产和接收资产之间的最佳路径。路径支付分为严格发送和严格接收版本,分别保证发送的金额或接收的金额。
这些操作用于在Stellar去中心化交易所中创建、更新或删除订单。有管理买入和卖出订单的独立操作,以及创建不立即匹配的被动订单的操作。
此操作用于配置帐户的各种设置,例如设置通胀目标、管理签名者或设置可以更改帐户权限的标志。
此操作会创建、更新或删除信任线,这是Stellar允许帐户持有和交易其他帐户发行的资产的方式。
账户合并操作是将一个账户的余额转移到另一个账户,并从分类账中删除源账户。
帐户可以将数据条目附加给自己,这些条目本质上是键值对。管理数据操作可以设置、修改或删除这些数据条目。
Stellar中的分类账相当于其他区块链网络中的区块,可以捕获给定时间点的网络状态。它包含所有余额、订单和其他数据,如智能合约信息。分类账按时间顺序链接,每个新的分类账版本都是将一组交易应用于先前版本的结果。分类账头是分类账的摘要,包含分类账版本、先前的分类账哈希和交易集结果哈希等元数据。
账户是Stellar中的主要数据结构,代表系统的用户。账户是通过“创建账户”操作创建的,有最低XLM余额要求,该余额由基本储备金乘以账户拥有的子条目数量确定。账户具有各种属性,如唯一标识符(账户ID)、不同资产的余额、签名者以及低、中、高安全性的阈值。
Stellar网络上的资产可以代表法定货币、加密货币或任何其他形式的价值。每个资产都由资产代码和发行人的账户标识。发行资产是通过发行人向另一个账户进行支付操作完成的。资产由发行账户控制,可以设置授权标志并链接到有关资产的元数据。在Stellar上发行的资产也可以通过Stellar资产合约在智能合约中使用。
操作是可以包含在交易中的单个指令,其范围从支付到在去中心化交易所上管理订单再到账户配置更改不等。交易会对这些操作进行捆绑并将它们提交到网络以并入分类账。交易具有原子性质;如果交易中的任何操作失败,整个交易都会失败。
Stellar通过Soroban平台引入了智能合约。Stellar上的智能合约是可以在区块链上执行操作的代码片段,由Wasm字节码组成,并存储在CONTRACT_DATA分类账条目中。智能合约可以在分类账上拥有自己的存储条目,这些条目可以是临时的,也可以是持久的,并具有不同的成本和生命周期。
每个数据结构和组成部分都在Stellar提供可扩展和灵活的金融基础设施的能力中发挥着关键作用。Stellar网络围绕这些元素的设计实现了广泛的金融操作,包括简单的支付以及复杂的金融工具和智能合约等。
Stellar交易的生命周期可以总结为以下几个过程。
SEP是对改进或增强Stellar网络互操作性和功能的提案。它们是一种标准化协议,开发人员和组织可以实施这协议以确保Stellar生态系统内的兼容性和顺畅交互。
SEP涵盖了Stellar网络运营的各个方面,包括基本的交易协议到更复杂的功能,如跨境支付和账户恢复。团队以协作的方式进行讨论、创建并更新SEP,这通常需要更广泛的Stellar社区参与讨论并发表意见。
一些重要的SEP包括:
Stellar共识协议(SCP)是Stellar网络的核心,确保系统安全高效地运营。SCP是在去中心化的金融网络中实现共识的革命性方法,基于联邦拜占庭协议(FBA)的概念,该协议侧重于去中心化控制的理念,节点自愿选择信任哪些其他参与者以获取可靠信息。了解更多关于拜占庭问题的信息,您可以参阅我们的另一篇文章:什么是拜占庭将军问题
文章摘录:“拜占庭将军问题(Byzantine failures),又称两军问题,1982年在莱斯利·兰波特研究分布式对等网络通信容错问题的论文中提出。在分布式系统的通讯过程中,可能会出现一些局部问题导致计算机发送错误信息,破坏系统一致性。因此,拜占庭将军问题本质上是关于点对点通信中的共识问题。”
SCP与工作量证明(PoW)和权益证明(PoS)机制有很大不同。比特币等网络使用的PoW需要大量计算来解决复杂的数学问题,以验证交易并创建新区块。而以太坊2.0等网络使用的PoS则要求验证者持有(有时还需锁定)一定数量的加密货币才能参与该过程。
SCP允许节点通过选择值得信赖的合作伙伴,称为Quorum Slice,来达成共识,消除了对能源密集型挖矿的需求,并且不需要验证者锁定资本作为权益。这种转变不仅减少了对环境的影响,还使网络安全的参与更加民主化。
SCP在速度和可靠性上具有明显优势。在Stellar网络上,交易可以在几秒钟内得到确认,这与PoW或PoS系统上可能需要几分钟甚至几小时才能确认交易的情况形成鲜明对比。此外,SCP的设计本质上可以防止双花攻击,并确保即使一些节点出现故障或恶意行为,网络也能继续平稳运行。
在共识机制的三个基本属性中,SCP重点关注其中两个:容错性和安全性,旨在在某些节点发生故障时仍能继续运行,并确保网络节点就交易结果达成一致,以避免冲突状态。虽然当节点难以达成协议时,这可能会延迟共识,但它大大降低了系统故障的可能性。
来源:https://developers.stellar.org/docs/fundamentals-and-concepts/stellar-stack
Stellar网络架构由多个层组成,这些层互相协调,提供全面的金融基础设施,目的是确保网络有强大的故障应对能力,对所有人开放,并以迅速且经济高效的方式运作,能够应对现实世界的金融活动。
Stellar网络层的设计以及各层之间的交互提供了一个坚实而灵活的基础,在此基础上可以构建和运营各种金融服务,从日常支付到复杂的去中心化金融应用。这种分层架构不仅确保了运营效率和可靠性,还支持创新,使开发人员能够专注于创建适合其特定用例的解决方案。
Stellar中的操作指的是可以改变账本状态的特定行为。每个操作都是一条做出更改的指令,这些指令以称为“交易”的集合形式提交到网络。交易具有原子性,要么全部成功,要么全部失败。操作涉及的范围从创建帐户到管理Stellar去中心化交易所(SDEX)中的订单。
Stellar中交易的建立过程是通过将一个或多个操作与其他信息(如源账户和序列号)捆绑在一起来完成的。这些交易使用源账户的密钥进行签名,以确保真实性,然后提交给Stellar网络进行处理。如果交易中的所有操作都有效,并且账户有足够的余额来支付费用和操作本身,则该笔交易被确认并纳入分类账。
此操作用于创建新的Stellar账户并存入资金。它需要一个初始余额,并在分类账中为该账户创建一个新条目。
支付操作允许账户向目标帐号发送特定资产的金额。这是在Stellar网络上转移价值的基本组成部分。
路径支付操作允许使用不同的资产进行支付;Stellar网络找到发送资产和接收资产之间的最佳路径。路径支付分为严格发送和严格接收版本,分别保证发送的金额或接收的金额。
这些操作用于在Stellar去中心化交易所中创建、更新或删除订单。有管理买入和卖出订单的独立操作,以及创建不立即匹配的被动订单的操作。
此操作用于配置帐户的各种设置,例如设置通胀目标、管理签名者或设置可以更改帐户权限的标志。
此操作会创建、更新或删除信任线,这是Stellar允许帐户持有和交易其他帐户发行的资产的方式。
账户合并操作是将一个账户的余额转移到另一个账户,并从分类账中删除源账户。
帐户可以将数据条目附加给自己,这些条目本质上是键值对。管理数据操作可以设置、修改或删除这些数据条目。
Stellar中的分类账相当于其他区块链网络中的区块,可以捕获给定时间点的网络状态。它包含所有余额、订单和其他数据,如智能合约信息。分类账按时间顺序链接,每个新的分类账版本都是将一组交易应用于先前版本的结果。分类账头是分类账的摘要,包含分类账版本、先前的分类账哈希和交易集结果哈希等元数据。
账户是Stellar中的主要数据结构,代表系统的用户。账户是通过“创建账户”操作创建的,有最低XLM余额要求,该余额由基本储备金乘以账户拥有的子条目数量确定。账户具有各种属性,如唯一标识符(账户ID)、不同资产的余额、签名者以及低、中、高安全性的阈值。
Stellar网络上的资产可以代表法定货币、加密货币或任何其他形式的价值。每个资产都由资产代码和发行人的账户标识。发行资产是通过发行人向另一个账户进行支付操作完成的。资产由发行账户控制,可以设置授权标志并链接到有关资产的元数据。在Stellar上发行的资产也可以通过Stellar资产合约在智能合约中使用。
操作是可以包含在交易中的单个指令,其范围从支付到在去中心化交易所上管理订单再到账户配置更改不等。交易会对这些操作进行捆绑并将它们提交到网络以并入分类账。交易具有原子性质;如果交易中的任何操作失败,整个交易都会失败。
Stellar通过Soroban平台引入了智能合约。Stellar上的智能合约是可以在区块链上执行操作的代码片段,由Wasm字节码组成,并存储在CONTRACT_DATA分类账条目中。智能合约可以在分类账上拥有自己的存储条目,这些条目可以是临时的,也可以是持久的,并具有不同的成本和生命周期。
每个数据结构和组成部分都在Stellar提供可扩展和灵活的金融基础设施的能力中发挥着关键作用。Stellar网络围绕这些元素的设计实现了广泛的金融操作,包括简单的支付以及复杂的金融工具和智能合约等。
Stellar交易的生命周期可以总结为以下几个过程。
SEP是对改进或增强Stellar网络互操作性和功能的提案。它们是一种标准化协议,开发人员和组织可以实施这协议以确保Stellar生态系统内的兼容性和顺畅交互。
SEP涵盖了Stellar网络运营的各个方面,包括基本的交易协议到更复杂的功能,如跨境支付和账户恢复。团队以协作的方式进行讨论、创建并更新SEP,这通常需要更广泛的Stellar社区参与讨论并发表意见。
一些重要的SEP包括: