ArcBlock 区块链平台与生态系统简介

作者: Matt McKinney(ArcBlock 市场与业务拓展总监)
ArcBlock 是行业领先的项目,旨在为开发者提供轻松构建、管理和部署去中心化应用所需的一切,并解决企业在银行、金融、物联网、游戏、法律等领域使用区块链时面临的诸多问题。
ArcBlock:简史
ArcBlock 成立于 2018 年初,但开发平台和生态系统背后的构想早已萌芽。创始人兼首席执行官 Robert Mao 最初设想的是一个“知识共享平台”,但他很快发现,许多访问网站的用户都在尝试解决区块链行业的常见难题——性能不佳、功能不足、扩展性有限、供应商锁定等。就像优秀的初创企业一样,ArcBlock 的理念随之转向创建区块链应用平台和生态系统:继续发挥去中心化优势,同时解决开发者使用传统区块链 1.0 和 2.0 系统时遇到的诸多问题。
ArcBlock 不应被简单视为一家公司、一条区块链或一种加密货币,而应被看作更广泛的“区块链服务”平台,包含开发者轻松编写、部署和管理去中心化应用及区块链服务所需的一切。
ArcBlock 平台
ArcBlock 解决了当今区块链在复杂性、扩展性、供应商锁定和开发工具等方面的诸多问题。ArcBlock 是首个提供完整端到端用户体验的区块链应用开发平台,既让开发者能够构建自己的区块链和去中心化应用,也为终端用户提供精心设计的体验和功能,使采用和使用去中心化应用变得简单。扩展性问题、通用公链和要求专用语言的定制开发方式将成为过去;开发者可以直接使用自己偏好的语言,创建适合具体使用场景的定制区块链。
ArcBlock 区块链服务平台借鉴 20 年来得到验证的 Web 应用模式,重塑了 Web 技术栈。开发者可以保留现有应用模型,同时利用最新区块链技术、云服务和互联区块链网络,支持数以百万计且彼此互操作的区块链与应用。

Forge Framework
ArcBlock 平台的关键组件是 Forge Framework,它为开发者提供构建 DApp 所需的一切,包括公共 API、区块链后端、丰富的开发者界面、多样化的钱包系统和去中心化身份。Forge 可轻松支持定制及多种分布式账本技术。正如 Ruby on Rails 改变了 Web 开发,Forge Framework 旨在解决构建去中心化应用时的常见开发问题,并重塑分布式账本系统的开发方式。Forge Framework 开箱即用的功能包括但不限于:
- 自动升级
- 容错
- 集成支持比特币和以太坊等外部链
- 支持 gRPC 和 GraphQL
- 链上治理
- 自动更新
- 广泛支持 Javascript、Python、Erlang、Swift、Objective-C、iOS 和 Android
- 可无限扩展的网络
- 使用 Forge SDK 构建的任何 DApp 或服务都原生兼容 ABT Network
- 内置去中心化身份
- 强大的 Forge-CLI
Forge Framework 提供区块链框架中最广泛的交易支持,其中多项业界首创能力显著提升了开发效率,包括便捷的账户迁移、无需重启的实时节点升级,以及 ArcBlock 获得专利的 Asset Factory,可自动轻松支持大量资产。
Forge SDK
Forge SDK 是 Forge Framework 的完整软件开发工具包,为开发者提供轻松构建区块链和去中心化应用所需的一切。与其他公链方案(如 Ethereum)不同,Forge 让开发者和应用构建者能够按照自己的应用逻辑自由发布定制区块链。开发者可以在 Forge 之上轻松构建自己的区块链,为用户支持几乎任何可以想象的使用场景。Forge 支持 Python、Erlang、Node.js 等语言,并提供业界领先的交易能力,包括无需重启区块链即可向应用添加新交易。
Forge SDK 也让非区块链开发者能够构建利用区块链技术及其优势的服务,包括:
- 可信存储:数据从输入(交易)到存储(状态)的全过程都可验证可信。
- 可信计算:软件能够以可信方式执行。
- 容错:软件能够抵御从 CFT(崩溃容错)到 BFT(拜占庭容错)的故障。
- 内置支付支持:开发者无需额外工作就能构建支持支付的系统,例如公开透明的竞价系统,或值得信赖的数字资产交易系统。
ABT Blockchain Node
ArcBlock 的 ABT Blockchain Node 旨在成为最简单的区块链节点软件,帮助用户和开发者管理、运行 DApp 及区块链服务。用户可以在笔记本电脑本地设置 ABT Node,也可以将其部署到 AWS、Azure 等 ArcBlock 云合作伙伴的平台上。

