IBM资深研究员杨保华演讲实录

  全景网1月7日讯,福田区“推动金融核心区建设系列培训”之二:区块链技术与金融领域创新应用培训会今日举行,全景网全程直播。IBM资深研究员杨保华在现场发表演讲,以下为演讲实录。

  杨保华:今天很高兴能有这个机会来跟大家做这个分享,感谢福田区对这次活动的大力支持。

  简单做个自我介绍,我来自HyperLedger的创始人之一IBM,现在是在研究院工作,我之前也是在开源社区做了一些贡献,因为我个人也是HyperLedger的粉丝,我在这个社区开发一个项目,因为HyperLedger非常重视中国区的工作,还有发展,所以现在设立了专门面向中国的基础工作组,我现在也在带工作组的工作,非常欢迎各位在技术项目方面,加入我们工作组来推动这个工作。

  首先我会介绍HyperLedger的项目,后面会着重就大家关心的项目,就是HyperLedger1.0的设计,后面如果大家有机器的话,怎么能够在本地搭建一个HyperLedger的环境,最后会有一些简单的测试的案例。

  HyperLedger这个项目其实正式成立2015年的年底,当时刚成立的时候是30家,包括技术领域,包括计算机技术领域,还有金融领域的一些领军的企业一起作为创始的会员来成立,到今天为止,基本上正好一年的时间,在一年的时间里,它的发展是非常快的,到现在108家企业,中国有26家本土的企业作为重要的成员,目前它包括加起来是23个项目,有超过150名的贡献者,有8000次代码的提交,HyperLedger的整个项目一开始提出的时候目标就是要打造一个企业级的、开放的分布式的账本平台,这些项目里面有几个是比较有趣的项目,包括很多人都很熟悉的Fabric项目,还有Cello项目。

  首先来看HyperLedger—Open—sourced项目,有几个比较有趣的特点,提出了一个很创新的共识机制,有它专门的一些芯片很好的来支持这个机器。另外一个项目是Ioha,提出这个项目的公司是来自日本的一个团队,这个项目主要是用C++来实现,现在有超过1000次的提交,这个项目在整个设计上比较大程度的受到了HyperLedger的启发,它的几个独特的特性,一个是提供很好的C++支持,另外就是它面向的场景里面特别强调了面向移动,还有外部应用的场景,同样它也是有比较独特的共识机制。

  接下来这个项目是不那么重的项目,我能不能看一下这个账本里面发生了啥,所以我需要有一个浏览器,这个项目是2016年的8月份正式被接收,最初提出这个项目的包括来自英特尔、IBM的一些技术人员。这个项目要特别讲一下,因为这个项目是我提出的,它刚刚被接受,它主要的目标,因为我在社区做了一段时间就发现,借用下来云计算的理念,想要做一个平台,这就有了Cello这个项目,这个能支持下面很多不同的环境和云平台,同时它也比较注意扩展性。

  最后重要级的项目很多人可能耳熟能详,就是HyperLedger Fabric项目,他最早是由IBM的团队来提出的,它主要用的语言是相对比较新的一个语言,就是Golang,现在开发者有超过20人,4000多次的提交。如果关心HyperLedger整个项目的人可能会知道,HyperLedger目前正在努力地往1.0进行演化,我们希望去把它进一步的改善,包括我希望它的性能更好,加强它的安全性,在架构上设计更加的灵活。围绕着Fabric,我们还有一些的SDK,包括各种实现。这张图就比较明显的反映出整个设计场景的不同,整个应用场景来看相对是一个固定的场景,里面节点就是分两种,一种VP,另外一种是代理NVP的概念,到1.0就把整个节点更加灵活了。

  今天我会着重讲一下1.0的Workflow,首先我需要提交一个提议,这个提议会去进行一些简单的认可,如果认可就可以加一条,对于应用来说,如果我攒够了足够多的背书,这个时候我就可以扔到我的共识这套服务上去,让它形成共识,共识之后到区块,这个就是整个1.0的路径。1.0什么时候有?我们今天大概在这个位置,今天为止,基本上大部分的接口都已经固定下来了,到2月份会有Beta2,那个时候很多人就可以拿来尝鲜了,到3月份是计划做1.0,我想这个其实离不开在社区的各位一起的努力,我们争取把1.0在3月份变成一个现实。

  接下来跟大家探讨,如果你想在本地搭建一个HyperLedger的环境,究竟需要哪些步骤?第一块是需要Setup环境,我建议大家用Docker的环境,Docker的版本选用1.12相对比较稳定一些,如果你用的是Linux平台,要64位,Kernel要3.10+。也有很多人用Mac,我推荐大家用Docker for Mac的方式。这两个容器怎么让它们互相的合作,如果我单个手动会相对比较麻烦一点。

  安装完之后,我建议大家对Docker进行一些调整,方便后面一些测试的工作,如果熟悉Linux脚本的就知道,配完之后我们需要把它重启一下。

  环境配好了之后,如果我们要起用一个HyperLedger的环境的话,我们究竟需要多少步,第一步需要拉下来Docker镜像,一个是有一个具体的命令,另外IBM中国有一个区块链的网站,上面会提供一些很好的教程,包括如何下达镜像,如何去用这个镜像,大家可以去访问。启动之后里面会看到好多的输出。启动之后能干什么事呢?你可以进行一些简单的测试,首先第一个可以去执行这样一条命令,我希望能够实时地监测我的系统上到底跑了几个,第二步进行测试,比如说我进行一些交易的调用。

  你会看到启动的三个节点里面有这个名字,就进入了不同控制台。可以执行哪些命令,一个典型的例子就是deploy命令,ChainCode是HyperLedger专门提出来的一个概念,ChainCode有几个子命令,这个N就是你要给的一个命名,我们可以简单命名为测试。大家可以看到,这个路径特别长。前面的HyperLedger都是说哪个项目。执行完这条命令之后,也同样反馈一些结果,如果没有报错的话,就成功了。接下来先来测试一下刚才获得的数据对不对,同样的内容我们会指定是哪一个ChainCode,前面基本上是类似的结构。

  接下来介绍我们中国区的工作组,如果你不了解的话,建议大家直接去看网站,重点我建议大家一个是有Email,还有一个Slack,它其实也是一个在线的沟通工具。还有几个活动的预告,首先是3月11日、12日上海会有首亚洲区的培训,大家可以关注一下。这个并不需要大家对这个平台本身有多深的改进和应用,首先你基于对HyperLedger的任何一个项目,你开发了一个很好的应用场景,这个其实也是我们非常欢迎的。最近我们接连在国内搞了几次大的活动,后面计划还会在上海,社区后面会有一些培训类,欢迎大家来参加,也欢迎有志愿者来作为讲师。

  我强烈推荐大家一定要认真读一下Reference,里面有很多详细的资料,另外我们有IBM的一个区块链的官方网站,这里面除了我刚才讲到的容器定向的下载,还有很多的指南,还有很多的,包括你如果有一些商业上的合作,第三个是今天,如果你按照流程跑下来的话,你可能需要的文件,从哪儿下载,从这个地址可以下载到。

  谢谢大家!(现场速记未经演讲本文审阅)

独家专栏

热门推荐