Stellar 是一个独特的去中心化支付系统,旨在成为区块链与传统金融机构之间的桥梁。它并非要构建一套全新的金融体系,而是致力于将区块链技术与现有金融生态系统无缝结合,在支付和银行系统之间提供高效的协调功能。本文将深入解析 Stellar 的网络架构、核心概念及其在金融领域的应用价值。
系统架构设计
Stellar 网络允许开发者构建移动端钱包、在线银行系统以及各类支付服务。整个系统由两个核心组件构成:
- Horizon:提供 API 服务,用于与 Stellar 网络进行交互
- Stellar Core:作为网络骨干,通过共识算法负责交易的验证和处理
所有 Horizon 服务都连接到 Stellar Core,后者可类比为比特币网络中的节点。相互连接的 Stellar Core 节点共同构成了整个去中心化网络,而 Horizon 则是与这些节点通信的 HTTP 接口服务。
由于 Stellar 的设计目标是整合传统金融系统与区块链技术,它内置了强大的代币发行功能。与以太坊"运行智能合约的分布式平台"的定位不同,Stellar 直接提供了原生发币能力,无需依赖 ERC20 等额外协议。
为实现这一设计目标,Stellar 引入了账户、资产、分布式交易所、通货膨胀以及锚点等概念,构建了一套完整的金融基础设施。
核心组件:锚点(Anchor)
在 Stellar 生态中,锚点(Anchor)是一个关键且创新的概念。这些可信实体帮助用户保留存款并向网络发行信用,可类比为各国的中央银行。
所有在网络中交易的资产都是由锚点发行的信用,这些锚点可以是银行、储蓄机构、农业合作社、中央银行或汇款公司。作为锚点,通常需要维护至少两个账户:
- 发行账户:专门用于资产的发行和销毁
- 基础账户:处理与其他 Stellar 账户的业务往来,存储所有发行账户创建的资产
付款流程详解
锚点需要支持两个核心功能:付款和收款。以下是官方文档中描述的付款流程:
- 客户通过锚点提供的客户端或网页发起付款请求
- 锚点内部服务通过桥接服务(Bridge)处理付款指令
- 桥接服务决定是否需要进行合规检查,并将交易信息发送给合规服务
- 合规服务通过查找联合地址确定收款账户 ID
- 合规服务调用锚点接口获取客户信息,并发送给收款方的合规服务
- 通过合规验证后,桥接服务创建并签发交易,发送到 Stellar 网络
- 交易获得网络确认后,桥接服务更新客户账户余额
收款流程解析
当接收外部转账时,数据流程有所不同:
- 发送方通过联合地址查找 Stellar 账户 ID 并发起付款
- 发送方将付款信息与账户信息发送给收款方合规服务
合规服务联系三个不同服务:
- 制裁回调:判断发送者是否被允许向客户支付
- 信息提供回调:决定是否向发送者提供客户信息
- 数据传递回调:在同意后提供客户信息
- 发送方将交易提交到 Stellar 网络
- 桥接服务监控网络交易,确认是否为已授权的付款
- 桥接服务通知内部服务交易已确认,更新客户账户余额
从这些流程可以看出,Stellar 的架构设计充分考虑了资产发行方对自有资产的管控需求,确保转账和付款流程符合监管要求。这一特性对大型金融机构尤为重要,也是 Stellar 网络的突出亮点之一。
核心概念解析
Stellar 引入了一系列独特的概念和数据结构,除了常见的交易、账户和资产等区块链基础元素外,还包含了信任线、通货膨胀等源自传统金融系统的概念。
账户体系
账户是 Stellar 中的核心数据结构,由存储在账本中的公钥标识。所有其他数据结构都归属于特定账户,包括交易(Transaction)也需要由账户私钥签名才能生效。
AccountEntry 是 Stellar 中的关键结构体,包含以下重要字段:
accountID:账户的唯一标识符,通常是账户对应的公钥balance:当前账户持有的 XLM 余额seqNum:最新交易序列号,确保交易签发线性有序numSubEntries:账户包含的条目数量,包括信任线、订单和数据等inflationDest:接受通货膨胀收益的目标地址
每个 Stellar 账户都对应一个 AccountEntry 以及多个 TrustLineEntry、OfferEntry 和 DataEntry:
信任线(TrustLine) 表示账户接受其他账户发行的资产,相当于一个关系表,记录信任的资产类型和余额。
数据条目(DataEntry) 允许账户存储键值对数据,为应用特定数据提供存储空间,大大增强了系统的扩展能力。
交易机制
在 Stellar 中,交易是改变账本状态的唯一方式。交易具备多种功能,包括发起付款、创建交易所订单、修改账户设置等。如果将账本视为数据库,那么交易就是执行操作的 SQL 命令。
交易结构包含以下关键属性:
sourceAccount:交易发起地址,必须由该地址签名seqNum:交易序列号,对每个账户必须唯一且单调递增operations:操作数组,包含本次交易要执行的所有操作
每个 Transaction 由一组 Operation 组成,可用操作包括 CreateAccount、Payment、PathPayment、ManageOffer 等。以付款操作为例,需要指定目标账户、资产类型和数量三个参数。
交易具有原子性特性:所有操作要么全部成功,要么全部失败,确保状态一致性。
资产发行与管理
资产是区块链生态的重要组成部分。在 Stellar 中,除了原生资产 Lumens(XLM),所有资产都由发行人和资产类型共同定义。
持有 Stellar 资产实质上是持有特定发行人的信用,相信发行人能够将链上资产兑换为法币、贵金属或其他线下资源。要持有某发行人的资产,需要建立信任线(TrustLine),这些数据存储在账本中的 TrustLineEntry 中。
资产发行需提供符合 ISO 4217 或 ISIN 标准的资产编码。用户要持有或交易某种资产时,会创建等待发行人审批的信任线。获得授权后,才能接收和发送该资产。发行人可随时冻结用户权限,取消后用户将无法继续操作该资产。
分布式交易所
为增强资产流动性,Stellar 提供了去中心化交易所功能。任意两种资产间都会形成交易市场,用户可通过 ManageOrder 操作向订单簿添加新订单,行为模式与传统交易所的限价单基本相同。
通货膨胀机制
与许多固定总量的加密货币不同,Stellar 引入了通货膨胀机制。网络中的 XLM 会以每年 1% 的速度增发,这些新增代币将分配给获得网络投票超过 0.05% 的账户。这种设计模仿了传统法币的通胀特性,适当的通货膨胀有助于增加市场流动性。
应用价值与前景
Stellar 作为去中心化支付系统,在设计时充分考虑了监管合规需求,为银行和大型金融机构提供了接入区块链网络的实用方案。它不追求绝对的去中心化和匿名性,而是注重与现实金融体系的兼容性,这一理念在区块链项目中显得尤为超前和实用。
常见问题
Stellar 与比特币的主要区别是什么?
Stellar 专注于支付和资产发行,旨在连接传统金融与区块链技术,而比特币主要作为价值存储和点对点现金系统。Stellar 交易速度更快,费用更低,且支持资产发行和去中心化交易功能。
如何成为 Stellar 网络中的锚点?
机构需要建立必要的技术基础设施,包括桥接服务和合规系统,并获得相应金融牌照。锚点需要维护发行账户和基础账户,确保能够处理资产发行和赎回业务。
Stellar 的共识机制如何工作?
Stellar 使用联邦拜占庭协议(FBA)作为共识机制。每个节点选择自己信任的节点集合,通过投票方式达成共识。这种机制比工作量证明更节能,交易确认速度更快。
普通用户如何使用 Stellar 网络?
用户可通过支持 Stellar 的钱包应用创建账户,进行资产存储和转账。也可以使用内置的去中心化交易所进行资产交易,所有操作都需支付少量 XLM 作为手续费。
Stellar 适合哪些应用场景?
特别适合跨境支付、资产发行、微支付和金融包容性项目。金融机构可用其构建高效的支付网络,企业可发行自定义资产,开发者可创建金融应用。
如何确保 Stellar 网络的安全性?
网络通过分布式共识机制保障安全,所有交易需经过验证节点确认。账户需要多重签名保护,资产发行方可通过合规服务监控交易,防止非法活动。