欢迎来到环境100文库! | 帮助中心 分享价值,成长自我!

环境100文库

换一换
首页 环境100文库 > 资源分类 > PDF文档下载
 

火币公链白皮书.pdf

  • 资源ID:4759       资源大小:2.63MB        全文页数:66页
  • 资源格式: PDF        下载权限:游客/注册会员/VIP会员    下载费用:10碳币 【人民币10元】
快捷注册下载 游客一键下载
会员登录下载
三方登录下载: 微信开放平台登录 QQ登录   微博登录  
下载资源需要10碳币 【人民币10元】
邮箱/手机:
温馨提示:
支付成功后,系统会自动生成账号(用户名和密码都是您填写的邮箱或者手机号),方便下次登录下载和查询订单;
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,既可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰   

火币公链白皮书.pdf

HUOBI CHAIN WHITEPAPER 火币公链 Version 1.0 / 2018.12HUOBI CHAIN WHITEPAPER 火币公链白皮书 HUOBI CHAIN WHITEPAPER I 摘要 随着金融科技的发展,传统的信息互联网开始逐渐向以区块链技术为基础的价值互联网演变。目前,数字经济正在高速增长,并逐步渗透至其他经济领域中,或将改变现有经济发展方式、重塑世界经济格局。 火币深耕于数字资产市场,在 数字资产的全周期操作中 积累了丰富的经验,取得了一系列的阶段性成果。为满足用户在资产安全性、交易便捷性、投资多样性、法律合规性等方面的需求,同时也为了适应数字经济在未来的发展变化,火币将携手行业领袖共同 研发 一条数字经济时代的基础设施公链 Huobi Chain。 Huobi Chain 以“赋能实体经济 ,推动数字经济发展”为愿景,以“公开透明、共建共信” 为宗旨 ,从火币生态业务出发,向数字化世界的无限空间进行探索。在未来业务发展上,主要集中在以下三个方面 首要目标在透明和可监管的前提下,实现资产交易的清结算 目前,数字资产交易所的透明度不高,用户资产的安全保障存在隐患;另外,交易所一直备受质疑的非法交易和洗钱问题, 也阻碍 其长远发展。因此, Huobi Chain 将通过交易上链和引入监管节点的措施解决上述问题。 未来愿景支持复杂业务流程和多元化资产上链 数字资产市场仍 处于初级阶段, 资产种类相对单一、业务流程尚待规范,还无法满足更多样的需求 。为此, Huobi Chain 将开发新型通证合约,以支持复杂业务流程和多元化的资产类型。 价值承载火币的生态业务 为保证 Huobi Chain 的持续发展和经济价值, Huobi Chain 在初始阶段将以火币现有 的生态业务为承载;在社区生态和 技术 基础 发展成熟后, Huobi Chain 将面向全球拓展更为广泛的业务 场景 。 HUOBI CHAIN WHITEPAPER II 为实现以上设计理念, Huobi Chain 在技术上将引入以下特性 ◼ 资产上链,安全为先 Huobi Chain 将安全作为架构设计的首要因素,并进行严格 的安全审计和智能合约安全测试。 ◼ 双“链”合璧,动态协同 交易链负责交易清结算,追求交易速度更快、频次更高、手续费更低;合约链则支持金融合约、业务合约等复杂应用。 ◼ 多元需求,生态闭环 Huobi Chain 将借鉴传统金融市场的业务模式,为多元化的需求提供基础设施,构建并逐步完善数字身份体系,为多样的市场参与者提供精准的需求匹配。 ◼ 透明可信,监管保障 除了秉承区块链的分布式治理、信息公开透明等特性外,Huobi Chain 还 将可监管性作为设计目标 , 旨在为用户提供更强有力的监管保障 。 Huobi Chain 的健康发展离不开社区的治理。为了兼顾治理 的 去中心化和有效性,Huobi Chain 将结合链上治理与链下治理,把人与代码同时引入到公链的复杂治理体系中 ◼ 链上治理 采用全体通证持有者协商投票的方式选举超级节点;设立“社区章程”,实践“代码即法律”的区块链治理理念。 ◼ 链下治理 在区块链社区开创性地引入“现代经理人制度”, 理事会负责社区重大事项决策,执行团队负责具体工作开展,并接受专家顾问团的监督指导 。 Huobi chain 将成为物理世界向数字世界的 连通器,让更多可想象的场景在比特化的平行域中实现 HUOBI CHAIN WHITEPAPER 1 目录 1. 背景介绍 . 1 1.1. 数字经济基础设施 . 1 1.2. Huobi Chain 愿景 . 2 2. 技术介绍 . 4 2.1. 设计理念 4 2.2. 技术架构 5 2.2.1. 区块链系统 . 6 2.2.2. 双链架构 . 11 2.3. 技术实现 13 2.3.1. KYCAML 13 2.3.2. 跨链技术 . 14 2.3.3. 分布式存储 . 16 2.3.4. 监管节点 . 17 2.4. 安全性 18 2.4.1. 安全架构设计 . 18 2.4.2. 安全审计 . 19 2.4.3. 智能合约安全性 21 2.4.4. 威胁情报赏金计 划 22 2.5. 技术优势 24 HUOBI CHAIN WHITEPAPER 2 3. 社区生态及应用 . 26 3.1. 社区生态 26 3.2. 应用场景 29 3.2.1. 数字货币交易结算 29 3.2.2. 新型合规通证 . 29 3.2.3. 实物资产上链 . 33 3.2.4. 资产抵押贷款 . 34 3.2.5. 数字资产衍生品交易 36 3.2.6. 智能风控系统 . 36 4. 社区治理 . 38 4.1. 链上治理 38 4.2. 链下治理 40 5. 发展规划 . 46 6. 团队介绍 . 48 6.1. 领袖团队 48 6.2. 顾问团队 50 6.3. 理事会 52 7. 风险提示 . 56 术语表 . 59 参考文献 61 HUOBI CHAIN WHITEPAPER 1 / 61 背景介绍 1.1. 数字经济基础设施 数字经济是以数字化的知识和信息为关键生产要素,以数字技术创新为核心驱动力,加速重构经济发展的新型经济形态。数字经济 是 继农业经济、工业经济之后 更高级的经济形态 , 也是新一轮 竞争 中的 制高点。在数字经济建设中,区块链是重要一环。目前,区块链行业仍处在早期发展阶段,基础设施尚未成熟,基于区块链的服务、应用和商业模式仍有许多难题需要攻克。为了寻求更大的突破,火币将开发适用于数字经济环境下的基础设施公链 Huobi Chain。 作为面向未来数字经济的公链, Huobi Chain 致力于满足行业级和企业级的应用、支持各种 复杂场景。 为此, Huobi Chain 将由以下三大支柱构成统一的高技术标准、跨链技术、监管与测试平台。 ( 1)统一的高技术标准 建立标准是基础设施要解决的核心问题。统一的 技术 标准 能够促使行业 形成集聚效应, 从而推动数字经济在全球范围内的发展 。从广义来看,高技术标准需要满足以下条件 ◼ 更高的 性能 吞吐量的局限性是现阶段区块链技术难以被大规模商业应用的主要限制因素之一。以比特币为例,比特币每秒所能承载的交易量约为 7 笔, 而 为确保交易被记录在链上 ,还需等待约一小时 的确认时间 ,这样的交易速度很难满足大规模商业应用。为了满足数字经济时代的应用 需求 ,基础设施公链至少需要达到每秒万级别交易处理速度。 ◼ 更高的隐私保护 目前,主流区块链还未实现真正意义上的匿名性。这是由于交易地址、交易时间和交易金额等链上信息对所有人公开,人们凭借种种蛛丝马迹可将用户的钱包地址与真实身份相关联。在数字经济时代,用户需要把很多重要信息、数据上传至链上才能进行交易或运行 智能 合约。确保信息、数据的处于匿名、非公开状态变得至关重要。因此,未来的公链 可以采用 非交互零知识证明技术或在数据上链前进行加密的功能,以满足用户01 背景介绍 HUOBI CHAIN WHITEPAPER 2 / 61 对隐私保护的要求。 ◼ 更高的安全性 数字经济时代的公链将面向更多的用户,其必须 在安全审计、安全架构、编译器安全优化、虚拟机安全设计、合约安 全模板等方面达到更高的标准,以满足用户对安全性的要求。 ( 2)跨链技术 未来,区块链技术将被运用在 更多领域 中。从货币到商品、从房产契约到权益类凭证, 更多 资产或数据信息 将 可以被通证化( Tokenization), 并在 区块链系统中进行交易和管理。 随着交易量的增加和需求多样性的扩展, 多链并行必将成为趋势。 因此 , 跨链技术 必不可少 , 以 支持不同区块链 的信息交互和资产转移 , 同时兼顾系统的效率与延展性 。 ( 3)监管与测试平台 技术是把双刃剑, 为了 防止利用技术手段作恶、 避免可能存在的漏洞 被人滥用造成用户的大量损失 ,基础设施公链需有相应的设计 , 在保护隐私情况下实现可监管 。 Huobi Chain 将建立严格的 KYC( Know-Your-Customer) 和 AML( Anti-Money Laundering)标准对用户数字身份信息进行审核,并且 设置监管节点对链上信息进行监督 。此外,Huobi Chain 还将 搭建 智能 合约自动化验证平台 以保证合约应用的安全性。 1.2. Huobi Chain 愿景 火币自 2013 年创立以来,一直秉承“让金融更高效,让财富更自由”的使命,并始终将“用户至上”作为公司发展的核心理念。经过五年与用户的风雨同舟,火币已经发展为全球领先的数字资产金融服务商,形成了以数字资产交易平台火币 Global 为核心,以各国交易所与火币生态、火币区块链应用研究院、火币资本、火币 Labs、火币矿池、火币资讯、火币钱包等为集团内生态节点,并且以火币生态火伴为集团外生态节点的全产业生态布局。 随着区块链技术的不断发展,火币未来的形态更可能进化为一种全新的分布式体系,所有资产与权证的生成、流转、公证 与确权都在公链上进行。火币正在进行逐步将业务开放到社区进行自治的生态化尝试。但当前区块链底层基础设施尚未成熟,全产业依旧HUOBI CHAIN WHITEPAPER 3 / 61 处在受制于区块链技术性能与可拓展性缺陷的阶段。因此,火币在经过深入论证后,决定致力于开发出一条代表全球行业最高水准的数字经济时代公有链 Huobi Chain,以支持未来世界的底层运转。 在即将到来的数字经济时代, Huobi Chain 以“赋能实体经济,推动数字经济发展”为目标,定位于数字经济时代基础设施公链,追求更高的性能、稳定与安全,为交易清算、支付、资产管理、证券等各种复杂场景提供 计算与存储等基础设施,旨在成为数字经济时代公有链的标杆。 HUOBI CHAIN WHITEPAPER 4 / 61 技术介绍 2.1. 设计理念 “ 以交易为起点,以实现复杂业务流程及多元化资产上链为愿景,以火币生态业务为承载 ” 作为面向数字经济时代的基础设施公链, Huobi Chain 旨在利用区块链技术 优化火币 在不同时间段、不同领域的战略布局,为火币在数字时代中的产业发展助力。 首先, Huobi Chain 通过交易上链,实现在透明和可监管前提下 的 数字资产交易和清结算。具体而言,在透明度设计方面,通过技术手段,实现交易委托账本( order book)、限价单、结算的上链,使 Huobi Chain 可以自证无权使用交易资产;在监管方面, Huobi Chain 增加了监管节点,在保护用户隐私的前提下保证监管节点可追踪交易,查看资产溯源;在交易和清结算方面,为实现链上高效交易,交易链上 将 增加做市机器人撮合交易 ,以提高流动性 。 其次,随着公链在交易方面的设计完成,为适应数字经济在未来的发展, Huobi Chain 将支持 复杂业务流程的链上处理及更丰富的资产类型登记 上链 。现阶段,数字资产市场仍处于早期阶段。截至 2018 年 11 月,数字 资产 市场的总市值约为 1300 亿美元,而同期苹果公司 的 市值就达到了 8000 亿美元;同时,相比于股票市场,数字资产的设计也较为单一,可以说数字资产市场无论从规模还是从产品来讲仍有较大的发展空间。随着社会经济的进一步发展, 更多 资本市场的成熟模式也会逐渐 与 通证经济 相结合 。在不久的将来,从货币到商品,从房产契约到各类金融资产, 将会有更多资产 可以进行通证化( Tokenization) 。 现实世界中的资产 以通证的形式映射到数字世界, 可在区块链系统中进行交易和管理,数字资产的市场规模也将迅速扩大。为此, Huobi Chain 将开发新型通证合约,满足增发、并购等复杂业务场景的需要。 最后, Huobi Chain 也 将会成为 火币 全产业 生态的底层支持 。火币诸多业务例如超级节点投票、火币矿池、火币钱包、火币生态基金等均可进行上链处理;而火币在人才、法律方面的业务布局,也可 基于 Huobi Chain 开发相应的 DApp。 在 Huobi Chain 的社区生态和技术基础发展成熟后,将面向全球拓展更为广泛的业务场景 。 02 技术 介绍 HUOBI CHAIN WHITEPAPER 5 / 61 2.2. 技术架构 Huobi Chain 首创双链架构,构建交易链和合约链双链并行的模式,并通过跨链技术实现双主链间的信息交互。双链架构确保 Huobi Chain 系统 能够兼具高扩展性、高安全性和高效率。 Huobi Chain 系统架构如图 1 所示。 交易链不需要支持智能合约,对于金融领域的具体需求可以通过增加金融相关的特殊交易来实现,从而可以在一定程度上提高 TPS,以满足交易上链中高速、高频、低手续费的需求;合约链主要支持智能合约,对 TPS 的需求较低,以实现在合约上链时的复杂交易、业务合约、金融合约、逻辑和验证内容。 无论是面对高并发、高 TPS 的业务,还是面对高扩展性、强智能的业务, Huobi Chain 都能游刃有余,从而真正落实区块链赋能 实体经济 的理念,使 Huobi Chain 成为构建数字经济的基石。 图 1 Huobi Chain 系统 架构 HUOBI CHAIN WHITEPAPER 6 / 61 2.2.1. 区块链 系统 ( 1)区块链基本概念 ◼ 哈希函数 密码学哈希函数是区块链的基础,保证了系统中的信息不能被篡改。简要而言,哈希函数能在合理的时间内,把任意长度的输入通过散列算法,变换成固定长度的输出。要使哈希函数达到密码层面的应用, 必须满足以下特性 定义一个哈希函数 YH( X),①对于任何输入 X, HX长度永远一致;②根据输入值 X 能算出输出值 Y,但根据输出值 Y 无法算出输入值 X;③无法找出两个输入值 X 和 X,使输出值 HX和 HX相等;④谜题友好性。 其中,性质②保证了信息的隐密性。性质③保证了哈希函数值具有不可篡改的特性。信息如果被篡改,那么整个哈希值会完全不同。在性质②③的前提下可以引申出性质④谜题友好性。我们设输出值为 Y, 已知的输入值 M,要找到谜题的未知输入值 X,使YH( M || X)成立,唯一的方法是尝试所有的可能输入值 X。 例如 Y 是一个 200 位的二进制数,如果使用暴力破解, Y 所有的情况共包括 2200 中,对 X 进行随机选取,在最差的情况下,要经过 2200 次哈希运算,才能得到一个满足要求的哈希值。 X 的随机性特征保证了求解过程除上述方法外,没有更好 的办法。 ◼ 区块链 区块链是使用哈希指针形成的一种链式数据结构,区块之间互相链接一直延续到创世区块,一个区块包含一段时间内的交易信息,因此区块链包含了所有的历史交易信息,如果黑客想篡改区块链中的数据,那么前一区块的哈希值将不会与该区块的哈希指针匹配;当然,黑客也可以通过篡改前一个区块的哈希指针来进行掩盖,但他会发现修改到区块链的头部 创世块时会遇到麻烦,因为创世块一般存储在黑客无法改动的地方。 图 2 区块正常生产流程示意图 HUOBI CHAIN WHITEPAPER 7 / 61 ◼ 账户设计 不同于比特币区块链, Huobi Chain 引入了多重签名账户模型的设计。比特币没有账户概念,每个用户的余额都是从区块链上的 UTXO(未花费的交易输出)计算出来的,所有合法的比特币交易都可以追溯到前一个或多个交易的输出,这些链条的源头都是挖矿奖励,末尾则是当前未花费的交易输出。所有的未花费输出即为整个比特币网络的 UTXO。在 Huobi Chain 上,每一个地址对应一个账户,而全局状态就是由账户地址和账户状态的一个映射组成,该映射被保存在 Merkle 树的数据结构中。由于 Huobi Chain 拥有账户的概念,使得它在交易的可视化和查询账户状 态方面具备实时性,可根据一个地址情况实时查看当前账户情况以及交易状态。 ( 2)数字签名技术 数字签名是区块链的重要组成部分,保证了区块链系统的安全性。数字签名有两个重要特性,第一,只有所有者可以制作自己的签名,但任何看到它的人都可以验证其是否有效;第二,该签名只与某一特定的文件发生联系,该签名不能用于表明所有者支持另一份不同的文件。 数字签名方案由以下三个算法构成 ✓ ( sk, pk) generateKeys( keysie) ; generateKeys 方法把 keysize 作为输入,来产生一对 公钥 和 私钥 。 私钥 sk 被安全保存,并用来签名一段消息; 公钥 pk是 任何人 都可以找到的,可以用来验证签名。 ✓ sig sig( sk, message) ; 签名过程是把一段消息和私钥作为一个输入, 对应的 消息输出是签名。 ✓ isValid verify( sk, message, sig) ; 验证过程是通过把一段消息和签名消息与 公钥 作为输入,如果返回的结果是真,证明签名 属实 ;如果返回的结果为假,证明签名消息为假。 同时,要求有以下两个性质, ✓ 有效签名可以通过验证,即 Verify( pk, message, sign( sk, message)) true ✓ 签名不可伪造。 HUOBI CHAIN WHITEPAPER 8 / 61 ( 3)共识机制的选择 公链共识机制的选择会考虑多方面的因素。首先,共识机制一般遵循 CAP 原则,即一致性( Consistency)、可用性( Availability)和分区容错性( Partition tolerance)三者 难以同时达到最优 。 其次,在选择和设计共识时,也需要考虑共识的基础性质 a可认同( agreement),所有诚实节点都认同一个结果; b值合法 validity,认同的结果必须是一个合法的; c可结束 termination,在一定时间内一定达成共识,而不会无休止地进行下去。 从理论与实践相结合的角度出发 , Huobi Chain 的合约链和交易链均选择 BFT-DPoS( Byzantine Fault Tolerance - Delegated Proof of Stake,拜占庭容错式的委托权益证明机制)作为共识机制,具体考量因素如下 一是基于 火币业务具体需求 。 Huobi Chain 为实现支持 交易清算、资产上链等多 功能 的目标 ,其系统的可用性需要排在首要的地位。具体在 CAP 原则中, Huobi Chain 的设计需要保证系统 的 可用性和分区容错性,对于一致性可以做适当的妥协。对于强一致性方面不需要保证,只需要最终保证一致性即可 , BFT-DPoS 机制的特点 正 与之相契合。 二是出于提高效率、 降低能耗 考虑。 现有区块链项目的主要共识机制为 PoW( Proof of Work,工作量证明机制)、 PoS( Proof of Stake,股份证明机制)和 DPoS( Delegated Proof of Stake,委托权益证明机制) 。从效率和能耗角度考虑, PoW 和 PoS 机制在设计层面均存在部分问题。 PoW 机制的问题主要存在于算力中心化以及能耗。一方面, PoW 机制是通过节点的计算能力来进行算力竞争,随着 CPU 挖矿逐渐升级到 ASIC 矿机挖矿,出现了算力中心化的趋势,这与区块链去中心化的理念相冲突;另一方面, PoW 浪费了大量的电力进行运算。 PoS 机制在能耗方面有所改善,但是在中心化方面仍然存在隐患。具体而言, PoS 机制会出现持有币越多的人会获得更多的币奖励的趋势,整个网络可能会随着运行时间 的增长而越来越趋向于中心化。因此, PoS 机制虽然相对于 PoW 节省了能源,但是其底层依然依赖于 PoW,同时也没有很好地提升性能和安全性。 DPoS 机制类似股东大会选举产生董事会的制度,引入了超级节点选举机制。这一设计机制使得区块的生成更为快速、节能。此外, DPoS 机制充分利用了持币人的投票,HUOBI CHAIN WHITEPAPER 9 / 61 以公平民主的方式达成共识。投票选出的 N 个超级节点,权利完全相等,并且持币人可以随时通过投票更换超级节点。 尽管 DPoS 机制仍然存在中心化,但是这种中心化是受到控制的,因为每个用户都有权利决定哪些节点可以被信任。 DPoS 机制 理论上能达到万次每秒的交易速度,在网络延迟高的情况下亦可达到千次每秒级别,更适合企业级的应用。由于 Huobi Chain 旨在服务数字经济,对于可信环境下的数据交换和计算及其稳定性要求极高,因此 DPoS 是更合适的选择。 三是 性能 提升需求。 DPoS 虽然在性能方面较 其他机制相对优越 ,但是其高性能是建立在低故障和低延迟的基础上。然而现阶段的应用场景很难保障长时间的低故障和 低延迟 。因此,非 BFT的 DPoS 机制可能出现潜在的问题。 在 DPoS 算法中,区块生产者们在一定时间内轮流生成一个区块。假设没有节点错过自己的轮次,那么将产生最长链。区块生产者在被调度轮次之外的任何时间段出块都是无效的。 不过可能存在恶意或故障节点创建少数分叉 的情况 。为了确保诚实节点所在的链成为最长链,要求诚实节点的数量占总数的 2/3 以上。 例如 , 一共有三个节点 A、 B 和 C,其中 A 和 C 是诚实节点,而 B 是恶意节点 , 在 DPoS 下产生一个区块需要 2 秒,那么恶意节点 B 每 6 秒只能产生一个区块,而诚实节点每 6 秒能产生 2 个区块,因此诚实节点所产生的链永远比攻击链更长,具体 如 图 3、图 4 所示。 图 3 一般 DPoS 共识机制 下 区块正常生产流程示意图 图 4 一般 DPoS 共识机制 下 少数节点分叉示意图 HUOBI CHAIN WHITEPAPER 10 / 61 同样地,考虑其他故障场景比如离线少数节点的双重生产、网络分片化、在线少数节点的双重生产、法定超级节点数不足、多数生产者舞弊等场景 1,均要求诚实节点的数量需要占总数的 2/3 以上。 因此, 在传统的 DPoS 机制下,为了防止出现分叉,保证交易的不可逆 ,需要 2/3的超级节点通过 在该区块后继续生产区块的方式 进行确认,比如一个系统中有 18 个超级节点,每两秒产出一个区块,那么要达到交易不可逆就需要 继续在后面 产出 12 个区块 ,共需要 26 秒 ( 112 个区块) 。 为了提升 Huobi Chain 系统的性能,可以在原 DPoS 的基础上引入 BFT 协议,实现在产生区块时完成对区块签名的确认 ,缩短交易不可逆所需要的时间。具体而言, 超级节点将 交易打包成区块后用自己的私钥对该区块签名 ,并广播到所有节点,当超级节点收到至少 2/3 的其他超级节点的签名区块后, 该区块 就 完成了所有节点的验证成为不可逆区块 加入 到区块链中 。 由于每次区块在生产后立即进行全网广播,新区块链的生产和旧区块确认的接收可以同时进行, 因此,一 个区块从产生到成为不可逆区块, 最长 只需要区块产生的时间加上 其他超级节点 签名确认的时间 ( 据 EOS 团队测试该过程可在1 秒内完成),继续上文的例子, 则 仅需 3 秒的时间。 在 BFT-DPoS 机制下,系统的出块间隔的缩短, 使跨链通信的时延 减小 , 同时 单位时间内可确认的交易数量 得到 提升 ,提高了区块链系统的整体性能。 超级节点数量的确定 在 实际操作 中, 关于 Huobi Chain 超级节点数量 的确定 , 在 交易链和合约链 上 有不同的标准 A. 交易链 由 Huobi 自有节点和监管节点组成, 根据吞吐量需求来配置相应数量的节点 , 节点设备配置的 性能 以及节点的通信方式都受到吞吐量的制约 ; B. 合约链 通过社区投票选举超级节点,节点数量可参考 EOS 的设计初步设定为21 个 ,或者根据 Huobi 社区对出块节点设备性能的考虑以及对通信方式的选择来确定最终的节点数量。 1 DPoS下每种故障场景的分析详细可见 Dan Larimer所写的 DPoS共识算法 - 缺失的白皮书 。 HUOBI CHAIN WHITEPAPER 11 / 61 ( 4)合约层设计 Huobi Chain 的合约层由多个为交易而定制的内置合约、智能合约构成,并在此基础上实现跨链中继,从而使得 Huobi Chain 双链之间实现可信的跨链交互。 Huobi Chain-VM 使用 WebAssembly( WASM) 执行智能合约。 WASM 可支持多种编程语言 ,采用二进制编码,占用存储空间更小,且在程序执行过程中的性能优越。 WASM 会生成中间语言 字节码,可以 使用 Huobi Chain 提供的编译工具 进行编译。 调用合约 时, 部署接口将字节码部署在链上。成功部署后,区块链上会创建一个智能合约账户,账户中存储了合约的字节码和对应的 ABI( Application Binary Interface) 。用户 通过 指定 的 合约账户名以及合约方法,利用 ABI 和智能合约交互 ,实现对智能合约的调用 。 最后,为了防止合约逻辑执行失败产生的问题, Huobi Chain 将参考以太坊的流程,使用 require 和 assert 解决。 2.2.2. 双链架构 双链结构主要是根据现有工程实践案例的相关设计, 例如 thunder network 的快慢链解决方案,该方案可以追溯到 BTC 时期。 BTC 的主要功能为支付结算,但受限于10 分钟的出块时间 , 在实际应用中用户体验较差,因此 需要一层 hub-based network 来做相对更快的结算。 lightning network 作为第二层解决方案 在保障 BTC 主链结算功能的同时, 也增加了可扩展性。 可以看到 lighting network 通过 4000 多节点 以及12000 多个通道维护了 450 个 BTC 的网络交易。基于这 个技术解决案例,我们可以在公链的初始设计 中 ,通过双链结构保障结算功能的同时增添 可 扩展性,而在其中,就需要设计相关的结算公链以及扩展公链的功能 , 并 在连接通道上使用到 SPV( Simplified Payment Verification) 和 CLTV( Check Lock Time Verify) 作为主要跨链方式。 由于 Huobi Chain 的首要目标是保证高速交易,但智能合约对系统内有效资源的消耗较大。为了在快速结算的同时保证合约的广度, Huobi Chain 在设计中将采用双链架构,分成交易链和合约链两部分 交易链 提供支付结算功能,如挂单、撮合、深度等功能都由其负责; 合约链 支持智能合约,满足复杂场景的应用,提高公链的扩展性。 HUOBI CHAIN WHITEPAPER 12 / 61 其中,合约链上的交易需要登记到交易链上, Huobi Chain 会提供跨链中继来实现,而合约链上会提供一个统一记账的内置合约来负责接收。 具体而言,在区块链中,要保证高速特性就需要对交易 KV 对 ( Key Value Pair)进行精简,同时对相关节点的机器进行优化,否则区块链网络的交易处理能力( TPS)就会因为在传输、打包时间上的损耗而降低。由于 Huobi Chain 在设计上要求引入多种功能特 性,需要基于非图灵 script 或者更高级的虚拟机部分的支持,以及将一些可内置化的特殊交易以较低的成本在终端实现。如果采用 gas limit 或者控制节点机器的方式,当任何 DApp 受市场追捧而大热时,势必将会影响到整个公有链的运行 , 因此 Huobi Chain 将采用 双链架构 设计。此外,为了保证双链数据的可用性(尤其是合约链上数据的可用性), Huobi Chain 将使用 SPV 验证 类 HTLC( Hashed Timelock Contracts) 主链锁定的跨链技术方式,在合约上将使用主链的 Token,交易链主要保障 KV 对,合约链上的 balance 只有交易链通过 SPV 后才会产生,但合约链只有返回的交易,交易链只有进入合约链的交易。综上, Huobi Chain 将通过双链的架构设计和上述跨链技术, 保证 合约链 的使用对 交易链 的 TPS 不会产生影响。 图 5 Huobi Chain 跨链交易实现示例 Huobi Chain 的双链架构优势显著首先,基于链中的所有交易,都可以看作全局变量的更改,此时可采用静态的方式来保证一定作用域,在未来有更多的作用域时就可HUOBI CHAIN WHITEPAPER 13 / 61 以用同样的跨链协议进行联系;其次,在合约链拥有 SPV 之后,支付在合约链和主链进行验证的步骤可异步,大幅加强了使用性以及延展性。例如,当一个合约链被几个应用占满时,可通过同样的结构开启另一条合约链。 2.3. 技术实现 2.3.1. KYCAML ( 1) 数字身份 在 Huobi Chain 的交易链上实现 KYC 和 AML 管理,首先必须在链上 建立 一个可信的数字身份 标准 H-UIDHuobi Chain - User Identity。 H-UID 具有唯一性 ,各国公民 经过 KYC 身份 验证后 将个人信息登记上链 , 用户可基于 H-UID 对 自己的个人信息和数字资产 进行管理 。 H-UID 由以下几个部分组成 A. 基础信息, 如姓名、性别、国籍、 证件类型、 证件号码、联系方式等 ; B. 高级信息, 如信用、教育、工作、社交等相关数据; C. 数字资产信息 , 个人持有的数字资产情况 ; D. 账户公私钥 ,用于对 H-UID 的数据进行签名、加密和授权。 注 机构 账户须与法人身份相关联,一个法人可以注册 多个机构 账户 。 ( 2) H-UID 的创建和验证 用户自行提交信息创建 H-UID, 由监管节点对信息真实性进行验证,验证通过后对验证内容进行签名,个人信息经过加密后登记上链。 在 H-UID 的验证周期上,在需要用到的 H-UID 的时候触发验证判断,重新验证周期为 6 个月,一般情况下则不需要验证。 ( 3)数据授权 为了更好的保护个人隐私,除监管节点有权 查看 H-UID 的个人数据外,其它任何HUOBI CHAIN WHITEPAPER 14 / 61 人或机构 只有在获得本人授权的前提下方可 查看他人 H-UID 的数据。 用户在授权 他人查看数据时 ,可以将授权用户 、 授权 时间、 具体 用途等 要素在智能合约中进行 设置 , 并且要求被授权人 只 能在 可信执 行环境中使用相关数据。 所有 查询记录都会在链上登记,以便追责 。 ( 4) 安全保护 为了保护用户的身份信息安全,在 Huobi Chain 上,用户丢失了数据 私钥 不会丢失身份,可以通过监管节点验证身份后并重置数据私钥;为了防止 私钥 被盗取后在全网公开,用户本人也可以对 私钥 进行修改。 2.3.2. 跨链技术 Huobi Chain 采用的是双链结构,因此涉及跨链技术。 Huobi Chain 将开发 H Protocol,即使用 SPV 验证 类 HTLC 主链锁定的跨链技术方式,传统的 SPV 验证模式往往存在确认时间太长而造成效率低下的现象,但 Huobi Chain 采用了 DPoS 机制,巧妙地改善了这一问题,可完成对跨链交易的极速验证。 以交易链上的两个用户 UserA 和 UserB 为例,其中 UserA 和 UserB 拥有一定数量的 Token。 UserA 和 UserB 达成了某个协议(如跨链数据转移),随后 UserA 需要抵押一 定数量的 Token,并利用一个侧链完成此协议。协议中约定, UserB 在完成某项任务之后(如完成跨链数据转移)可以在侧链上获得 UserA 所抵押的 Token。在该过程中, UserA 可随时查看所抵押 Token 的剩余数量, UserB 也可随时可以查看自己可改范围内的剩余数量。且 UserA 可随时决定终止整个协议,在 UserA 终止协议后,抵押剩余将返回到 UserA 的主链账户中, UserB 也将获得在这个协议过程中所扣除的 UserA 的 Token。 例如,初始情况下, UserA 和 UserB 拥有的通 证数量为 {UserA1000, UserB0}。首先, UserA 启动该协议并生成一个侧链;然后, UserA 和 UserB 达成一个跨链数据转移协议, UserA 抵押 100 枚通证到侧链中。 UserB 完成了部分跨链数据转移之后扣除了侧链上的 10 枚通证。完成了上述过程之后, UserA 发现不需要继续转移了,选择终止这一次协议,侧链上通证的转移将会同步到主链上。最后, UserA 撤销了整个侧链。整个过程中 UserA 和 UserB 的资产变化如图 6 所示 HUOBI CHAIN WHITEPAPER 15 / 61 图 6 跨链协议工作流程图 上述示例是简单的 UserA、 UserB 之间的合约。我们可依照相同的方法将该协议应用到多方角色中( UserB 可以是多个用户)。下面以一个具体的示例来描述整个协议工作的过程 A. 初始化假设有四个用户 A,B,C,D,用户 A 发送特殊交易 Tx.init ,初始化一个数据,包括权限表 {用户 B modify, 用户 C modify, 用户 D readonly} 和抵押列表 {用户 B 100,用户 C 50 }(即面向用户 B 抵押 100Token,面向用户 C 抵押 50Token)。特殊交易过程中 用户 A 的 150 枚 Token 被 锁定 扣除 ,其值即为抵押列表的和; B. KDC( Key Distribution Center, 密钥 分发中心)取这条 Tx.init, 保存好文件 ID, 包括权限表 {用户 B modify, 用户 C modify, 用户 D readonly}和抵押列表 {用户 B 100, 用户 C 50}; C. 用户 B 向 KDC 发送修改 HTTP 请求 req-write, KDC 根据权限表判断拥有权限,将 用户 B 的修改记录,返回成功; D. 用户 C 向 KDC 发送读取 HTTP 请求 req-read, KDC 根据初始值和所有的修改,计算出最终的值,返回给 用户 C; E. 用户 A 向 KDC 发送终结 HTTP 请求 req-terminate, KDC 停止为请求的 fileid 服务,然后, KDC 发特殊交易 Tx.terminate,将 用户 A 剩余的抵押金额返还,将抵押列表的用户金额增加。 HUOBI CHAIN WHITEPAPER 16 / 61 2.3.3. 分布式存储 目前,分布式存储是新公链的必备模块。 由于 EVM 的 4700000 的 gas limit per block 只能容纳 62kb 的存 储空间,远不能满足用户建立静态链接或存储文档原件上链的使用需求 , 而分布式存储可 为不同场景下的需求提供 适当的 选择,通过把数据在链外进行分布式存储的方式,既能做到主链存储资源的合理利用,也能让数据在隐私存储和公开访问上有所选择。 为此, Huobi Chain 使用第三方 开发的 去中心化 存储来加快开发。 为了保障用户的安全与隐私, Huobi Chain 要求第三方提供的去中心化存储使用 无服务器交互系统的存储架构 方案。 选择上述方案主要基于以下几点( 1)若只涉及 用链 ,则需要提供能被验证的明文,即公开整份文件给全体用户;( 2)若仅用 A 的密钥对

注意事项

本文(火币公链白皮书.pdf)为本站会员(风云天下)主动上传,环境100文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知环境100文库(点击联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2017 环境100文库版权所有
国家工信部备案号:京ICP备16041442号-6

收起
展开