金色观察|一文读懂CITA联盟链解决方案

CITA是国内屈指可数的联盟链开发框架之一。今天本文将总结CITA相关的资料,为读者建立对CITA的了解。

首先,联盟链和公链在开发上是共通的,所以CITA上也是开发DApp,而为了实现对DApp的开发就需要一整套的组成部件,最后汇总成一个解决方案。

CITA的整套解决方案体现在CITAHub上,其提供了一套完整的开源的区块链解决方案,在CITAHub中,CITA作为底层区块链内核。并围绕 CITA, 提供了开源的工具链 CITA Toolchain 来完善基础设施,以方便运营方,开发者以及终端用户能够快速使用,

跟 CITA 直接进行数据交互的有 CITA SDK, CITA CLI。官方在 CITA SDK 基础上构建了 4 个工具:ReBirth、CITA IDE、CITA Truffle Box、CITA Web Debugger。

还提供 3 个针对特定业务需求和开发场景的工具:Microscope、Cyton Wallet、CITA CLI。另外还有一个 first-forever-demo,通过开发或运行此 demo,能够熟悉 CITA Toolchain 的大部分子工具,并基本掌握在 CITA 上开发 DApp 的操作流程。

从功能定位上看,CITA 是一个面向企业级应用的支持智能合约的高性能区块链内核, 旨在为企业级区块链应用提供一个稳固、高效、灵活、可适应未来的运行平台。

因为工程化的实现思路,在区块链技术发展的背景下,CITA 将区块链节点的必要功能解耦为六个微服务:RPC,Auth,Consensus,Chain,Executor,Network。各组件之间通过消息总线交换信息相互协作。 通过配置和定制相应的服务,CITA 能够满足企业级用户的全部需要。

CITA的框架

整个CITAHub的完整组成如下图,而每个部分都成为了每个功能解耦后的承载体,我们来具体看每个部分的功能分解。

Huobi 将于4月28日上线NU(NuCypher):据官方消息,Huobi Global“全球观察区”定于2021年4月28日上线NU(NuCypher)。其中4月28日15:00 (GMT+8) 开放NU的充币业务,充值量满足市场交易需求时开放NU币币交易。具体时间将以公告形式提前通知, 4月29日15:00 (GMT+8) 开放NU的提币业务。[2021/4/28 21:06:34]

CITA 将一个区块链节点的共识、网络、计算、RPC 等功能进行了微服务化拆分,每一个微服务又可以有多个实例,最终这些实例共同完成一个节点的记账功能。这样,可以将区块链性能的扩展问题转化成了节点的扩展问题,当性能不足时,插入一台服务器,分担节点的工作压力即可。同时,将共识机制、底层逻辑进行了深度优化,例如采用Rust语言架构所有代码等。

实测数据:由4核8G云主机构成的CITA的性能可达到每秒2900笔简单交易;32核64G云主机组成的CITA的性能则超过了每秒1.5万笔简单交易。如采用集群构建节点性能将会更高,因此 CITA 的性能已经足以应付绝大多数应用场景。

CITA Toolchain 作为 CITA 生态中的重要组成部分,目的是使开发者在使用 CITA 或基于 CITA 构建应用时更加方便。

跟 CITA 直接进行数据交互的有 CITA SDK、CITA CLI。

CITA SDK 是 Toolchain 的核心,它将 CITA 上重复繁琐的操作进行封装,暴露简单的接口给开发者,开发者可借助此 SDK 构建应用。

官方在 CITA SDK 基础上构建了 4 个工具: ReBirth、CITA IDE、CITA Truffle Box、CITA Web Debugger。

CITA CLI 是一个非常友好的系统运维工具。

CITA SDK 分为不同语言版本:Java SDK、JavaScript SDK、Ruby SDK、Swift SDK、Rust SDK。

JavaScript SDK 是在 Ethereum Web3 的基础上做了封装并且添加 CITA 的 JSON-RPC 请求以及 CITA 的签名模块,构建了 CITA IDE、CITA Truffle Box、CITA Web Debugger。

BTC跌破47200美元关口 日内跌幅为1.57%:火币全球站数据显示,BTC短线下跌,跌破47200美元关口,现报47198.66美元,日内跌幅达到1.57%,行情波动较大,请做好风险控制。[2021/2/12 19:34:14]

