迷你世界野人怎么驯服|loxx迷你世界|
文章阅读页通栏

斯微特(SWTC)介绍、网址及交易平台

来源: 区块网 作者:
斯微特在 2011 年,比特?#39029;魷址?#20852;未时,SWTC 的创业团队就将比特币的底层技术“区块链”作为未来改变人类社会组织方式的新兴技术进行研究,并在 201......
斯微特在 2011 年,比特?#39029;魷址?#20852;未时,SWTC 的创业团队就将比特币的底层技术“区块链”作为未来改变人类社会组织方式的新兴技术进行研究,并在 2014 年完成了 SWTC 公链上线运行。

作为已经成功运行 4 年,运行高度到达 1000 万块(截止 2018 年 6 月)、性能达到 5000TPS 的可落地的商用公有链,SWTC 设计的目标和愿景是提供安全、真实、可信的商用区块链环境。SWTC 公链的定位同?#24065;?#26159;一个容纳各种数字化资产的去?#34892;?#21270;的交易平台。(SWTC)

· 区块链是未来的价值共享网

古典互联网大大提高了人们共享知识的便利性,但是在其中两个陌生的用户如果需要共享价值,则依然必须依赖第三方进行仲裁和中介,并支付相应的高昂成本。

区块链第一次使得多方共同信任相同的数据源成为可能,并允许多?#20132;?#30456;传递数字资产而不需要担心“双重消费”问题,大大降低了多?#20132;?#20449;的成本,并进一步促进了多方之间的低成本的价值共享。其对于价值共享的功能对应 TCP/IP 对应于知识分享的古典互联网。

· 区块链 = 分布式技术 + 通证

分布式技术(包括分布式账本、分布式存储等)是区块链技术提供不可篡改?#25237;?#26041;可信的技术保障,是区块链调整和改善生产力的表现。而基于区块链技术之上的通证则是协同所有链入区块链上的自然人、机构、物体(通过物联网和传感器)关系的媒介。这里既包括了底层公有链对于燃料和计算资源的计价,也包括了多方参 与的经济活 动?#24895;?个参 与方进行激励、?#22836;!?#36129;献计量、社区建设等一系列关系的媒介。通证是区块链技术塑造生产关系的重要途?#19969;?/span>

因此,SWTC 公链采取了基于“有效去?#34892;?#21270;”理念的分布式技术,同时设计了原生支持的 SWTC ( System Working Token China ) 通证,在SWTC 公链上,SWTC 通证作为底层燃料和通用通证,同时 SWTC 公链还提供通过银关体?#21040;?#20837;现实世界的资产并可发行多种数字资产的功能。

· 有效去?#34892;?v s 绝对去?#34892;?/span>

比特?#26131;?#20026;第一个区块链技术的成功应用,同?#24065;?#26159;区块链技术的创始者,其本身追求的“绝对去?#34892;摹币?#26102;成为区块链世界的标配。但是在真实应用场景中,例如金融、慈善、食品安全、交易撮合等,?#34892;?#21270;节点提供的服务(包括政府的监管、金融的 KYC、慈善的实名、防伪的产地证明等)是不可或缺的,是整个闭?#20998;?#30340;一部分。一个绝对去?#34892;?#21270;的区块链只能服务于有限的应用场景,而更多的应用场景与区块链结合时,应用层依然需要考虑多种与现实世界?#34892;?#21270;机构的合作。

SWTC 从开始就秉承“有效去?#34892;摹?#30340;哲学理念,在技术设计上保持与监管的合作,从而使得真实的商业应用更加便利透明。

· SWTC 公链社区?#27604;?#26159;公链运营的核心目标

SWTC 公链对所有大型企业、?#34892;?#20225;业、创业团队和个人开放,这些都将是 SWTC 社区面对对象的中坚力量。 根据 SWTC 公链的特点,所有基于公链的应用都将有相同的 SWTC 钱包底层技术并在技术上原生支持互相发送交易和通证。因此,每一个新增的应用场景、新上链的企业和?#24405;?#20837;的个人都将可以与现有社区的用户发生价值共享。

社区的?#27604;?#22312;于通过 SWTC 公链提供便利社区成员交互价值(通过 SWTC钱包)、建立规则(通过智能合约)、发行通证(通过银关体系)以及互相导流等可能性。?#27604;?#30340; SWTC 社区将是 SWTC 公链运营的核心目标,并将不断提出和优化各?#25191;?#26045;实现这一目标。


SWTC 公链的技术优势

