对话微软Azure Blockchain:微软的区块链解决方案会和Libra结合吗?
Unitimes AMA (Ask Me Anything) 第33期
特邀嘉宾:许建志(Jacky Hsu),首席项目经理
主题:以太坊的企业用例与架构
好的。大家好,我是Jacky。我在微软有18年的时间。从台湾加入之后调到新加坡亚洲总部,之后到北京大中华区,以及上海云计算研发中心。负责过的产品包括Visual Studio,MSDN,Windows生态系统,中国区Azure CDN...等,目前在Azure区块链团队。
微软有很多大客户与企业研究或导入区块链,我们根据这些客户的需求与遇到的问题,制定了区块链相关的产品线与战略。其中最大的不同点是
,微软不做自己的链,而是协助客户拥抱主流的区块链包括以太坊,Quorum,Corda与超级账本等
,但是我们会协助客户整合其他技术例如AI,IoT,大数据...,并快速开发企业级的解决方案。
Azure区块链锁定的客户群是企业客户,主要有三大方向。
一个是部署与托管
。客户自己从头建立区块链网络需要很多知识与花费不少时间,即使建立好了管理区块链网络也是很大的工程与费用。例如我们有个新加坡的客户为了建立企业级的联盟链区块链网路,请第三方公司花了七万美元建立才配置三个节点,每年还有八万美元的运营与维护费用。几乎每个和微软合作的客户都希望微软可以协助快速部署并管理区块链网络 (managed service,也就是PaaS服务)。
举个例子,一般企业部署区块链都是使用相同规格的VM,一旦储存空间不够了,因为区块链是同步的账本,整个企业区块链的节点将会差不多同时出空间不足的问题。客户得自己把数据备份下来,放到比较大的硬盘,再mount回去,但是对区块链底层配置不熟悉,单纯这些操作是无法让区块链网络继续运作的。而托管的PaaS服务将让客户不用担心储存问题,使用PAYG(Pay As You Go)的方式,使用多少就花多少钱,不用担心储存空间的限制就像有无限的空间,同时又可以保证SLA。
第二是快速开发
。微软提供很多工具与中间层,协助打通不同组件y与服务的连接。以银行系统为例,如果导入区块链,不可能让用户直接使用区块链的地址登入,得和银行的身份验证系统整合(老人家记不住这么长的以太坊地址的),自己保存私钥(万一忘记了,银行里的钱还在吗?),根据法规,还需要off-chain的储存,另外也会想把数据与大数据结合分析,甚至通过AI做学习...Azure Blockchaint提供了很多工具,例如Workbench,Logic Apps,Azure Function...等,协助客户可以像积木一样整合区块链到不同服务,例如Azure AD,Key Vault,Event Hub,PowerBI...提供端到端的解决方案。
最后就是企业级的需求
。和公链不同,企业导入区块链必须符合企业内部的安全与产业的标准。例如必须有强密码,提供IP filtering的功能限制可以存取区块链的IP,私钥不允许通过网络传递必须做remote signed,BCDR(Business Continuity and Disaster Recovery)也就是高可用性与异地备源,Log与Monitor,可以在有敏感操作或者是负载过高的时候设定规则获得通知或者自动执行相关script,设置RBAC,符合ISO与SOC Type2等的标准,处理欧盟GDPR数据隐私的机制...
简单的说,我们认为对企业来说,区块链就是一个让不同组织同时使用的分散式数据库技术,微软关注的是企业想解决的问题与如何快速提供他们建立端到端的解决方案。例如新加坡航空使用上一代的Azure区块链技术,三个月就可以推出KrisPay产品上线,目前在App Store或者Google Play都可以下载,KirsPay联盟里就有三十家以上的partner。
目前微软对外已经公开的区块链服务,比较可以关注到的是Azure Blockchain Service,另外就是Azure Blockchain Workbench。这两者是相辅相成的。
Azure Blockchain Service就是刚刚提到的PaaS服务,只要10分钟就可以建立起一个联盟链的以太坊网络。
目前区块链部署的趋势是BaaS,也就是Blockchain as a Service。从自己搭建需要数周的时间了解,测试与配置(例如测试该选择什么规格的VM,瓶颈是什么,选择什么共识算法...),到使用script部署区块链,就像找个阿姨打扫家里,一开始井然有序,但是之后就是自己维护与维修,甚至要增加额外的联盟链会员节点也得自己进行底层配置与安全设置,到BaaS提供的就像是酒店式公寓的服务,每天有人打扫,有保安负责安全,设备坏了立刻维修...最重要的是,是PAYG每小时计费。不需要的时候,直接删除即可。每个节点每个小时不到一美元。
Azure Blockchain Workbench则是架构在ABS上面,可以快速产生解决方案的框架
。微软根据很多客户的架构设计,总结了相对通用的设计架构,用户可以自动部署相对应的组件,除了底层的ABS还有整合身份系统的AAD服务,储存密钥的Azure Key Valut,off chain的数据库,处理事件的event hub,连接到分析服务的PowerBI...等,而这些服务已经都自动配置并连接好了,可以直接使用。以汽车为例,区块链就像是汽车的引擎,Workbench提供的是汽车的公版,把常用的服务都集成在一起了,直接可以使用。
企业的需要非常严谨,例如用户丢失密钥怎么处理,如何关联区块链上的交易到Hadoop或数据库并快速查询,快速部署与动态调配节点的资源,区块链网路的效能,整合既有的ERP或是CRM系统,隐私与联盟的管理,与既有的系统与解决方案集成,智能合约如何根据外部数据源调用与执行,公有云与私有云的混合部署,如何保证安全性与面对攻击...等。
Azure区块链会利用云计算的优势,补足这些需求让区块链可以在符合企业的解决方案的环境下使用
。例如客户的用户可能同时在美国与非洲,Azure可以把区块链交易节点快速部署到美国或非洲的数据中心或新的区域好快速反应客户需求,企业联盟链可能处理的可能是大量的数据(例如海运联盟一年数亿区块链transaction是很正常的)与价值不菲的交易,Azure可以利用云计算的高可用性,延展性与异地备源协助区块链网路的不中断运作,另外Azure每天处理亿次的攻击,所以都有固定的安全程序在扫描并汇报,Azure区块链服务也会在这些安全机制之下轻松的抵御攻击...另外Azure非常强调PaaS有很多开发组件与服务可以和区块整合,所以我们看到
云计算和企业区块链是有完美结合的机会
。
最近我做的日本铁路(JR),正在政府的协助之下,结合瑞穗银行,Toyata,Nissay保险...等,在组成一个Mobility as a Service的联盟。MaaS是智慧城市的概念,主要是让交通服务像云计算一样,可以按需求使用,同时可以像积木一样根据出行计划搭配。例如到东京三日游,可能会一开始需要从机场搭乘电车到都市,然后转乘巴士,之后到酒店;后续可能有搭乘电车或驾车旅行参观的行程。不同的交通服务,供应商不同,票券不同,购买地点也不同,之后如果电车延误,改票也很麻烦。MaaS可以通过一个应用,购买联盟里的token,选择不同供应商的服务,例如三日电车+一日巴士+一日租车+保险。这些不同的票会被转化为数字资产,产生为给用户独立使用的token方便直接使用不同服务。而保险就是云计算里的SLA。如果电车有延误将可以从应用里领取出租车的代金券。
这些不同套票的整合可以有优惠方案,另外延误给出租车代金券都需要不同供应商的清算,所以这个架构就是使用以太坊的ERC20/ERC721为基础,里面结合了连接到IBM银行云做数字货币交易的功能,票务系统产生像加密猫的ERC721数字票券,与像支付宝二维码扫描进出闸门的功能,结合了DID去中心化的身份系统,与RFC IOT结合到区块链可以打开车门的功能...不同公司的工程师一起合作,整个POC的架构,部署与开发就是3-4周的时间。
另外微软的XBox,背后有很多的游戏发行商与工作室,例如ActiveVision...等,每个用户购买游戏,都要清算费用给发行商,发行商再清算到工作室...里面很多流程一方面数位化不够,没有标准,另外新系统如果提供API,增加供应商会很复杂...以前需要40多天开发者才会看到真正的收入,导入区块链之后现在是几乎即时。其他还有星巴克,LV,小米,Costco,XBox,Maersk马斯基,3M,雀巢...等,各自在不同行业的应用,可能是朔源,供应链金融,loyalty点数...等,每个公司可能又有多个项目,例如新加坡航空目前就有五个区块链项目在执行。时间关系就无法详细说明。
目前多数云厂商选择先提供超级账本的BaaS服务,例如AWS, Oracle等,
微软虽然也会支持其它链,但是是先选择以太坊与Quorum为主。
因为我们看到以太坊的开发人数是其他链综合的十倍以上,如果找相关书籍或者是Github的项目,也几乎都是以太坊的天下。
另外很多企业里面需要有联盟链会员间的token应用,这也是以太坊上目前经过验证与可以快速导入的技术。所以我们是先以以太坊为主。
第二则是托管的服务有多深。
很多云计算厂商的区块链服务,可能在部署的时候让你选择15种以上的VM,不同的储存,网络配置...但是用户无法无法和价值做匹配,例如是可以支持多少TPS,适合多大的联盟,dev/ops与production不同场景该怎么选择,如果底层连接的服务出了问题自己怎么修复...我们有看到非常不同的做法,例如Oracle是以交易数量收费,你完全看不懂底层的节点;AWS则是把所有细节都暴露给用户,有问题用户自己处理,微软则是走中道,提供抽象化的区块链节点概念与商业模式,并由PaaS服务做完全的托管。Azure区块链的这个商业模式就是我这里定的。
这是一个新的市场,可以看到非常不同的玩法。大家都在尝试与了解市场,就像八仙过海,各显神通。
亚太市场,新加坡,韩国,日本与东南亚都很活跃,也多以以太坊为主
,因为他们认为这是他们可以快速领先其他国家的机会,所以监管也相对宽松。政府也很积极主导并参与区块链的项目,例如刚刚提到的日本MaaS,新加坡港口,电力公司也都有和微软合作区块链项目。另外他们也用token做了很多有创意的项目。中国则是偏向自己开发自己的链,希望可以领导标准并建立其生态系统,其他则多以超级账本为主,l例如我周二参加超级账本的会员晚宴,知道光是中国就有50个会员,占了全部会员的20%。
所以不同区域的着重区块链,与成熟度,甚至政府的监管力度都有不同。
我会分享企业使用以太坊建立联盟链的几个有趣的项目,希望可以带给大家一些应用的想法。另外我会做Azure Blockchain Service的实机演示,让大家看看如何十分钟几行代码就可以建立一个token项目,在私有链或公链的环境里面使用。
固定问答环节结束后,参与此次AMA的成员可以自由提问。以下为 Unitimes 从群成员的提问中精选的几个问答:
目前是以太坊Quorum(摩根大通推出的基于以太坊的企业级区块链平台),其他主流包括Corda、超级账本等都在准备中。
目前只有场景实现,商务模式还需要深入。MaaS的特色是订阅商务模式,大批量对不同运输供应商采购,使用订阅服务提供用户。被称为交通界的Netflix。利润可以cover保险的部分没有问题。
这个目前内部有讨论但是没结论 :-)
例如Azure数据中心每年采购的内存与SSD非常大量,其中因为供应商的资讯过程,可能太晚出货,价格和当初谈的不同,或者一下子买太多之后出货跟不上价格降价太多,但是没提前收到资讯...一年损失1.5 billion。目前在导入区块链,预计1%就可以省下非常多钱。一般企业都是改善效率,增加业绩,增加客户满意度这几块着手。规划前的KPI很重要。
我们看到的趋势是企业从以太坊着手,使用POA做POC。但是导入之后,会选择Quorum达到高TPS与private交易。所以我们和Quorum有很深的合作,另外里面的transaction manager是可以更换的,我们会更换为之前可能有同学听过的CoCo。
会的。目前以太坊在企业应用以POA共识为主,节省资源,包括Parity或者Geth。Quorum则支持IBFT与RAFT。前者比较适合互相不大信任的企业联盟,后者速度快。
结合绝对可以,因为通过end point(端点)很容易对接。现在是程度(的问题)。微软会看客户需求决定。目前Office跑在Mac iPhone Android上,游戏和Sony及任天堂合作,也会AWS一起推服务。我周二都参加了Linux基金会的超级账本会员晚宴(微软也加入超级账本)...没有不可能的事情 :-)
对了,大家可能也听过JP Morgan的高盛币,做跨银行与跨境交易。这个会跑在Azure Blockchians,我们有合作关系,他们的以太坊 Quorum 也有很多企业使用。
因为采购资讯是分开的,可能是邮件传真...还有太多供应链的透明的不够,所以可能多买,买不够,或者买贵...这些都导致损失。我们在中国区与日本都预估客户云计算需求很高,但是我们缺SSD无法提供足够的VM满足客户。
有的,申请免费的Azure试用。在Azure里面选择Azure BLockchain Service即可。我周日在以太坊技术开发训练营上会有hands on(亲自演示),使用ABS快速实作以太坊token。不包含发币,发币请自己发布代码的公网。
Token代码是一样的,可以发布到企业的区块链,或者以太坊主网。Token不是只有币。如果我做个token,每个学员发一个。然后给几个地址接受token,这样就变成投票功能了。