Tendermint

Liquid/Elements侧链RPC API开发中文手册

∥☆過路亽.° 提交于 2019-11-28 22:00:21
Elements侧链RPC API文档中文版由汇智网翻译整理,访问地址: http://cw.hubwiz.com/card/c/elements-rpc-api/ 。 Elements侧链包含很多与Bitcoin Core一样的RPC API。本文档仅描述Elements新增的全新的RPC API,相同的API请参考Bitcoin Core的文档。 在命令行可以通过 help 子命令获取Bitcoin Core或者Elements的RPC的帮助信息,例如: ~$ elements-cli help getblockchaininfo ~$ bitcoin-cli help getblockchaininfo 出块API combineblocksigs - 合并区块签名 getnewblockhex - 获取新区块 testproposedblock - 测试提议区块 裸交易API blindrawtransaction - 盲化裸交易 createrawtransaction - 创建裸交易 decoderawtransaction - 解码裸交易 rawblindrawtransaction - 原始盲化裸交易 sendrawtransaction - 发送裸交易 如果希望快速掌握区块链应用的开发,推荐汇智网的 区块链应用开发系列教程 , 内容涵盖比特币、以太坊、eos

Tendermint区块链RPC API开发手册

 ̄綄美尐妖づ 提交于 2019-11-28 19:29:04
Tendermint RPC API文档中文版由汇智网翻译整理,访问地址: http://cw.hubwiz.com/card/c/tendermint-rpc-api/ 。 配置 :可以使用配置文件 $TMHOME/config/config.toml 或使用命令行参数 --rpc.X 来调整terdernmint节点的rpc功能。 监听地址 :默认的rpc监听地址是 tcp://0.0.0.0:26657 ,要设置为其他地址,可以修改 laddr 配置参数。 CORS :要启用CORS,可以配置以下参数: cors_allowed_origins cors_allowed_methods cors_allowed_headers 字符串参数 :RPC API的调用参数如果要求是字符串或字节数组,那么可以传入带引号的字符串,例如 "abc" 或者0x前缀的16进制表示,例如 0x616263 。 POST请求 :JSONRPC请求可以采用HTTP协议的POST方式发送到RPC根访问点,即: http://localhost:26657/ 。 WebSocket请求 :JSONRPC请求可以使用websocket通道。Tendermint节点的websocket访问端结点是 /websocket ,例如: localhost:26657/websocket 。异步RPC请求例如

USDT PHP开发包OmniTool简介

馋奶兔 提交于 2019-11-28 18:48:44
OmniTool开发包适用于为PHP应用快速增加对Omni Layer/USDT数字资产的支持能力,即支持使用自有Omni Layer节点的应用场景,也支持基于第三方API服务和离线裸交易的轻量级部署场景。下载地址: omni/usdt php开发包 。 1、OmniTool开发包简介 OmniTool开发包主要包含以下特性: 完善的Omni Layer节点RPC封装 支持利用自有节点或第三方服务获取指定地址的utxo集合 支持离线生成omni代币转账裸交易 支持利用自有节点或第三方服务广播裸交易 OmniTool支持本地部署的Omnicored节点,也支持blockchain.info、btc.com等提供的开放API,要增加对其他第三方服务的支持也非常简单,只需要参考代码实现如下接口: UtxoCollectorInterface:utxo收集器 UtxoSelectorInterface:utxo筛选器 BroadcasterInterface:裸交易广播器 ExplorerInterface:数据查询接口 OmniTool软件包运行在**Php 7.1+**环境下,当前版本1.0.0,主要类/接口及关系如下图所示: OmniTool的主要代码文件清单参见: http://sc.hubwiz.com/codebag/omni-php-lib/ 2、RpcClient类使用说明

区块链Oracle预言机实现教程【含代码】