· 成熟:SWTC 公链是已完成开发并主网上线的成熟区块链

SWTC 公链的区块链底层已经完成开发并主网上线,而不是停留在概念层面。技术架构部分勾勒的设计理念已经落地,并有效支撑商用底层的业务应用。SWTC 公链已经上线 4 年,目前达到 1000 万以上区块高度。

SWTC 公链的共识机制采用了 BFT 的优化方案——RBFT,在架构设计上采用分层设计,支持银关体系和智能合约。目前支持上万级别的交易并发量,10 秒的交易最终确认时间,有助于交易的快速执行和确认,同时支?#27490;?#23494;。SWTC 公链的实验室性能达到 5000 + TPS。

SWTC 公链区块链技术与其他主流区块链技术的对?#28909;?#19979;表:


· 珠链币合:银关钱包体系支持通证发行

SWTC 公链的银关体系,支持公链上的应用在具备信用等级的情况下,自行发放通证。需要指出的是,所有在SWTC公链?#25103;?#34892;的通证被 SWTC 钱包原生支持,同?#27604;?#24847;两个通证之间的交换也是由 SWTC 底层原生支持,而不需要借助智能合约。这大大的提供了系统运行效率,是 SWTC 将区块链作为价值共享网设计的一个例证。

· 安全:通过分层架构有效防止“DAO ?#31508;录?#30340;发生

SWTC 公链的区块链信任栈通过 5 个层次:网络层、区块层、数据层、价值层以及合约层,实现区块链不同层次的业务场景所需要的服务。区块链的发展路径也是多层次的,不是一个单一的。SWTC 公链的区块链底层结构本身是基于分层设计思想的,且每一个层次的成熟度不一样,可?#24895;?#25454;每个层次的成熟情况,推出相应的区块链产品。

2016 年发生的“DAO ?#24405;保?#23601;是一类在技术尚未经过充分测试而过早承担过多商业资金从而发生灾难的案例,其原因是智能合约漏洞遭遇黑客利用并造成巨额损失。

为此,SWTC 公链的多层架构,可以在价值层和合约层之间设置“防火墙?#20445;?#21363;使合约层业务逻辑有漏洞,对于大额金额依然可以依靠价值层的控?#21697;?#27490;损失的发生。


· 高效:改进的 BFT 共识算法有效提高交易确认速度

由于区块链的去?#34892;?#21270;特点,一笔交易需要区块链网络内大部分节点确认其有效或无效才能计入区块,?#26031;?#31243;称为不同节点的共?#19969;?#27604;特币采用的POW 俗称挖矿的共识,以区块产生的高成本以及永远承?#29486;?#38271;链的算法保证共识和应对分叉,其代价是一笔比特币交易至少需要六个区块共一个小时才能获得确认,而且技术上说?#20849;?#26159;最终确认。

由于以太坊智能合约的引入,使得共识进一步成为智能合约确认的关键技术。由于以太坊智能合约执行采用同步方式,利用交易触发或者自动触发合约调用,合约在具体执行的时候,区块链的共识机制必须等待合约执行完,返回结果后才能继续操作,从而完成对当前区块的共?#19969;?/span>

SWTC 公链采用改进的 BFT ——(RBFT)来进行对交易的共识,同时采用异?#38477;?#29992;智能合约的方式处理针对合约的共?#19969;?#36890;过这两种技术的使用,使得每笔交易都得到最终确认,并在10秒内完成。这是真正商用落地需求的技术保证。


· 开放:公链提供完整的jingtum-lib-API和SDK接口

SWTC 公链提供完整的 jingtum-lib、API 和 SDK 接口,使得第三?#20132;?#26500;可以精确接入 SWTC 公链,接入后通过接口可以访问链上的“交易”记录,?#37096;?#20197;相应的提供各类服务。


技术架构

1 商用公链应具备的特征

· 可靠的性能

TPS:为了落实商业场景的应用,区块链的 TPS 应该达到一定标准。性能指标一直是?#34892;?#21270;解决方案的优势,但是区块链底层可以在不牺牲“去?#34892;?#21270;”的前提下通过技术革新,提高TPS:具体涉及的技术包括分片、异步处理智能合约、共识算法的选择等。

并发量:可用的商业场景下,应该允许多个用户同时登?#24049;?#20351;用但?#29615;?#29983;性能延迟问题。

· 交易的最终确认

