区块链技术爱好者互动平台
International
帐号登录 |立即注册
布比技术社区 精选 布比生态 查看内容

布比CTO王璟西江大学授课:区块链关键技术原理及实现

203 0
社区运营 | 2018-10-16 17:32
摘要: 15日,布比CTO、BUMO技术顾问王璟应韩国区块链知名专家Sooyong Park教授邀请,前往首尔西江大学为相关专业学生进行授课,课题内容是“区块链技术交流和探索”。


现场演讲


15日,布比CTO、BUMO技术顾问王璟应韩国区块链知名专家Sooyong Park教授邀请,前往首尔西江大学为相关专业学生进行授课,课题内容是“区块链技术交流和探索”。


西江大学是韩国著名大学之一,也是韩国常春藤盟校之一。布比是国内领先的区块链金融科技公司,其提供核心技术支持的BUMO更是下一代商用级基础公共区块链,无论是性能还是商业应用,都有着丰厚的积累。此次授课,更多的是围绕着区块链技术以及商业应用,进行一次国内企业与韩国高校之间的交流

此次来校授课,主要是分享布比区块链和BUMO公链的技术及应用特性,希望能通过这种交流的方式吸引到更多的社区成员,从而拓展布比区块链在韩国的技术社区和应用市场。


以下为王璟授课内容,主要包括:布比区块链技术、BUMO公链介绍、全球公链对比、未来智能合约方向等。


(干货满满,需花费10分钟时间仔细阅读~)

第1页 



大家下午好,非常高兴有机会与大家分享我们在中国区块链技术,以及把区块链应用到不同商业领域的经验。


演讲PPT1


第2页



首先介绍布比区块链技术。


布比从2012年底开始接触与研究区块链技术,当时从最底层的算法开始;2014年中下旬开始自主开发区块链底层,因为当时有源码的项目只有bitcoin、ripple等;


2015年3月拿到第一笔天使投资,正式以公司的形式继续区块链技术研发,2015年中旬完成第一版的BubiChain代码;


2015年底完成在中国境内第一个正式的区块链商业应用落地;


随着中国商用区块链的不断发展,到2016年底,我们已经完成中国最大的一条联盟链的建设,一共有30多个大型机构(包括银行、保险公司、互联网公司等),超过1000W账户,每月交易量超过1000W笔;


2017年5月,我们发布了第一款面向金融行业的商用区块链,截至目前已经有10家金融机构,40家核心企业,超过2000家供应商(中小企业)在上面做供应链金融的业务;资产登记额超过70亿,融资额超过20亿;


截至到2018年3月,我们一共完成三轮股权融资,融资额1.5亿人民币


布比区块链成长路线图


第3页 



布比是中国做区块链商业化最早的企业,过去三年多,我们一共接触了1200家机构,遍布十几个行业领域。布比是中国做区块链商业化最早的企业,过去三年多,我们一共接触了1200家机构,遍布十几个行业领域。


第4页



我们从2014年开始申请专利,目前已经有接近50项核心专利;截至2017年,我们是全球专利数排名前三的公司;我们的专利涵盖区块链底层技术、区块链特性、区块链商业应用


布比区块链专利展示


第5页 



一个商用型的区块链底层与全球大部分开源的公链项目,在技术构建、软件实施上都更加复杂。大家看到绿色的这4个小块,公私钥、账本、共识、P2P组网就是区块链最基础的4个核心模块,有这4个模块都可以称为一个区块链底层;但是在商用领域,只有这4个模块是不够的。


首先公私钥,所有真实的区块链应用基本都和金融相关,所以必须要满足KYC(实名制)的需求,其次还需要与CA体系结合,才能符合传统司法取证的需求;最后传统互联网用户都习惯了用自己的邮箱、密码,一个256bit的字符串是很难记忆和使用的;另外在区块链技术领域,如果私钥丢失了,资产就没有了,例如bitcoin的私钥丢失了,btc就丢了,但是在真实的场景中,如果银行告诉你密码忘了,你的钱就没了,那是没有用户愿意使用的。


因此为了方便应用对接,需要在公私钥基础上,封装一系列的功能模块。


中间的账本、共识算法、P2P组网,对于做业务的人员来说太抽象了,他们需要花大量的时间和精力才能理解,这大大增加了应用对接的难度,因此在接口实现的时候用业务能够理解的语言,例如:资产、凭证、交易、合约等,能大幅降低应用使用区块链的时间成本。


最后是运维,对于一般技术人员,区块链就是一个黑盒的形态在运行;从运维的角度,他们需要很多可视化的工具,例如可视化的配置、可视化的健康监控(能够从软硬件、网络的角度实时监控区块链运行的情况,并且能产生实时的告警和日志信息,方便运维人员排查问题);同时还要满足上层应用不同的数据查看、数据分析的需求。


