写点什么

微软发布 Azure 区块链开发工具包

Marc Mercuri

  • 2018-11-20
  • 本文字数:3518 字

    阅读完需:约 12 分钟

微软发布Azure区块链开发工具包

2018 年 11 月 15 日,微软宣布了 Azure 区块链开发工具包,它基于微软的无服务器技术构建,并且利用微软和第三方 SaaS,完美集成了区块链。最初的版本主要实现了三个方面的功能:连接接口、数据和系统集成、部署智能合约和区块链网络。

正文

在过去的四十年里,微软通过开发工具、企业集成、DevOps、PaaS 和 SaaS 降低了软件开发的门槛。如今,无服务器产品,从功能和逻辑应用到 Azure DevOps 再到 IoT Central,消除了云端开发的阻力。


2018 年 11 月 15 日,微软宣布了Azure区块链开发工具包,它基于微软的无服务器技术构建,并且利用微软和第三方 SaaS,完美集成了区块链。


该工具包扩展了微软的区块链开发模板和Azure Blockchain Workbench,其中,后者把 Azure 密钥管理服务、“链下(off-chain)”身份和数据、监控和消息传递 API 纳入了同一个参考体系结构,用于快速构建基于区块链的应用程序。


这些工具已经成为许多组织创新业务方式之旅的第一步。构建的应用已涵盖从尼日利亚大众化供应链融资英国安全食物供应的一切,但随着跨场景模式的出现,微软发现了帮助开发人员走得更远、更快的新方法。


最初的版本主要实现了三个方面的功能:连接接口、数据和系统集成、部署智能合约和区块链网络。

连接

为国际联盟提供端到端的区块链解决方案,开发人员需要能够使组织、人和设备连接到区块链,并且可以从一组异构的用户界面完成。


举个端到端商品(如可可豆)供应链的例子。


  • SMS 和语音接口 使得非洲的小型农场可以在供应链的第一英里处理和跟踪他们的货物

  • 物联网(IoT) 设备提供传感器数据来追踪货物在运往市场的过程中不同时刻的状况——跟踪存放豆子的集装箱的湿度以及包含这些豆子的最终产品冰淇淋的温度。

  • 移动客户端 使物流供应商能够在产品从制造商转移到零售商的过程中,利用员工口袋中已有的计算能力,接收并转移产品责任。移动设备也有传感器,如 GPS 和摄像头,可以补充数据,帮助说明什么时间往哪里发什么货。

  • 后端系统和数据 是 ERP 系统的形式,如 Dynamics 和 SAP,用于管理不同参与者的核心流程。通过扩展,这些系统还会变成客户端,与智能合约进行交互,代表组织提供和接收可证明的数据。

  • 机器人和智能助手 使制造商和零售商可以与供应链交互。这包括使用自然语言与订单智能合约和原产地交互,使用从区块链获得的可证明数据直接代表用户采取行动。

  • Web 客户端 让终端消费者可以查询从零售商购买的产品的来源,通常包括其原产地和产品从“农场到餐桌”的整个过程。


Azure区块链开发工具包包括针对所有这些场景的样例,包括入站出站、SMS、IVRIoT HubIoT CentralXamarin iOS和Android移动客户端通过通用数据服务(CDS)集成Dynamics、机器人和智能助手(微软小娜Alexa谷歌助手)及Web UX

集成

企业使用区块链和智能合约促进多方流程。区块链还会向合适的参与者提供那些合约的实时状态和事件,保证透明度。


端到端区块链解决方案需要集成链下的数据、软件和媒体。外部的更新和事件可以触发智能合约动作。智能合约事件和状态变化可以触发“链下”系统和数据的操作和更新。这些外部系统和人工智能还需要从智能合约查询可证明数据来指导行动。


具体来说,有两个领域的集成最需要指导。


文档和媒体:文档和媒体不属于区块链,但业务流程通常包括图像、视频、音频、办公文档、3D 印制机 CAD 文件或其他文件类型。


常见的模式是生成一个唯一的媒体散列和描述它的元数据。然后,那些散列会被放在一个公有或私有链上。如果文件的真实性遭到质疑,则可以稍后把“链下”文件重新散列,并把那个散列和存储在区块链上的散列进行比较。如果散列值匹配,则文档是真实的,但是,如果图像的一个像素或文档中的一个字母改变了,则散列将不匹配,显然发生了篡改。