商业环境下,每笔交易的确认不能再被恶意篡改。不可篡改是区块链相对于?#34892;?#21270;解决方案的优势,然而在 POW 共识算法下,为了达到不可篡改的目的,一个比特币需要经过六个区块确认才能获得最终确认,代表一个小时后才能确认一笔交易,这在大部分商业场景是不可接受的。因此商用区块链应?#23186;?#20915;的问题是,在一笔交易被共识算法接受并写入区块即完成最终确认需要多久时间。

· KYC、监管与隐私保护

尽管比特币是以“绝对去?#34892;摹?#30340;完全匿名面目出现的,但是商用环境下无论是监管机构、项目运营方和用户都希望自己的交易处于法律和监管的保护之下,在此情况下,特别是在金融行业完?#19978;?#24212;的 KYC 是必不可少的步骤。另一方面,一 个成 熟 的区块 链也需要尽最大可能保护用户的隐私,避免传统的?#34892;?#21270;作恶,并使得用户数据本身成为用户自身可控和可变现的资产。商用公链的设计应该在这两种状态之间取得平衡。

更进一步,一个公链类似一个基础设施,其上的不同应用场景运营方在接入时应该可以自行选择是否与其他应用场景运营方共享其用户数据,并在两种情况下都可以获得公链?#24049;?#30340;服务。

· 原生支持数字资产发行

我们相信数字资产将不可避免的成为区块链技术之上最具革命性的应用场景,通证的激励和?#22836;?#26426;制配合区块链分布式技术以及智能合约将可以重塑人类社会生产方式。因此,公链对于数字资产发行的原生支持(指底层支持,而非通过智能合约?#30830;?#24335;实现)是公链必须具备的重要特性。

另一方面,通证的风险将需要通过技术和运营进行管理,如可能的信用质押、发行审核机制等。

· 具备跨链功能

基于上一条,在不同区块链平台?#25103;?#34892;和交易的数字资产将会有需要进行跨平台的交易和结算的需求。因此支?#31181;?#35201;区块链底层的跨链功能将在不久的将来成为区块链公链底层技术的标准配置。


2 SWTC 公链的设计目标

SWTC 公链技术的重心是面向应用的通用区块链平台。我们希望提供一个稳定,方便使用的平台,大型企业、?#34892;?#20225;业、创新团队和个人用户都可以很方便的接入,并获得区块链技术带来的红利,同时不需要了解区块链实现的细节。而且,企业用户有灵活的选择是否共享他们自己的用户,这样使得每一个新的应用都带来新的客户,同时新的应用也能获得平台的巨大的存量用户。这样构建的生态系统实现我为人人,人人为我的良性循环。


3 SWTC 公链的技术架构

SWTC 公链技术的一个设计目标是避免当前区块链技术的缺点。与比特币不同,SWTC 公链设计?#24065;?#32463;将智能合约支持纳入考虑;与以太坊不同,SWTC 公链采用更加合理的分层方法,使得合约的执行和交易分开,避免了合约的?#29615;?#38382;题影响到整个系统安全,同?#24065;?#20351;得合约的实现更加灵活。

SWTC 公链技术架构如下图:


SWTC 公链的具体结构如下:

1. 共识算法不使用 POW 这种浪费资源的方式,而是采用 RBFT 来进行对 TX 的共识;另外,我们已经通过各?#22336;?#27861;实现高速的并行处理能力?#25237;?#28023;量用户的支持能力。

2. 我们将 SWTC 公链 进行 分层,底 层系统 称为 TX 层,负 责处 理 最基本的 TX,在此之上增加一个合约层,负责处理合约。我们将合约的要素(code,state,storage,transaction(事 物))分开, transaction(事物)的执行下传到 SWTC 公链的 TX 层,其他部分的执行在合约层实现。这样使得合约的执行与产生的交易分开,使得合?#24049;?#20132;易从各自的特点来匹配相应的协议,?#28304;?#21040;最高的效率和最大的安全。

3. 针对日益广泛的区块链应用对数据支持的要求,我们提供了BLHR(block level hash record——区块签名哈希记录)数据支持,使得用户很方便的将数据的签名保存到区块链中。

4. 为了提高整个系统的处理能力,我们在共识节点中引入分片的办法,使得不需要所有的节点都做完全一样的?#34385;欏?#32780;是对每个交易自动随机选择处理此交易的节点。这样一方面有效利用了众多节点的处理能力,同时维持足够的容错能力;另外一方面也大大降低了网络间信息流量,提高了网络的效率。