每个 ABT Node 都让用户能够轻松查看区块链节点的健康状态,包括存储、网络和共识情况。此外,每个节点都包含区块浏览器,用于验证交易和生成的区块。ABT Node 还提供一套开发者工具,方便调试应用,包括使用 GraphQL 查询和利用区块链数据,以及模拟器、去中心化身份工作坊等。
ABT Network
ABT Network 是由独立区块链组成的去中心化网络。这些区块链彼此互联、互操作,让开发者可以根据具体使用场景轻松构建和设计自己的区块链。ABT Network 上的每条链都能无缝转移资产和共享数据;用户创建自己的去中心化身份后,即可与 ABT Network 上构建的任何服务或应用交互。

ABT Network 的主要通证是 ABT。ArcBlock 的网络推出了三条区块链来支持 ABT Network——Argon、Bromine 和 Titanium,并最终将形成由数百乃至数千条互联区块链组成的 ABT Network。
ABT Wallet
ABT Wallet 是一种新型去中心化身份钱包,它结合当今主流加密货币采用的技术,以及维护和掌控数字身份的能力,让用户借助去中心化身份与应用、网站、培训活动、教育等众多场景交互。可在此进一步了解 ABT Wallet。除身份验证外,你还可以使用 ABT Wallet 存储和转移 ABT、将 ABT 委托给验证者,并为链上治理提案投票。
ABT 协议
这是首个在单一协议中支持多种 DSA 和哈希算法的协议。为了支持 ABT 协议,ArcBlock 还将利用 DID 身份验证协议,让使用移动钱包应用的用户与运行在 ABT Network 上的应用通过交换可公开验证的声明进行双向身份验证。

ArcBlock 的 DID 方案独具特色:我们的模式可支持多种 DSA 和哈希算法,而其他方案无法做到。ABT 协议方法已被 W3C CCG DID Method Registry 收录:https://w3c-ccg.github.io/did-method-registry/#the-registry。我们的身份验证协议工作流遵循以下三个流程:
- 预先获知
- 请求 DID 身份验证
- 响应 DID 身份验证
通用与本地区块浏览器
目前,ArcBlock 提供多种区块浏览器。第一种是 ArcBlock 的 ABT Network 通用浏览器,可用于验证网络交易、查看活动等。此外,用户和开发者还可以使用 ABT Blockchain Node 提供的自有区块浏览器,在节点上查看链数据。

这些区块浏览器还允许你搜索、查看和分析 ArcBlock 数据,例如区块、交易、验证者等。
Forge-CLI
Forge-CLI 是用于与 Forge SDK 和 ABT Network 交互的命令行界面。它是唯一支持 Forge SDK 全部功能的工具,包括账户、交易、转账、委托和治理。

开放链访问协议
开放链访问协议 为开发者和组织提供了一种轻松访问、使用不同区块链数据源数据的方式。目前,大多数分布式账本以不同格式存储,相关实体需要自行运行索引服务器;若没有大量专门开发和中心化基础设施,很难在应用中直接使用分布式账本数据。开放链访问协议通过创建访问底层分布式账本的抽象层来解决这些问题,为开发者提供统一方式,以使用和查询应用所需的数据。

DApps Workshop
Dapps Workshop 是首款面向开发者和产品经理的概念验证工具,用于测试不同的去中心化应用场景。它无需编写代码,成本低且收益高,可用于测试交易相关事务、加密标准、DSA 和哈希算法,也能测试身份验证、身份、应用、跨链和交易工作流。
ABT Token
ABT Token 让用户能够使用 ABT Network,并为其价值、安全和治理作出贡献。ABT 可用于成为验证者,用户也可以通过 ArcBlock 的权益证明(POS)和挖矿计划(https://www.arcblock.io/en/miner)获得 ABT。ArcBlock 通过 POS 让用户参与质押流程,并通过验证正确交易创造价值,从而实现分布式共识。ArcBlock 已内置链上治理,用户还可以使用 ABT 投票,通过未来的治理提案影响 ArcBlock 的发展方向。
本页涉及
产品
-
ArcBlock Chain
active
为应用的身份、资产与约定而设计的 Layer 1。ArcBlock Chain 将这些常用操作纳入协议,ABT 是公共网络的原生代币。
-
Forge
sunset
一套用来建造链上应用的 SDK 和工具链,不必分别拼装节点、数据层和客户端。它后来成了 ArcBlock Chain。
术语
-
Decentralization
它不是一个整体属性,而是对每一部分分别要问的问题:谁能改动它、谁能扣住它、事后谁能核实它。一个系统通常只在某些部分是去中心的,另一些部分不是。
-
区块链
通过密码学连接记录,并按共同的验证与共识规则确定交易历史的分布式账本。