只有做到这些,才能做出一个通用的商用级别的区块链底层,以满足不同商业应用领域的需求。


商用的区块链底层


第6页 



完成以上的应用适配和封装以后,一个应用的开发或对接就变的很简单了:


应用有自己的账户体系、账本结构、运维体系;只需要分别与区块链做对接就可以;因此我把一个传统应用需要3-6个月的对接成本,大幅缩短到1-2周;满足应用快速上链、快速试错的需求


PPT讲解图


第7页



以上是关于布比公司在中国开发商用区块链技术,以及把区块链技术应用到各个行业里的介绍。下面我介绍一下我们面向全球的公链项目BUMO。


BUMO目前是打造全球资产自由流通的泛在信任网络。


BUMO


第8页



大家都把区块链称作下一代价值互联网,但是目前全球没有一条公链真正能够承载有价资产的流通。


目前公链公认的缺陷是性能问题,所以今年上半年涌现出一批为了解决性能的公链项目,但是截至目前,大多数项目的性能还停留白皮书上,真正能够落实到软件工程上的项目非常稀少;因为提出解决方案是很容易的,但是落实到软件工程开发上,是需要长期的积累的。目前大部分项目团队,接触区块链都不到一年时间,基本没有区块链核心开发的经验;


其次目前公链项目在应用对接方面做的都不够友好,并且大部分项目只把精力放在区块链技术实现上,对应用场景的理解、应用如何快速对接上链,缺乏实战经验。


以上两点恰恰是BUMO社区的中国技术支撑团队最擅长的,在过去4年时间里他们接触过十几个行业领域1000多家机构,积累了丰富的区块链底层开发经验、具备给不同行业领域提供专业的解决方案,提供友好的开发组件,帮组应用快速落地。


第9页 



我们对比一下现在全球主流的几条公链:Bitcoin、Ripple、Ethereum、EOS和Buchain。


首先从代码成熟度的角度,Bitcoin大概是9年,ripple是5年,Ethereum 4年左右,EOS只有1年,BUMO和Ripple差不多时间起步,都是5年左右时间;


其次是是否经历过大型商业应用的洗礼,bitcoin、eos都没有,Ripple在做少量的国际汇兑,Ethereum上有一些博彩类的游戏;前面介绍了布比做的联盟链上面有1000多万的用户,也跑过70多亿的金融资产;


再比较一下激励模型:Bitcoin和Ethereum是给矿工,Ripple大部分奖励给了做汇兑业务的网关;EOS给了持有大量币的超级节点;这些激励模型最大的问题是币价越高,应用使用的成本越高,所以BUMO的激励倾向于给DAU更大的应用


再比较一下各条公链的TPS;


最后是做应用开发最关心的交易费,Bitcoin和Ethereum的交易费给了矿工,Ripple的交易费给了网关,EOS的交易费给了超级节点;而BUMO计划把大部分交易费返还给付费方。


主流公链对比


第10页 


下面简单介绍一下BUMO公链的技术细节,有些已经实现,有些正在研发和内测中,与前面提到的商用区块链一样, BUMO除了提供完备的区块链底层功能之外,还提供应用所需要的适配支撑层。


BUMO三层结构:

网络层:作为泛在信任网络的基石;

交换层:为资产同流提供相应的能力支撑;

应用层:提供友好的开发组件,满足不同层次、不同领域的应用对接


BUMO三层结构



第11页 


BUChain提出名为 BU Firework 的双层共识算法,它具备以下特性:1、在PBFT算法的基础上,引入Dpos的机制,满足高吞吐率和社区激励的需求;2、实现一套能够支撑主子链的双层共识算法。


Fireword的双层共识算法


第12页


 

在多链方面,BUChain提出了Orbits的主子链架构,因为一条主链是永远无法满足日益增长的数字资产上链、流通的需求;因此不同的应用场景、甚至一个应用可以独立跑在一条子链上,主链定期收集子链的状态、提供跨子链资产流通所需的路由寻址功能。


Orbits主子链架构


第13页



随着区块链的发展,异构链之间的跨链需求也会逐渐增加,BUChain提出名为Canal的跨链解决方案,在不同主链之间搭建一条Inter-chain来满足跨链资产的流通。


Canal 的跨链解决方案


第14页



以我们过去落地商业应用的经验,智能合约未来有着两条截然不同的需求方向:要么简单易用、要么支持更多种类的编程语言。BUChain的CodeMach正在集成V8引擎和WASM;能让不同语言的合约同时运行在BUChain上;即提供JS的简单易用,又能支持各类复杂编程语言的实现。


16.png


第15页



友好的开发组件,是BUMO提供给社区生态的礼物。这是源于BUMO中国区技术社区在过去4年商业应用落地经验的积累;皆在帮助有兴趣一起打造BUMO生态的合作伙伴,能够快速的应用对接、便利的二次开发。