5. 创建合约时,用户可以标识需要的合约节点个数和共识达成的条件,一方面用户可以灵活控制付出的花费和可靠性之间的平衡,另一方面使得合约层能够更加高效的处理更多的合约。通过这样的抽样,合约系统的安全性并不会很大的降低。

6. 合约的执?#20852;?#24230;和 TX 层的 ledger close(分类帐锁)的速?#28909;?#32806;合。合约节点的共识状态转换由各自节点迅速完成。

4 数据处理

区块链的一个重要特性是不可篡改性。由于各个区块通过历史相关?#28304;?#32852;在一起形成一个单一链,使得数据一旦记录,就不能被篡改。对数据的直?#26377;?#25913;都将导致之后的区块无效化。所以这个特性?#36824;?#27867;的应用在数据的防?#20445;?#26631;识?#30830;?#38754;。

对 这个 特 性 的应 用 的 通常做 法 是将 一 些 信息保 存 在 交易的(me tadata-元数 据)部分,这 样当交 易被 执 行 并计入区块 链 后,所 包含 的(metadata-元数据)也永久的记录在区块链中。但是这样做有几个缺点:

1. 执行需要交易来实现,一方面需要发送一定的交易数额,另一方面需要对交易进行签名,这样使得对数据的记录必须对应于某个用户账户或者钱包,并且需要访问相应的私钥信息。

2. 保存的宏信息分散在单个交易当中,?#24895;?#20449;息的查询必须遍历每个交易。

3. 数据的保存必须通过交易的确认来实现正确写入。

针对于此,SWTC 公链系统提供了 BLHR(block level hash record)支持。用户可以直接递交需要保存的信息到区块中。每个区块有单独的位?#32654;?#20445;存所受到的信息请求。如果用户的信息具有历史相关性,用户需要自己提供这个相关性的描述,区块不需要理解用户的应用逻辑,只是忠实地记录用户的发出的存储请求。每次区块关闭的时候,系统自动将所有的 BLHR 信息记录到区块中。


5 RBFT 共识算法

传统的交易过程依赖第三?#20132;?#26500;提供的信任和?#29992;?#31614;名。在分布式系统中,不存在这种信任,因为网络中的任何和所有成员的身份存在处于互相间的未知状态。理想的分布式系统中,共识机制被 CAP 定理所约束。根据 CAP 定理,一个分布式系统中,Consistency (一致性)、Availability(可用性)、Partition Tolerance (分区容错性),三者不可得兼。

因此,如何根据所需解决的应用,选择合适的共识方式,对整个系统是非常重要的一个因素。数据的一致性具体通过共识来实现。共识给所有的计算机节点指定了统一的规则。但是各个节点的拜占庭行为,对这个规则的执行比?#31034;?#23450;了整个系统是否能够达到数据的一致性。通常的共识方式包括 POW,PBFT,POS 等。

· Proof of Work(工作量证明)

比特币和类比特币都是用挖矿的办法来保证各个节点选取同一个区块链。具体做法是让每个区块的生成?#24049;?#26114;贵,同时协议保证所有节点同意选取最长链,即使由于各种原因区块链有分叉的情况下,系统仍然能够很快收敛到最长的分支,短的分叉很快就?#25745;?#24323;掉。长期来看,总的区块链还是唯一的。

· Proof of Stake(持有量证明)

针对 POW 的高耗能等其他确定,Proof of Stake 作为一个替代的解决方案受到越来越多的关注。Peercoin 是最早采用 POS 的?#29992;?#36135;币。原理就是每个节点通过持有的系统股份的比例进行对系统中的交易进行验证。因为每个人都是利益相关方,理性的参与者都会维护系统的正常运行。具体的实?#22336;?#38754;各个方案有许多细节上的不同。

· PBFT(可实现的拜占庭容错)

采用多个节点共识的方法保证每个区块都是大家投票表决过的。数学上是解决拜占庭将军的问题。理论上能保证系统中 1/3 的容错率。

· SWTC 公链共识算法——RBFT(随机拜占庭容错)

SWTC 公链技术采用自有知识产权的随机 BFT 共识算法。

PBFT 的这个机制下有一个叫 view 的概念,在一个 view 里,一个节点(replica)会是主节点(primary),其余的节点都叫备份节点(backups)。主节点负责将来自客户端的请求给排好序,然后按序发?#36879;?#22791;份节点们。PBFT 的这个主节点拥有比其它节点更加大的权利,如果它出现问题,会导致系统中比较大的延迟。在 RBFT 中,对这一点进行了改进,参考了 RAFT 中选举的机制,采用投票表决方式,无需抢夺记账权,保证各个节点权益的公平性。