11 月 15 日,微软发布了一组“逻辑应用(Logic Apps)”,它们支持文件散列和与之相关的元数据。其中还包括文件智能合约和在链上存储散列的文件注册中心。


已创建的逻辑应用是为添加到最流行的文档和媒体源的文件提供这个功能,包括Azure StorageOneDriveOne Drive for BusinessSharePointBoxAdobe Creative CloudFTP


null


智能合约交互:将区块链从白板上移除并投入生产应用,意味着要处理交易双方现如今如何交互的实际情况。事实是,企业集成一团糟。


微软把这方面数十年的经验带到了区块链。他们的企业系统集成工作始于大约 20 年前推出 BizTalk Server,他们对数据库集成的关注可以追溯到上世纪 90 年代他们开发的开放数据库连接(ODBC)。他们的所有经验都已在 Azure 服务中实现并提供。这包括在逻辑应用程序和流中提供的 200 多个连接器,以及其数据平台的健壮性。


null


区块链应用程序开发工具包包括以下领域的 Workbench 集成示例:


逻辑应用区块链连接器

11 月 15 日,微软还宣布,他们将发布一组逻辑应用和流连接器,把这些样例扩展到以太坊Corda、Bitcoin 等分类账。


R3 产品主管 Mike Ward 表示:


在 R3,我们致力于确保开发者能够快速、安全、轻松地部署 CorDapps。Azure 区块链开发工具包将为我们的企业客户提供与应用程序、软件和人们日常使用的实用程序(如 Outlook、Alexa、SMS 和 Web UX)集成的工具。区块链正走出实验室,进入日常商业应用领域。


现在,以太坊区块链连接器已经可用,用户可以部署合约、调用合约操作、读取合约状态并根据分类账中的事件触发其他逻辑应用。


null

部署

随着区块链技术在企业软件开发中日益成为主流,组织希望在如何为智能合约和区块链项目提供 DevOps 方面获得指导。


以下是一些常见的问题:


  • 我的业务逻辑和该逻辑的数据模式反映在智能合约中。智能合约是用我不太熟悉的语言编写的,比如以太坊的Solidity、Corda 的Kotlin或者 Hyperledger Fabric 的Go。我该用什么工具来开发它们?

  • 我如何进行智能合约的单元测试和调试?

  • 许多区块链场景反映了多方交易和业务工作流。这些工作流包括以特定顺序发生的来自多方的签名交易。我如何考虑那个场景中测试环境里的数据呢?

  • 智能合约被部署到区块链,它是不可变的。我要如何考虑基础设施即代码、本地开发/测试、合约升级,等等?

  • 区块链是一个在联盟中的多个组织间共享数据的技术,它对全球多方环境中的源代码控制、构建和发布管道有什么影响?


虽然这种方法有一些细微的差别,但好消息是,就像其他类型的解决方案开发一样,这个模型在 DevOps 模型中很容易处理。


null


同一天,微软发布了白皮书《区块链智能合约DevOps》。


Truffle 创始人 Tim Coulter 表示:


我们很高兴能与微软合作,为区块链工程师创建规范的 DevOps 体验。我们的白皮书“区块链智能合约 DevOps”做了详细介绍,并通过示例说明了如何在联盟环境中开发基于 CI/CD 的区块链应用程序。


一份实现指南对白皮书进行了补充,可以通过 Azure 区块链开发工具包获得,它展示了如何使用 Visual Studio Code、GitHub、Azure DevOps 和Truffle的 OSS 为智能合约和基础设施及代码实现 CI/CD。

一个面向区块链应用程序开发的优秀平台

Azure区块链开发工具包是微软为实现每个人都可以负担得起的端到端区块链应用程序快速开发的又一个步骤。它以微软的区块链投资为基础构建,连接了 Azure 和更广泛的微软云提供的计算、数据、消息传递和集成服务,为开发人员实现他们理想中的画面提供了完善的调色板。


逻辑应用和流提供了一个包含 200 多个连接器的图形设计环境,极大地简化了端到端区块链解决方案的开发,而 Azure Functions 使自定义代码得以快速集成。


无服务器方法还可以降低成本和管理开销。Azure 区块链开发工具包不需要管理 VM,内置可伸缩性,定价模型平易近人,从爱好者到 ISV 再到企业,每个开发人员都可以使用它。