Java SDK 集成了与 CITA 客户端交互的功能,可以用来对 CITA 发送交易、部署智能合约、调用合约方法,进行系统配置以及查询其他信息等。

Swift SDK 用于构建 Cyton Wallet iOS 端。

Ruby SDK 用于构建 ReBirth。

Rust SDK 是 CITA JSON-RPC 客户端的 Rust 实现。

ReBirth 是针对 CITA 提供的区块链缓存服务器,能够满足检索区块,提供 ERC20 交易列表等业务功能需求,这类功能如果直接在底层实现会影响性能。

CITA IDE 是面向 CITA 的智能合约编辑器,能够编写、编译、debug、部署智能合约。

CITA Truffle Box 是基于 Truffle Box 定制的适配 CITA 的 DApp 全能开发框架,包括编写合约、编译合约、测试合约、部署合约、构建 DApp,因此在 CITA 上开发 DApp 的体验和在 Ethereum 上比较一致。

CITA Web Debugger 作为 DApp 调试工具,是一个基于 Chrome 浏览器的插件,用户在开发 DApp 时,在手机上调试很不方便,使用 CITA Web Debugger 能够在浏览器上调试交易方面的功能,能方便地获取交易具体详情和反馈。

此外官方还提供 3 个针对特定业务需求和开发场景的工具:Cyton Wallet、CITA CLI、Microscope。

Cyton Wallet 分为 Android 版和 iOS 版,提供账户管理功能(私钥、助记词、keystore)和Token 管理及转账功能,并内置 DApp 浏览器。同时它依赖 ReBirth 提供原生代币和 ERC20 代币交易列表。

CITA CLI 是在开发中调试 CITA 的命令行工具,与 CITA 链交互可以通过 CITA CLI 操作,支持搜索历史命令,默认支持 secp256k1 和 SM2 加密算法。

Microscope 区块链浏览器,可用于查询所有 CITA 链上信息,并支持基于 CITA 的多链,可在元数据面板中切换目标链。支持搜索区块、交易、帐户信息和调用智能合约方法。 它还可以与 ReBirth 一起使用,实现指定组合条件的区块交易列表查询,分析 CITA 的工作状态等高级功能。

CITA中的经济模型选择

CITA 作为面向企业的高性能区块链内核,拥有支持智能合约的虚拟机,用户发送交易(转账,调用合约,部署合约)中的每个运算都会消耗一定的资源,这里消耗的资源用 Quota 作为单位来计数。

为了对链上有限的计算资源进行管理和控制,需要对链的经济模型进行设计。实际的业务场景中普遍存在链运营方(发起链,维护浏览器等链的生态)、记账人(矿工,提供计算资源)、用户(消耗链上计算资源)等参与方角色。其中运营方、记账人可能由同一方承担,也可能是有独立利益诉求的不同参与方。

CITA 作为一个通用的区块链内核,提供了诸多配置参数,让用户可以根据自己的业务场景进行定制经济模型。概括来说可以分为两种模式:

Quota 模式

无代币的模式,系统默认模式。系统仅对用户交易消耗的资源进行统计。

参数设置。通过设置 Quota Limit,系统可以对区块内交易总体消耗的资源进行限制,也可以对单个账户设定一个块内交易资源消耗的限制。详细内容与操作参见 Quota 模式。

场景举例:

几个企业组成一个联盟运行区块链,每一个成员既是“矿工”(维护区块链账本),又是用户(消耗计算资源)。矿工“无偿”工作,旨在维护系统稳定。这种场景可以选择 Quota 模式。

Charge 模式

有代币的模式,链上发行原生代币。系统先对用户交易消耗的资源进行统计 (quotaUsed),并换算为原生代币对用户进行收费。收取的费用有多种灵活的分配方式,方便用户根据业务场景进行定制。

参数设置。与 Quota 模式一样,charge 模式也可以通过设置 Quota Limit,对区块内交易总体消耗的资源进行限制,对账户的单次交易设定资源消耗的限制。并且可以灵活的设置代币总量和分发方式。在链的运行过程中,还可以通过通过设置 QuotaPrice 对手续费进行调控。

