微软Azure区块链开发工具包三大功能详解
2018年11月15日,微软宣布了Azure区块链开发工具包,它基于微软的无服务器技术构建,并且利用微软和第三方SaaS,完美集成了区块链。该工具包扩展了微软的区块链开发模板和Azure Blockchain Workbench,其中,后者把 Azure 密钥管理服务、“链下(off-chain)”身份和数据、监控和消息传递API纳入了同一个参考体系结构,用于快速构建基于区块链的应用程序。这些工具已经成为许多组织创新业务方式之旅的第一步。
最初的版本主要实现了三个方面的功能:连接接口、数据和系统集成、部署智能合约和区块链网络。

连接
为国际联盟提供端到端的区块链解决方案,开发人员需要能够使组织、人和设备连接到区块链,并且可以从一组异构的用户界面完成。
举个端到端商品(如可可豆)供应链的例子。
-SMS和语音接口使得非洲的小型农场可以在供应链的第一英里处理和跟踪他们的货物 。
-物联网(IoT) 设备提供传感器数据来追踪货物在运往市场的过程中不同时刻的状况——跟踪存放豆子的集装箱的湿度以及包含这些豆子的最终产品冰淇淋的温度。
-移动客户端 使物流供应商能够在产品从制造商转移到零售商的过程中,利用员工口袋中已有的计算能力,接收并转移产品责任。移动设备也有传感器,如GPS和摄像头,可以补充数据,帮助说明什么时间往哪里发什么货。
-后端系统和数据 是ERP系统的形式,如Dynamics和SAP,用于管理不同参与者的核心流程。通过扩展,这些系统还会变成客户端,与智能合约进行交互,代表组织提供和接收可证明的数据。
-机器人和智能助手 使制造商和零售商可以与供应链交互。这包括使用自然语言与订单智能合约和原产地交互,使用从区块链获得的可证明数据直接代表用户采取行动。
-Web 客户端 让终端消费者可以查询从零售商购买的产品的来源,通常包括其原产地和产品从“农场到餐桌”的整个过程。
Azure 区块链开发工具包 包括针对所有这些场景的样例,包括 入站 和 出站、SMS、IVR、IoT Hub 和 IoT Central、Xamarin iOS 和 Android 移动客户端、通过通用数据服务(CDS)集成 Dynamics、机器人和智能助手(微软小娜、Alexa、谷歌助手)及 Web UX。
集成
企业使用区块链和智能合约促进多方流程。区块链还会向合适的参与者提供那些合约的实时状态和事件,保证透明度。
端到端区块链解决方案需要集成链下的数据、软件和媒体。外部的更新和事件可以触发智能合约动作。智能合约事件和状态变化可以触发“链下”系统和数据的操作和更新。这些外部系统和人工智能还需要从智能合约查询可证明数据来指导行动。
具体来说,有两个领域的集成最需要指导。
文档和媒体:文档和媒体不属于区块链,但业务流程通常包括图像、视频、音频、办公文档、3D 印制机 CAD 文件或其他文件类型。常见的模式是生成一个唯一的媒体散列和描述它的元数据。然后,那些散列会被放在一个公有或私有链上。如果文件的真实性遭到质疑,则可以稍后把“链下”文件重新散列,并把那个散列和存储在区块链上的散列进行比较。如果散列值匹配,则文档是真实的,但是,如果图像的一个像素或文档中的一个字母改变了,则散列将不匹配,显然发生了篡改。
11月15日,微软发布了一组“逻辑应用(Logic Apps)”,它们支持文件散列和与之相关的元数据。其中还包括文件智能合约和在链上存储散列的文件注册中心。已创建的逻辑应用是为添加到最流行的文档和媒体源的文件提供这个功能,包括 Azure Storage、OneDrive、One Drive for Business、SharePoint、Box、Adobe Creative Cloud 和 FTP。null智能合约交互:将区块链从白板上移除并投入生产应用,意味着要处理交易双方现如今如何交互的实际情况。事实是,企业集成一团糟。
微软把这方面数十年的经验带到了区块链。他们的企业系统集成工作始于大约 20 年前推出 BizTalk Server,他们对数据库集成的关注可以追溯到上世纪 90 年代他们开发的开放数据库连接(ODBC)。他们的所有经验都已在 Azure 服务中实现并提供。这包括在逻辑应用程序和流中提供的 200 多个连接器,以及其数据平台的健壮性。null区块链应用程序开发工具包 包括以下领域的 Workbench 集成示例:
遗留应用程序和协议——通过 FTP发送 和 接收 文件、处理逗号分隔的文件 以及 通过电子邮件发送数据;
数据—— SQL、Azure Search、Excel 和 PowerBI;
SaaS—— SharePoint、Dynamics、Outlook 和 Gmail;
Registries—— 一个 加速器,可以生成自定义注册中心和注册项智能合约以适应任何场景。
逻辑应用区块链连接器
11月15日,微软还宣布,他们将发布一组逻辑应用和流连接器,把这些样例扩展到 以太坊、Corda、Bitcoin 等分类账。
R3 产品主管 Mike Ward 表示:
在 R3,我们致力于确保开发者能够快速、安全、轻松地部署 CorDapps。Azure 区块链开发工具包将为我们的企业客户提供与应用程序、软件和人们日常使用的实用程序(如 Outlook、Alexa、SMS 和 Web UX)集成的工具。区块链正走出实验室,进入日常商业应用领域。
现在,以太坊区块链连接器已经可用,用户可以部署合约、调用合约操作、读取合约状态并根据分类账中的事件触发其他逻辑应用。
部署
随着区块链技术在企业软件开发中日益成为主流,组织希望在如何为智能合约和区块链项目提供 DevOps 方面获得指导。
以下是一些常见的问题:
我的业务逻辑和该逻辑的数据模式反映在智能合约中。智能合约是用我不太熟悉的语言编写的,比如以太坊的 Solidity、Corda 的 Kotlin 或者 Hyperledger Fabric 的 Go。我该用什么工具来开发它们?
我如何进行智能合约的单元测试和调试?
许多区块链场景反映了多方交易和业务工作流。这些工作流包括以特定顺序发生的来自多方的签名交易。我如何考虑那个场景中测试环境里的数据呢?
智能合约被部署到区块链,它是不可变的。我要如何考虑基础设施即代码、本地开发 / 测试、合约升级,等等?
区块链是一个在联盟中的多个组织间共享数据的技术,它对全球多方环境中的源代码控制、构建和发布管道有什么影响?
虽然这种方法有一些细微的差别,但好消息是,就像其他类型的解决方案开发一样,这个模型在 DevOps 模型中很容易处理。同一天,微软发布了白皮书《区块链智能合约 DevOps》。
Truffle 创始人 Tim Coulter 表示:
我们很高兴能与微软合作,为区块链工程师创建规范的 DevOps 体验。我们的白皮书“区块链智能合约 DevOps”做了详细介绍,并通过示例说明了如何在联盟环境中开发基于 CI/CD 的区块链应用程序。
一份实现指南对白皮书进行了补充,可以通过Azure区块链开发工具包获得,它展示了如何使用 Visual Studio Code、GitHub、Azure DevOps 和 Truffle 的 OSS 为智能合约和基础设施及代码实现 CI/CD。
作者:dkadll
千氪链接:https://www.kg.com/article/514795314755014656
微软Azure区块链开发工具包三大功能详解的更多相关文章
- 002/区块链核心概念与原理详解(Mooc)
1.课程介绍 (一).区块链前世今生 密码朋克--神秘组织(邮件组) 2.区块链核心概念与原理 (一)比特币是数字货币 为什么叫区块链? 因为比特币系统里面的数据是一个个的区块来存储,并且通过hash ...
- HyperLedger Fabric 1.4 区块链开发平台(4.1)
目前区块链开发平台分“公有链平台”和“联盟链系统”两类,“公有链平台”主要以以太坊为主的平台,可以在该类平台上进行代币的发行和根据各种模块搭建应用:“联盟链系统”主要以超级账本为主的开源系统,该类开源 ...
- 转:区块链开发(一)搭建基于以太坊go-ethereum的私有链环境
区块链开发(一)搭建基于以太坊go-ethereum的私有链环境 wo541075754 · 2016-11-07 13:00:03 · 3730 次点击 · 预计阅读时间 3 分钟 · 约1小时前 ...
- golang区块链开发的视频教程推荐
目前网上关于golang区块链开发的资源很少,以太坊智能合约相关的课程倒是很多,可能是由于前者的难度比后者难度大,课程开发需要投入更多精力.搜了一圈之后没结果,我就直接去之前没覆盖的视频网站找资源,包 ...
- 区块链开发(七)truffle使用入门汇总
截止上篇博客,以太坊区块链开发的环境和框架基本上搭建完毕.这一篇博客重点梳理一下基本的流程和操作演示. 前奏 基于前面的安装配置,现在重新梳理一遍,以前博客讲到的就在这里一笔带过. (1)创建一个工作 ...
- FISCO BCOS WorkShop | 区块链开发特训营,开课啦!
FISCO BCOS是完全开源的联盟区块链底层技术平台,由金融区块链合作联盟(深圳)(简称金链盟)成立开源工作组通力打造.开源工作组成员包括博彦科技.华为.深证通.神州数码.四方精创.腾讯.微众银行. ...
- IE8"开发人员工具"使用详解下(浏览器模式、文本模式、JavaScript调试、探查器)
来源: http://www.cnblogs.com/JustinYoung/archive/2009/04/03/kaifarenyuangongju2.html 在上一篇文章IE8“开发人员工具” ...
- IE8“开发人员工具”使用详解上(各级菜单详解)
来源: http://www.cnblogs.com/JustinYoung/archive/2009/03/24/kaifarenyuangongju.html IE8“开发人员工具”使用详解上(各 ...
- .NET ORM框架 SqlSuagr4.0 功能详解与实践【开源】
SqlSugar 4.0 ORM框架的优势 为了未来能够更好的支持多库分布式的存储,并行计算等功能,将SqlSugar3.x全部重写,现有的架构可以轻松扩展多库. 源码下载: https://gith ...
随机推荐
- Mac git 的使用
1. mac 安装git brew install git 2.初使化 git config --global user.name "mygit" git config --glo ...
- ASP.NET 5已终结,迎来ASP.NET Core 1.0和.NET Core 1.0 转
作者:yourber 命名是非常困难的事情,微软这次为了和ASP.NET4.6做区分,采用了全新的命名方式ASP.NET Core 1.0,它是一个全新的框架. ASP.NET 在过去的 15 年里是 ...
- 详解UIView的frame、bounds和center属性
From: http://ios.wpjam.com/2011/08/29/uiview-frame-bounds-center/ 1.概要 翻开ios官方开发文档,赫然发现上面对这三个属性的解释如下 ...
- Ubuntu免安装配置MySQL
1.下载mysql http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.21-linux-glibc2.5-x86_64.tar.gz 2.解压 ta ...
- python核心编程学习(第三版)之网络编程
套接字 套接字是计算机网络数据结构.在任何类型的通信开始之前,网络应用程序必须创建套接字. 有两种类型的套接字,基于文件和面向网络的. unix套接字是第一个家族,AF_UNIX代表地址家族,缩写AF ...
- springBoot与多数据源的配置
http://www.cnblogs.com/shenlanzhizun/p/5846475.html 最近有点忙,更新有点慢.今天进来说说一说springBoot中如何配置多数据源. 第一,新建一个 ...
- AutoCAD如何又快又好标注直径
如下图所示,想要标注一条直径.先选择快速标注 鼠标单击左右两侧线条(变成虚线),然后按回车,就可以往下拖了.拖完了就是一条直径的标注. 如果想要修改为自己的尺寸,则在文字替换中加上前缀%%c即 ...
- HDU 3466 01背包变形
给出物品数量N和总钱数M 对于N个物品.每一个物品有其花费p[i], 特殊值q[i],价值v[i] q[i] 表示当手中剩余的钱数大于q[i]时,才干够买这个物品 首先对N个物品进行 q-p的排序,表 ...
- eclipse高速查找一个变量、方法或者类被引用的地方
近期不停debug,拿到一个变量之后总是要先概览一下才好下手,之前一直用Ctrl+F来做,太麻烦. 今天查了下eclipse使用,发现有快捷键,用法: 先双击要查看的变量.方法或者类,使之被选中,然后 ...
- dynamic_cast<const ObjectList&>(msg);
说简单的就是C里面的强制类型转换,只不过C++里面为了类型安全而这么做的.主要用于 基类与继承类之间. C写多了,类型一般都强转,特别是指针.int * a;void * b = (void*)a;c ...