受制于现实中商用所处环境,客观的物理环境与主观的商用意愿与目标等因素约束:SWTC 公链引用外场先期评估(身份识别模块,监管沙?#24515;?#22359;)和网络实时监控(风险概率模型评估),理论上能保证系统中 1/25 的容错率。


· 共识节点

SWTC 公链的共识采用 Randomized BFT 的方式。但是在选择验证节点的方式上,SWTC 公链采用 POA (Proof of Application) 的方式。SWTC 公链的核心有若干个验证节点维持系统的基本验证网络。SWTC 公链的验证网络对每一个接入 SWTC 公链的应用开放。接入 SWTC 公链的应用是指以 SWTC 公链为平台的针?#38405;承?#29992;户的应用程序。这些应用可以通过 SWTC 公链提供的 API直接接入 SWTC 公链的公有区块链。这些应用可以起到一个验证节点的作用。

这样的节点可以实现两个功能:

1. 参与 SWTC 公链网络的公共节点验证,实现应用接入 SWTC 公链网络。如果应用本身采用私链模式,这个节点同时起到了从用户私有链?#25103;?#34892;的通证到 SWTC 公链的转化功能。
2. 如果应用只是仅仅使用 API 访问所需的区块链功能,则并不需要部署一个单独的验证节点。

在用户私有链和 SWTC 公链相连的情况下,通常还需要银关来实现私有链发行的通证的发行?#25237;一弧?/span>


6 银关和用户通

SWTC公链支持除原生的基础燃料SWTC外,还有用户通。用户通可以看成是一种自定义的数字资产的表征符号。用户通的发行由有资格的第三方发起,但是必须通过SWTC公链的合规性?#22836;?#38505;评估。之后才能获得在SWTC公链上面发行用户通的资格。用户通的发行通过银关实现。发行方对用户通的承兑负责。一旦用户通发行完成,其可以象SWTC一样,在系统里面进行自由支付,流通,交易,不需要发行方的干预。但是用户通的?#19968;?#24517;须由银关实现。

SWTC 公链银关是实现第三方的资产在 SWTC 公链网络中的接口。第三方的资产通过银关进入 SWTC 公链网络,并发行相应的用户通。如果用户通需要兑现,则也必须通过银关来获得资产。


· 对 KYC 和交易匿名的支持

银 关 体系的另一 个 作用,是 在 应 用场景 运营 方和 SWTC 区块链底层之间提供屏障功能,运营方可以选择是否需要与其他应用共享客户信息。因此,整体技术架构下,运营方将完成用户 KYC 工作,并将其与 SWTC 公链上的一个个 SWTC 钱包公钥地址?#25104;洌?#20854;?#25104;?#20851;系保存在应用层。

对于用户来?#25285;?#22312;这种架构下其用户隐私依然在区块链层匿名并获得保护。在需要的情况下,可以进行匿名交易。但是当监管?#22836;?#24459;需要的时候,通过银关监管功能可以就包括反洗钱和其他金融在内的场景?#22836;?#24459;规定的场景进行核查。


7 智能合约

由于以太坊智能合约的引入,使得“共识过程中由智能合约确认”的成为区块链关键技术。

由于以太坊智能合约执行采用同步方式,利用交易触发或者自动触发合约调用,合约在具体执行的时候,区块链的共识机制必须等待合约执行完,返回结果后才能继续操作,从而完成对当前区块的共?#19969;?/span>

不同于,以太坊智能合约执行方式,SWTC 公链的智能合约执行上采用了分层、异?#38477;?#29992;和快速执行三种机制,其目的是为了保证智能合约执行下共识算法的效率从而保证 SWTC 公链的商用可行性。

· 智能合?#24049;头?#23618;

SWTC 公链合约系统实现过程:

1. 我们采用 TX 驱动的做法,合约的创建,合约功能的调用,?#21152;?TX 发起,如果执行的过程?#34892;?#35201;修改用户的余额,则会发起交易并发到下层的TX,所有这些交易都将在 TX 执行验证并记录在底层的区块链中;
2. TX 层的交易不受合约的影响 ;
3. TX 层的跟合约相关的交易以单独的 TX 方式保存合约的代码和状态,合约的具体状态对应于对合约相关功能的程序调用过程及参数值,TX 层的状态 hash 保证信息的一致性。
4. 合约层的执行由多个合约节点(contract validator-合约验证)执行,以确定性的方式分别执行并进行共识的过程。
5. 每个合约节点采用组合(VM 虚拟机)执行代码
6. 合约节点保存合约执行的 storage

在这样的分层设计下,我们进一步优化了 SWTC 公链系统,使得合约的调用采用异步的方式,在此基础上,实现合约的快速调用?#22836;?#22238;,同时支持用户选择分片的方式来执行智能合约过程,不需要所有的节点都做同样的?#34385;椋?#25552;高了整个系统的数据处理能力。

· 智能合约的异?#38477;?#29992;

现有的智能合约的执行采用同步方式,利用交易触发或者自动触发合约调用,合约在具体执行的时候,区块链的共识机制必须等待合约执行完,返回结果后才能继续操作,从而完成对当前区块的共?#19969;?/span>

这样的智能合约执行方式具有以下缺陷:

1. 合约执行的速度严重影响区块生成的时间:

因为区块共识依赖于合约执行的结果,每个节点必须对合约的结果的一致?#28304;?#25104;共识,因此,合约的执?#20852;?#24230;的快慢,直接影响区块后续操作,导致区块生成时间的延迟。

2. 合约执行的速度严重影响区块链能够支持的合约执行并发量:

在区块链生成的频率通常大致固定的情况下,在同样的时间?#25991;冢?#19968;个合约执行的快慢,将直接影响到同区块其他合约的执行,极端情况下,一个恶意的合约可能导致系统无法处理其他的合约,导致处理的合约并发量大大降低。

3. 合约执行过程中的容错能力受限:

由于采用同步执行的方式,合约执行过程中,针?#24895;髦执?#35823;情况的处理需要全面考虑,并且实现?#24895;?#31181;“具备时间敏感的操作”的快速处理,?#28909;?#38656;要?#24895;?#31181;操作的超时情况作相应的处理。

一些现有的解决方案,如以太坊采用 gas 的方式,对每个合约进行运算量的?#28010;悖?#24182;且利用一个系统总 gas 量来控制当前区块能支持的总运算量,来保证共识的按时完成。但是系统能支持的合约总数受到这个总量 gas的限制,如果合 约的代码越 来越复 杂,整 个系统能支 持的合 约数就越 来越少;另外,以太坊共识时间有限,gas 的最高值并不能大幅增加。

针对现有智能合约执行技术存在的问题,SWTC 公链提供一种跨区块异?#38477;?#29992;合约系统,该系统的区块共识不依赖于前一合约执行结果,可提高合约执行的并发量以及区块能支持的合约数量,提高系统容错能力。

SWTC 公链的异?#38477;?#29992;合约系统,包括以下单元:

1. 分布式系统验证单元:包括一个或多个服务节点以及若干个验证节点,用于接收用户递交的交易请求集合 {TX},包括合约调用请求 TX 和支付请求TX;

2. 分布式合约执行单元:位于本地或远端的分布式系统验证单元,与分布式系统验证单元之间通过预定义协议进行通讯,用以获取合约执行所需信息,并在合约执行完毕后,将结果返回至验证节点;

3. 合约执行缓存单元:包括用于接收来自验证节点的合约调用请求,发送合约调用请求至分布式合约执行单元,接收合约执行结果,返回当前合约执行状态至验证节点,以实现合约的异?#38477;?#29992;;

该系统实?#22336;?#27861;如下:

1. 服务节点接收用户递交的交易请求 TX,每个验证节点?#21344;?#19978;述 TX 并汇集成交易请求集合 {TX}i;
2. {TX}i 中包含的合约调用请求发送至合约执行缓存单元,合约执行缓存单元在收到上述请求后立即返回当前合约执行状态;
3. 在所有验证节点收到{TX}i 后,{TX}i 在所有验证节点完成共识,区块 i 生成,验证节点对共识后的 {TX}i 进行验证,验证后的状态写入区块 i ;同时每个验证节点创建一个查询合约 TXq,并将其加入到区块(i+k)的交易请求集合 {TX}(i+k) 中;

4. 在进行 1~2 时,合约执行缓存单元采用异?#38477;?#29992;的方式将合约调用请求发送至分布式合约执行单元,于后台执行合约,执行完毕后,合约执行缓存单元获得合约执行的最后结果,等待处理;

5. 区块(i+k)处理周期开始,{TX}(i+k)中包含的合约调用请求发送至合约执行缓存单元,合约执行缓存单元立即返回当前合约执行状态,同时,验证节点从查询合约 TXq 中提取出合约相关信息,并向合约执行缓存单元发出查询请求,合约执行缓存单元向验证节点返回区块i的合约调用请求的执行结果,并更新查询合约 TXq;

6. 在所有验证节点收到 {TX}(i+k)后,更新后的查询合约 TXq 和{TX}(i+k)合在一起形成一个新的集合,在所有验证节点完成共识,区块(i+k)生成,验证节点对共识过的TX进行验证,验证后的状态写入区块(i+k)。

SWTC 公链的区块链系统以异?#38477;?#29992;作为后台核心技术,与现有智能合约执行技术相比具有以下优势:

1. 隔绝了合约执行和系统共识单元,合约的执行可以在远端,使得合约的执行不再占有系统共识的资源;

2. 合约执行单元和系统共识单元的去耦合,使得合约执行模块和共识模块相对独立,支持热插拔;

3. 在共识验证单元和合约执行单元之间设立合约执行缓存单元,在整个合约执行过程中创造性地采用了异?#38477;?#29992;执行方式,使得合约的调用和执行结果在跨区(区块i和区块(i+k))之间分别实现,同时又能保证各个验证节点之间完成共识;该种合约异?#38477;?#29992;执行模式提高了合约执行的并发量,共识的过程无需要等待合约的执行结果,大大提高了区块能支持的合约数量。

4. 提高了整个系统的容错能力,一方面系统可以设置合适的超时处理机制?#21019;?#29702;合约延时的情况,另一方面,用户可以在合约调用?#20449;?#32622;合适的 k 值来保证长时执行的合约得到正确处理。

· 基于智能合约的快速交易

现有基于区块链的分布式交易方式因区块链共识方式、区块链生成时间、区块的生成时间、区块的大小而受到很大的限制。基于区块链的交易速度一般都在秒?#19969;?#29978;至分钟级以上,此外,还存在如下缺陷:

1. 交易请求在分布式系统中的传播过程存在延迟,从某个发起节点到信息传播至其他所有节点之间存在信息延迟;

2. 共识过程存在时间延迟:数据的更新必须在共识完成后才能写入账本中,这种写入是间歇性的,每个验 证 周期更新一次,用户对数据更新的请求必须在更新周期之后才能得到响应并返回;

3. 现有的基于智能合约的交易不仅受到以上两点的影响,还受到合约执行延迟的影响。

一些现有的解决方案,如闪电网络、比特币网络采用通道的办法来加快对交易请求的处理,但上述方案的协议或者比?#32454;?#26434;,或者采用了?#21069;?#21344;庭容错的方式,限制了其更广泛的应用。

SWTC 公链实现了一种基于区块链合约的快速交易系?#22330;?#22312;异?#38477;?#29992;合约的基础上,对合约节点分成两种:普通合约节点和快速交易合约节点。普通交易合约节点与验证节点之间通过预定义协议进行通讯,获取合约执行所需信息,合约执行完毕后,将结果返回至验证节点;快速交易合约节点执行快速交易请求并将执行结果返回至合约接入服务器。

快速调用的具体实?#22336;?#27861;如下:

1. 快速交易初始化:两个或多个需实现快速交易的用户之间达成一致并创建一个合约,发起一个快速交易初始化请求 tx,合约接入服务器经服务节点将该 tx 发送至验证节点形成交易集,验证节点?#24895;?#20132;易集进行共识;完成共识后,验证节点将该交易集发?#36879;?#25152;有合约节点,依据预定义协议通过分布式随机算法在其?#20852;?#26426;且确定性地选取一个快速交易合约节点;

2. 快速交易实现:用户发起快速交易执行请求,合约接入服务器经服务节点将该请求发送?#37327;?#36895;交易合约节点,于?#23186;?#28857;执行交易请求,直接返回快速交易结果至合约接入服务器,同时该服务器记录交易状态,并保存自上一次确认后的所有快速交易历?#32602;桓每?#36895;交易合约节点的交易执行方式可以通过非对称?#29992;?#26041;?#20132;?#32773;其他方式(例如对称?#29992;?#26041;式)运行,使得合约/交易的执行是保密的,仅对用户和当前合约节点可见。用户可通过合约接入服务器查询交易的历史记录;

3. 快速交易历史的分布式确认:用户可在各方签名验证的情况下,对未确认的交易主动周期(?#28909;?0分钟、1天、1周)或非周期性发起确认交易请求 tx,?#37096;梢愿?#25454;实现定义的合约定时对发起确认交易请求 tx?#29615;?#36215;的确认交易请求与上述未确认的交易历史合并,产生一个自上次确认后到当前状态的变换交易;合约接入服务器经服务节点将该变换交易发送至验证节点,验证节点对交易集进行共识,再将其发送至所有合约节点进行合约执行,合约执行结果经验证节点验证并确认,与其他交易信息(普通交易或普通合约执行信息)一起写入区块链,同时该合约执行结果返回给客户,通过共识节点对历史交易记录进行确认,从而实现交易确认的拜占庭容错。

当用户重复步骤 2,选取下一个快速交易合约节点后,原来的快速交易合约节点的交易历?#26041;?#34987;清空。

这样,SWTC 公链系统分为独立的合约层和底层共识层,快速交易对合约层发起调用,在合约层实现快速交易,其快速执行结果周期性或非周期性返回底层共识层进行验证确认并写入区块链,使得交易的执行不受区块关闭的时间和区块大小的影响,也不受分布式网络传递的影响,同时具备分布式区块链固有的优点,克服了现有区块链交易方式在交易传播、共识过程以及和合约执行过程中存在的延迟现象,以接近实时的方式实现对交易的快速支持,维持了交易系统的拜占庭容错性,可实现对交易细节的隐藏和?#29992;埽?#21516;时保持了分布式系统的数据的一致性和完整性。


8 分片调用技术

基于智能合约的快速交易可以看成是一个分片技术的特例。从更通用的概念讲,对智能合约执行节点的选择性执行,就是一个分片技术的实现。

除以上所描述的快速交易外,如果多个智能合约节点之间通过预定义的协议 (BFT) 来实现之间的信息同步,那?#27492;?#20204;之间就实现了一个 BFT 的共?#19969;5比唬?#37319;用这样的共识之后,对智能合约的处理效率会降低,但比传统的全部节点同时处理一个合约的情况,仍然大大提高了。

9 跨链技术

SWTC 区块链与 Ethereum 协作的细节,它们是怎样实现来自这些区块链的代币之间的原子交换。

假设在 SWTC 网络中,有个用户下单要用 SWTC 公链上的通证 J 交换Ethereum 的通证代币 T,价格、数量和收件人地址的指定格式,Order:J->T, p, v, T2 。

此请求经?#23454;笔?#26435;提交给智能合约 SC1,并且因此提交到订单?#23613;thereum 中的某用户想要卖出通证 T 来获得SWTC网络的通证 J,参数如下, Order: T->J, p, v, J2。

该订单提交部署到 Ethereum,智能合约 SC2,带有?#23454;?#30340;授权。

SWTC 公链的异步合约服务器可以有连接到 Ethereum 公共链的可插?#26410;?#26681;,这些服务器将使用优化共识算法形成一个共识子链,这些合约服务器将监视 Ethereum 的活动并将订单添加到订单?#23613;?/span>

SWTC 公链系统中的验证节点将找到匹配的事务(T < - > J)。它会生成一个提案{(J1-> Js,int(Js-> J2),(T1-> Ts,int(Ts-> T2)),Js 是SC2 的地址,Ts 是SC1 的地址。int()是有待执行的意图事务。

J1> Js 将在 SWTC 公链网络中成交,T1->Ts 将在 Ethereum 网络成交。子链将确保这两个交易发生过并且可以验证,这可以通过异?#38477;?#29992;的性质完成。而通常需要等待块确认的时间段,这个时间段用户可以自己定义。

每个合约都要等待确保两边的交易都完成了,然后每个都将完成 Ts->T2或Js->J2 交易,这是以确定性的方式完成的。同时,无论出于任何原因,如果系统无法撮合交易,则合约会给原用户退款。

图示如下:


10 主要性能指标

通过使用以上技术,SWTC 公链的技术性能能够达到以下指标:
· 近 10000 的 TPS(每秒并发量-实验?#20063;?#35797;)
· 400 万并发用户
· 平时 10 秒一个区块,极限状态可以做到秒级交易


网址:http://www.swtc.top/


交易平台


满币网https://www.coinbene.com/
香港富比特http://www.fubt.top
币赢网https://www.coinw.me
汇币网https://hb.top

风险提示:数字货币投?#31034;?#26377;极大的风险,请在尝试投资前确定自己承受风险的能力。

关键词: 斯微特  SWTC  
0/300
? 迷你世界野人怎么驯服