两盒软妹~` 提交于 2019-11-28 18:28:38
区块链本身是封闭的。区块链的确定性模型基于这样一个事实:在交易执行时区块链不能执行任何来自外部的逻辑,所有的外部数据只能通过交易进入到系统中。 预言机/Oracle 就是通过交易为智能合约提供可信数据的服务。Oracle虽然听起来神秘,但实现并不复杂,在这篇文章里,我们将介绍预言机的作用以及运作原理,并通过天气数据预言机WeatherOracle的完整实现过程,来帮助你快速掌握区块链预言机/Oracle的精髓。 1、为什么智能合约需要预言机/Oracle? 在智能合约中执行的逻辑不可以执行区块链之外的任何操作,例如它不可以访问互联网上的web服务。外部数据进入智能合约的唯一方法是将其置入一个交易中,通过向系统发送一个新的交易来触发区块链状态的更新。 试着考虑一下,如果智能合约在执行时可以访问外部的一个API来获取数据,会出现什么情况? 如果今天部署这个合约,那么API可能会返回如下的数据: { "foo": "bar" } 但是明天再部署时,API可能就会返回新的数据,例如: { "foo": "baz" } 那么可以想像,一个月以后如果有人进行以太坊区块链的同步,这个智能合约就会被执行,但是API的响应数据是和一个月之前不同的,这就会导致新同步的 区块链状态不同于之前已经存在的节点状态。 这就不再是完全自确定的区块链了。经历相同的同步过程,我的区块链和你的区块链却不一样!

理解eos区块链的eosio.token合约

…衆ロ難τιáo~ 提交于 2019-11-28 18:27:45
我必须承认,学习eosio一直没有闲庭信步的感觉,我可以看到为什么很多人说它有一个陡峭的学习曲线。随着eosio软件继续经历大量快速发展,文档数量有限,很少有工作实例可供参考。我已经被困了好几次,也希望帮助改善下一个开发人员的体验。在本文中,我将通过将其分解为单独的部分来讨论 eosio.token 合约。 什么是eosio.token合约? eosio.token合约允许创建许多不同的代币。这使任何人都能够创建和发送代币。每个代币必须由 issuer 帐户发行。由于帐户可以包含多方,因此你可以使用具有所有者和活动权限的普通帐户或自定义配置帐户来创建和管理代币。每个代币都是 asset 类型,如下所示: 1000000000.0000 SYS 1.0000 SYMBOL 0.10 SYS asset 类型是一个数字(如果我没记错的话可以达到18位小数)和一个可以在1-7个大写字母之间的符号。此合约有三个操作可用于与之交互。它们是:创建,发布和转账。 创建用于定义新代币的特征。这包括代币 asset 符号,最大供应量以及允许发出代币的帐户。创建还会将新代币配置保留在区块链上。这意味着新代币配置的存储必须由某人放置。正如你稍后将看到的,部署此合约的帐户(在我们的案例中为'eosio.token')也将支付代币配置存储。 发布用于增加代币的有效供应。可以持续发出代币,直到达到最大供应量

Hyperledger Fabric能否大规模运行?

家住魔仙堡 提交于 2019-11-27 12:57:01
我很高兴回答这个问题!简短的回答是:是的,确实如此! 我的疑问 我对大规模Hyperledger Fabric(Fabric)的性能提出了很多疑问。很多时候,人们已经完成了一些(或阅读/听说过)性能测试(比如在他们的笔记本电脑或早期版本的Fabric上使用Caliper的早期版本),并且感觉性能并不是那么好。 Fabric维护人员很容易承认,在Hyperledger Fabric v1.1.0发布之前,性能并不高。Fabric的维护者在Fabric v0.6已经认识到,我们需要采用新的架构,使平台能够实现许多潜在的企业区块链用例所要求的性能特征。我们对v1.0.0的目标是为用户提供新架构的功能版本。我们不想陷入过早的优化。从那时起,我们在性能改进方面投入了大量资金,从v1.1.0版本开始,一直持续到今天。 在我主持的IBM博客上,我发起了一系列帖子,旨在提供有关Hyperledger Fabric的性能和规模的信息。我关于 这个主题 的最初博客文章开始概述了一些改进Hyperledger Fabric性能的最佳实践,这些实践是我从Fabric认可策略,负载平衡和orderer配置的实验中收集到的。 我最近的帖子 解决了Fabric对扩展其通道架构能力的一种常见误解。 Fabric通道架构是否能够大规模运行? 那么,Hyperledger

如何将Hyperledger Fabric PoC应用程序部署到云端

∥☆過路亽.° 提交于 2019-11-27 12:56:36
我假设你已经学习了如何构建Hyperledger Fabric区块链网络,并且你还学习了如何在Node.js或Fabric支持的其他语言中创建链代码,并且你已经学会了如何在这样的基础上开发Web应用程序在网络上。否则建议你先看看 使用Hyperledger Fabric构建区块链PoC应用程序 。 但是,存在一个约束,它们位于你的Ubuntu OS或虚拟机中。利益相关者和其他目标方无法尝试或使用它。在这种情况下,除了证明你有这样的技能之外,它们不会产生价值。因此,我们需要找到或购买一些服务器并在这些服务器上部署网络以形成区块链网络并运行其应用程序或从云服务提供商租用一些服务器并将Fabric区块链部署到这些服务器上。第二种选择将更加经济和有效。那么,让我们选择这个选项试试。 要做到这一点,我们应该采取以下过程: 流程A,确定符合你需求的云服务提供商。亚马逊AWS是另一种选择,Digital Ocean(DO)。并注册一个。 流程B,设置节点/服务器。为你的Droplet(服务器)选择操作系统及其配置。我建议Ubuntu 16.04 LTS至少有4GB的内存,但更需要8GB的RAM。并有三个(服务器),以便我们至少有3个最小数量的节点。 流程C,创建用户帐户。登录Digital Ocean时使用“控制台”选项以root身份登录并创建一些用户帐户。 如何访问你的Droplet

Hyperledger Fabric Node.js开发中如何使用日志

吃可爱长大的小学妹 提交于 2019-11-27 12:56:24
Hyperledger Fabric Node.js开发中如何使用日志?本教程就来演示下如何使用hyperledgefabric node.js客户端日志记录功能。 概述 hyperledger fabric node.js客户端日志记录使用node.js winston 开发包。当node.js应用程序首次加载hyperledger结构包时,日志记录被初始化。所有HyperledgeFabric客户端对象都将使用相同的设置(peer、orderer、ChannelEventHub)。 const Client = require('fabric-client'); // the logging is now set 有四个级别的日志记录: info,信息。 warn,警告。 error,错误。 debug,调试。 默认情况下, info 、 warn 和 error 条目将发送到控制台 console ,不会记录 debug 。 如何更改日志记录 HyperledgeFabric客户端的日志记录由配置设置 hfc-logging 和环境设置 HFC_LOGGING 控制。 将 default.json 配置文件中的日志设置改为一个条目: "hfc-logging": "{'debug':'console', 'info':'console'}" 使用环境设置覆盖修改配置:

区块链教程大全:比特币、以太坊、EOS、Hyperledger Fabric、Tendermint

馋奶兔 提交于 2019-11-27 00:00:04
分享一些比特币、以太坊、EOS、Hyperledger Fabric、Tendermint等区块链相关的交互式在线编程实战教程: java比特币开发教程 ,本课程面向初学者,内容即涵盖比特币的核心概念,例如区块链存储、去中心化共识机制、密钥与脚本、交易与UTXO等,同时也详细讲解如何在Java代码中集成比特币支持功能,例如创建地址、管理钱包、构造裸交易等,是Java工程师不可多得的比特币开发学习课程。 php比特币开发教程 ,本课程面向初学者,内容即涵盖比特币的核心概念,例如区块链存储、去中心化共识机制、密钥与脚本、交易与UTXO等,同时也详细讲解如何在Php代码中集成比特币支持功能,例如创建地址、管理钱包、构造裸交易等,是Php工程师不可多得的比特币开发学习课程。 c#比特币开发教程 ,本课程面向初学者,内容即涵盖比特币的核心概念,例如区块链存储、去中心化共识机制、密钥与脚本、交易与UTXO等,同时也详细讲解如何在C#代码中集成比特币支持功能,例如创建地址、管理钱包、构造裸交易等,是C#工程师不可多得的比特币开发学习课程。 java以太坊开发教程 ,主要是针对java和android程序员进行区块链以太坊开发的web3j详解。 python以太坊 ,主要是针对python工程师使用web3.py进行区块链以太坊开发的详解。 php以太坊 ,主要是介绍使用php进行智能合约开发交互