解决方案是使用在线的可视化工作流设计器和Visual Studio Code编写的,后者可以免费下载,提供了 Windows、Mac 和 Linux 上的集成开发环境。


最终的应用程序将运行在一个比其他大型提供商的云计算性能更高的网络上,并使用 Azure 活动目录在参与者之间实现联合身份标识。借助 Azure,这些应用程序可以部署到比任何其他云提供商都多的区域,并从更多的认证中获益。


要了解更多关于如何使用这些示例来构建和扩展区块链应用程序的信息,可以观看微软在第9频道提供的一系列视频。你还可以关注@MSFTBlockchain,了解关于 Azure 区块链的最新升级。


查看英文原文:https://azure.microsoft.com/en-us/blog/introducing-the-azure-blockchain-development-kit/


2018-11-20 09:003076
用户头像

发布了 1008 篇内容, 共 438.5 次阅读, 收获喜欢 346 次。

关注

评论

发布
暂无评论
发现更多内容

企业公众号文章写作方向:如何写出读者认可的优质内容

石头IT视角

C#/VB.NET:从 PDF 文档中提取所有表格

Geek_249eec

C# PDF 表格 VB.NET

电商库存系统的防超卖和高并发扣减方案

京东科技开发者

技术 电商 电商系统

dvwa 通关记录1 - 暴力破解 Brute Force

Todd-Lee

渗透测试 DVWA

如何看待腾讯云数据库负责人林晓斌借了一个亿炒股?

雨果

DaaS数据即服务

使用JDK的同步容器时,应该避免那些坑

华为云开发者联盟

后端 开发 华为云

【LeetCode】设计食物评分系统Java题解

Albert

LeetCode 8月月更

面试突击70:什么是粘包和半包?怎么解决?

王磊

Java 面试题

小程序容器+自定义插件,可实现混合App快速开发

Speedoooo

小程序 插件 APP开发

以消费场景为驱动的CMDB要怎么建?

鲸品堂

升哲科技携全域数字化方案亮相2022全球数字经济大会

SENSORO

人工智能 大数据 物联网 数字经济

经验共享|在线文档协作:企业文档处理的最佳选择

Baklib

Java中的引用

flow

签约计划第三季

让你10分钟就能看懂Linux文件权限(超级详细、超级简单!!!)

Albert Edison

Linux centos linux 文件权限控制 8月月更

SENSORO成长伙伴计划 x 怀柔黑马科技加速实验室丨以品牌力打造To B企业影响力

SENSORO

品牌 产业生态 创新生态

开源一夏 | 手撸代码,Redis发布订阅机制实现

知识浅谈

开源 8月月更

Godaddy域名解析速度慢问题以及如何使用DNSPod解析解决

CtrlX

Hexo 域名解析 DNS服务器 域名配置 8月月更

突破边界,华为存储的破壁之旅

脑极体

关于解决Hexo常见报错的处理以及上传时出现errorSpawn错误的详细说明

CtrlX

Hexo Blog 报错 博客搭建 8月月更

如何给 UE4 场景添加游戏角色

HelloWorld杰少

c++ 游戏 UE5 8月月更

不要再使用MySQL online DDL了

Qunar技术沙龙

彻底透彻Docker常用网络模式及应用场景

知识浅谈

开源 8月月更

leetcode 204. Count Primes 计数质数 (Easy)

okokabcd

LeetCode 算法与数据结构

有点奇怪!访问目的网址,主机能容器却不行

华为云开发者联盟

云计算 主机 云网络 后盾

使用常见问题解答软件的好处有哪些?

Geek_da0866

空间数据库开源路,超图+openGauss风起禹贡

这不科技

opengauss

微软校园大使喊你来秋招啦!

DawnMagnet

SRv6 L3VPN的工作原理

穿过生命散发芬芳

8月月更 SRv6

Database Plus 的云上之旅:SphereEx 正式开源 ShardingSphere on Cloud 解决方案

SphereEx

数据库 ShardingSphere SphereEx #开源

为你的“架构”安排定期体检吧!

凌晞

构架 软件架构治理 架构治理

C++内存分区模型分析与实例以及扩展

CtrlX

c++ 前端 程序员进阶 后端、 8月月更

微软发布Azure区块链开发工具包_区块链_InfoQ精选文章