CITA对隐私保护的选择

在 CITA 的架构中,为保护“账本”的相关隐私,采用了多元的技术方案来对用户身份与上链数据进行隐私保护。

如果使用密码学方案,所有的参与方都参与了对数据有效性、合法性的校验,但是只能提供转账隐私,有前向安全风险。可以对用户身份和交易数据进行隐私保护。

如果采用了零知识证明技术。证明者向验证者提供关于交易发送者、接受者身份和交易细节的证明,证明内容不透露交易双方身份和交易细节等相关信息。数据有效隔离;无前向安全风险。可以对交易数据进行隐私保护。

综合了几种多链与跨链方案后,CITA 在底层实现了侧链方案来实现隐私交易。几个相关合作方共同起一条主链,其中的某几个参与方可以向主链注册一条侧链,在侧链上进行交易、验证,从而使侧链数据与主链数据隔离开,从而实现侧链交易数据的隐私保护。此方案无中心化风险,灵活性更高。

此外,还将需要参与共识和需要共享的核心数据,和其他的数据如合同明文、批量大数据、隐私、个人信息分离,数据脱敏后再上链,或者将数据摘要上链,必要时再授权访问明文等其他数据。链外存储是将要保护的隐私数据,链上是可以公开的数据。这种方法是当前可行性较好的方案,可以基于 CITA 进行设计实现。

最后,如果使用可信硬件,能让整体架构简洁,对存储空间要求低,具有很高的灵活性;但是受制于厂商。这种方式可以对用户身份、上链数据(交易数据、存证数据)和智能合约的隐私保护。

例如应用SGX隐私保护技术,通过计算机的核心处理器 CPU 来构建可信执行环境 TEE,SGX 可以将智能合约中的关键操作封装到 Enclave 中,即便操作系统或者 VMM(Hypervisor)也无法影响 Enclave 里面的代码和数据。Enclave 的安全边界只包含 CPU 和它自身,极大的保证了数据的安全性。CITA表示,目前,已有项目搭建了 CITA 联盟链平台,并使用 SGX 可信执行环境技术,实现了交易数据的隐私性和监管的穿透性。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

区块分享

以太坊交易被SEC监管后 我们应该如何参与DeFi?

由于 DeFi 开源透明、去中心化和安全的性质,通过代码塑造的加密资产想象力更加丰富。因此,除了加密货币市场之外,DeFi 衍生品市场也在被开发者们不断发掘。但随着衍生品市场对扩张,以及一些产品的推出,传统金融已经感受到了来自 DeFi 世界的威胁。代币化股票、期权和金融衍生品一直在牵动着监管敏感的神经。 监管一直是悬在加密行业达摩克利斯之剑。

区块链如何1分钱乘地铁?北京数字人民币系列试点活动攻略来了

原标题:如何1分钱乘地铁?北京数字人民币系列试点活动攻略来了 来源:北京日报客户端 北京市将于近期启动“‘京彩’惠民生 数字嘉年华”数字人民币试点活动。本次活动将聚焦交通出行场景,支持在京消费者通过优惠券发放方式享受数字人民币支付优惠,体验公共交通的便捷与绿色出行的乐趣。

XRPTwitter和TikTok拥抱NFT:主流采用即将到来?

去中心化的世界中,社交媒体巨头接受NFTs可能是一种新信誉系统的开始。 去年,Twitter的用户数量稳步增长,超过1.85亿。它正在尝试使用NFT,允许用户将他们的收藏品作为他们的个人资料图片显示。 据Twitter的高级软件工程师Mada Aflak称,该平台正在开发新功能,让用户从区块链上的钱包导入他们的NFT收藏品。

以太坊价格DAO 资金管理系列一:如何构建与设计

导读: 在当前的加密生态系统中,每天都会涌现出许多 DAO,但大多数DAO还没有能力应对他们所面临的挑战。有一些成熟的 DAO 走的相对较远,为社区和股东提供定期报告以供分析和了解,但这不是常态。大多数仍处于他们拥有投票 DAO 代币、潜在的开发者、贡献者以及成员之外的地步,关于DAO的运行和支付机制仍然相当粗糙。

[0:15ms0-0:500ms