开发组件


第16页



BUMO 基础区块链是完全开放、自治的,无缝链接物理世界与区块链数字世界,任何设备都能作为节点加入到网络中,共同实现网络维护、应用开发及价值流通,形成泛在的价值互联网基础设施。


第17页



下面介绍一下基于BUMO公链的开发指南。


这是我们提供给社区开发者的SDK,SDK里面主要提供以下几个功能:


1、 对原生区块链接口的封装,使上层应用使用更加方便。

2、 为上层应用做负载均衡,应用方可以配置多个区块链节点的IP,默认访问应用方自己的节点,如果自己的服务器出问题了,会自动访问其它的节点,确保应用不会因为节点问题而中断服务。

3、 实现回调接口,区块链是类似数据库的访问,只有调用没有回调的,应用方必须自己起定时器实时查询交易结果,为了方便使用,SDK里支持订阅功能,可以根据应用关系的交易,实现异步回调功能。


BUMO公链开发指南


第18页


下面介绍BUMO社区提供的各种开发工具。


我们除了提供Java语言的SDK,还实现了Go、Node.js等语言的SDK

提供区块链浏览器方便应用方查询数据;

提供智能合约的开发IDE,方便开发者测试;

提供7*24小时的健康监控,方便参与节点结社的社区维护自己的节点。


22.png


第19页



下面是我们github上开发的区块链代码和SDK代码,欢迎大家上去学习和提建议。


source code : https://github.com/bumoproject

SDK : https://github.com/bumoproject/bumo-sdk-java


第20页 



接下来想与大家分享一下,区块链技术在未来1-2年重点发展的领域。


1、 数据存储,随着大量商业应用运行在区块链上,高性能、大并发带来的是海量数据存储;大家都知道区块链目前使用的是NoSQL型数据库,这种数据库目前没有很好的集群方案,因此迫切需要一种海量存储的解决方案。


2、 数据隐私问题目前是很多应用方最关系的问题,传统的隐私保护方案并不能满足商业应用的需求,需要更加有效的密码学以及加密中间件来解决则个问题。


3、 跨链是今年很热门的一个话题,目前跨链分为同构间的跨链和异构区块链间的跨链;同构跨链相对容易实现,就像互联的路由协议,主网把一个个独立的子网串联起来,以满足一条公链上能横向扩展支持不同领域的应用;异构区块链之间的跨链比较复杂,需要多条公链协作才能完成,因为分布式系统里最难的就是状态一致,比特币60分钟才能确认一笔交易,而其它很多链十几秒就能确认,如果保障不同区块关闭时延下数据的一致性,是及其复杂的。


4、 最后是安全,这里重点强调合约的安全;近两年合约的安全事故频发,但是个人认为目前合约的安全问题只是冰山一角,因为全部是代码写的有问题;而真正威胁合约安全的是虚拟机技术本身的安全问题,目前全球公链里面主流应用的虚拟机技术除了google的V8是经过了chrome浏览器的验证;像EVM、WASM等都是区块链领域全新引入的,其它的安全问题需要专业人员来不断完善。


24.png


以上4个课题我们正在全球范围内,与知名高校、科研机构合作;一起研究、论证和软件落地;目前我们已经与MIT联合建立区块链实验室,从区块链最基础的算法等领域入手,一起研究和落地;在中国我们也与十几所高校有合作;也希望未来能与韩国的高校在某些领域,可以长期合作,共同为区块链技术的发展贡献力量。 


第21页 



为了回馈全球的区块链爱好者,布比计划把过去5年的积累,与全球社区分享,建立一个纯净的区块链技术社区


1、 包括日常的技术交流,我们会不断的整理布比区块链相关的技术材料,供大家学习和讨论;

2、 提供免费的测试环境,并提供各种动手的demo程序,供全球社区测试;

3、 案例分析,我们把过去三年在中国做的商业应用,整理成案例,供社区学习和讨论;

4、 最后我们把全球范围内能够收集到的所有区块链相关的论文,都整理成统一的资料库;另外我们也与全球50多所高校的老师和学生,正在不断的发布区块链相关的论文;这些都会源源不断的汇集在我们的技术社区上。


布比技术社区:http://www.bubifans.com


第22页 



最后我们在全球范围内,发起了一个代码复查的活动,也欢迎大家踊跃参加。为了方便大家理解我们的代码,我们专门花了20余人,录制了20多个小视频,帮助大家更好的理解我们的技术架构和代码实现。


布比code review赏金大赛:https://codereview.bubi.cn/index


最后谢谢大家的聆听! 


本文暂时没有评论,来添加一个吧!

您需要登录后才可以评论 登录 or 立即注册