Tendermint

Hyperledger Fabric的容灾备份及恢复方法简介

拜拜、爱过 提交于 2019-12-09 14:26:55
Hyperledger Fabric日益增强的潜力使得许多企业正在尝试使用fabric。当使用涉及更多peers和orderers的大型网络时,维护超级账本数据的备份非常重要。如果网络出现故障,这将有所帮助。它还有助于开发阶段,因为可以使用备份数据来执行将来的测试。 在本文中,我将介绍如何进行备份以及如何在Hyperledger Fabric中使用备份。 超级账本分类帐数据在容器中的位置 通常,peer中的分类帐数据存储在 /var/hyperledger/production/location 中。在orderer中,它位于 /var/hyperledger/production/orderer 中。我们需要备份这些文件夹。 采取备份的步骤 第1步: 要进行备份,必须创建空间来存储数据。当网络在Docker容器内运行时,我们将使用卷来实现这一点。我将使用一个基本网络与一个peer,一个orderer,一个ca和一个CouchDB。由于我们有一个peer和一个orderer,我们需要创建两个卷,比如 backup_orderer 和 backup_peer 。我们需要在 docker-compose.yml 文件中将这些指定为卷,如下所示。 networks: basic: volumes: backup_peer: backup_orderer: 这将在启动网络时创建两个卷。

How to create a Tendermint local network with same ip

谁都会走 提交于 2019-12-08 18:53:29
How to set the config.toml file when establish a local Tendermint network with the same ip address. Do I need to set both 'seeds' and 'persistent_peers' for each node? node1 congfig.toml proxy_app = "tcp://127.0.0.1:46658" moniker = "pc-4e76-2" fast_sync = false db_backend = "leveldb" db_path = "data" log_level = "main:info,state:info,*:error" genesis_file = "config/genesis.json" priv_validator_file = "config/priv_validator.json" node_key_file = "config/node_key.json" abci = "socket" prof_laddr = "" filter_peers = false [rpc] laddr = "tcp://0.0.0.0:46657" grpc_laddr = "" unsafe = false [p2p]

How to create a Tendermint local network with same ip

不问归期 提交于 2019-12-08 04:08:52
问题 How to set the config.toml file when establish a local Tendermint network with the same ip address. Do I need to set both 'seeds' and 'persistent_peers' for each node? node1 congfig.toml proxy_app = "tcp://127.0.0.1:46658" moniker = "pc-4e76-2" fast_sync = false db_backend = "leveldb" db_path = "data" log_level = "main:info,state:info,*:error" genesis_file = "config/genesis.json" priv_validator_file = "config/priv_validator.json" node_key_file = "config/node_key.json" abci = "socket" prof

以太坊和Metamask开发web应用不需要再使用密码

孤街浪徒 提交于 2019-12-06 13:45:47
我在ConsenSys为各种客户构建了大量的概念证明,通常他们想要利用以太坊区块链来解决某些业务用例。奇怪的是,这些系统通常设计有标准的网络登录(即用户名和密码)。我总是问自己为什么我还在这样做设计,毕竟,这是今天以太网目前可以解决每个烦人的Web应用程序的一个方面。所以我决定停下脚步,设计一下这个解决方案。 JSON Web token 登录标准Web系统(和/或使用其API)的一种非常流行的方法是将密码(经过哈希的客户端)提交给认证端点并接收token作为回报。这通常称为JSON Web Token,通常在一段有限的时间内(几分钟到几天)有效。这是一个关于标准实现的很好的教程。 JSON Web Token很好,我开始认为在区块链上验证自己很容易。事实上,当你使用以太坊时,你需要不断地去改进。 如果你将以太网地址(这只是公钥的sha3哈希)视为网站上的帐户,则可以通过使用私钥对一段数据进行签名来证明你拥有该帐户,这非常容易。此数据是任意的,可以是网站API提供的任意随机字符串。因此,我们可以使用地址作为用户名并绕过密码的需要。事实上,我们甚至不需要使用区块链来做到这一点。 这是使用Express的样子: 首先,我们需要使用私钥进行椭圆曲线签名: var ethUtil = require(‘ethereumjs-util’); // >=5.1.1 var data = ‘i

如何保证以太坊DApp本地存储localStorage的安全性?

做~自己de王妃 提交于 2019-12-05 08:43:18
部署去中心化应用程序dapp会引入一些有趣的安全性考虑因素,这些因素可能不会出现在更传统的开发中。我们如何保证dApp本地存储的安全性? 提出这个问题的原因是我们在使用Colony dApp时遇到的一个重要障碍,那就是如何应对在使用IPFS或Swarm等分布式存储系统保持本地存储的dApp数据安全挑战。 在本文中,我将从dApp开发人员的角度来看一下这个问题,然后研究一些可能的解决方案。 共享本地存储localStorage的问题 IPFS运行本地节点 node ,它与Web服务器捆绑在一起。捆绑的Web服务器使节点可以轻松地相互连接并共享网络中其他位置可能需要的数据。 作为一个去中心化的应用程序构建器,你将依赖该Web服务器将你的内容从一个节点推送到另一个节点,从而使其可以根据需要立即供最终用户使用。 假设你正在完全去中心化 full decentralized 并且正在避免使用DNS或Web代理等任何内容来跟踪你的内容在网络上的位置,那么访问dApp的方式通常是通过浏览器使用其查询本地节点哈希,如: http://localhost:8080/QmcefGgoVLMEPyVKZU48XB91T3zmtpLowbMK6TBM1q4Dw/ 现在,假设在正常使用期间,你的应用程序将在浏览器的localStorage保存数据:可能需要传递一些数据,或者保持本地用户交互的队列

从2018年以太坊统计数据看区块链发展趋势

我们两清 提交于 2019-12-05 07:16:40
在2018年结束时,我们处于长期“加密货币冬天”的尾声,2017年末至今的市场波动已经引起了区块链行业的普遍关注。然而,仔细研究这些数字可以发现一种强大的技术,它充斥着项目和开发人员,并且在新的一年里有着坚定的上升发展轨迹。 交易活动 迄今为止,以太坊网络共处理了超过3.53亿笔交易。自6月1日以来,这一交易量增加了超过1亿笔(占总交易量的2.4亿笔)。1月4日,该网络在24小时内处理了130万笔交易,这是有史以来最多的一天。自6月1日起,平均每日交易量约为610,000 来源 。 在以太坊的价值交易中潜水更多,我们看到在2017年末和2018年初的“繁荣”之后网络的相对稳定性。从2018年3月开始,网络稳定在每月交易的约5000万ETH,并且名义上有波动从那以后每个月。自第三季度以来,每月的交易数量略有下降,从7月的每月约2000万减少到11月的每月约1600万。每个交易的平均ETH在同一时间段内有所增加,然而,从11月ETH/交易的2倍到ETH/交易的不到2倍[图1]。 图1.以太坊交易数据2017年12月——2018年11月。 Alethio数据科学 。 以太坊区块链上有近4900万个唯一地址。在一年内,这比2017年12月3日的约13,000,000个地址增加了近4倍。在六个月内,增加了1.5倍,高于2018年6月的约3500万个地址[图2]。每个地址的平均ETH持有约为2

Tendermint区块链Weave SDK快速指南

梦想与她 提交于 2019-12-04 09:35:46
IOV Weave SDK是一个基于Tendermint共识引擎的区块链开发框架,Weave提供了很多常用功能的预置模块用于你自己的区块链,同时也支持自定义扩展。 Weave的一些亮点包括基于Merkle树的数据存储、高度灵活的扩展支持系统以及核心逻辑的定制(例如手续费机制及签名验证机制)。Weave也支持利用创世文件进行定制的能力。此外,在键-值库之上,Weave还提供了一个简单的对象关系映射层(ORM),可以支持二级索引。Weave还包含了动态迁移功能,利用链上交易就可以切换某些逻辑模块的启用或关闭。 1、预置模块 要快速掌握Tendermint区块链开发,推荐汇智网的 Tendermint区块链开发详解 .。 Weave开发框架内置了开发一个应用区块链所需的常用功能模块: Cash:钱包模块,支持代币及手续费扣除 Sigs:签名模块,用于验证ed25519签名 Multisig:多签模块,用于多签名合约的支持,允许修改成员隶属关系 AtomicSwap:原子交换模块,支持跨链的原子交换 Escrow:托管模块,仲裁者可以安全地持有代币,或者基于超时规则释放托管资金 Governance:治理模块,管理链上提议的治理规则的选举,或者直接修改应用参数 PaymentChannels:单向支付通道模块,实现微支付和链上结算 Distribution:分配模块

音乐+区块链

假装没事ソ 提交于 2019-12-04 07:07:19
当加密货币在2017年第一次进入主流媒体时,大家就开始猜测这一新技术将会在哪一个领域先绽放。其中一个猜测的候选行业就是音乐产业,一个长久以来始终在等待平等的行业,有许多音乐家在苦苦挣扎,有些音乐家则指出他们的困境都是制作人和工作室造成的,因为后者攫取了大部分的收益。 区块链和音乐看起来是天作之合,没有比这更完美的去中心化了,借助区块链可以让音乐家和乐迷建立起直接、“不受干扰”的连接。市场反应很迅速,出现了成打的区块链创业企业,现在让我们看一下 加密音乐领域的现状。 Musicoin 要快速掌握区块链和数字货币应用开发,推荐汇智网的 区块链开发系列在线教程 。 内容涵盖比特币、以太坊、EOS、超级账本、Tendermint等多种主流区块链平台, 同时支持Java、C#、Python、PHP、JavaScript、Dart等多种开发语言。 作为最早的玩家之一,Musicoin这个基于以太坊的项目是Issa Mao创立的。Mao是来自中国的博客作者及聚焦于音乐行业的风险投资人。Musicoin这个以香港为大本营的流媒体平台在过去几个月里遇到了困难,他们自己的加密货币MUSIC已经从Bittrex交易所摘牌,这让其价值从始终徘徊在2美分 直接跌到了0.03美分/coin。 流媒体对用户是免费的,平台利用智能合约向音乐人自动支付MUSIC代币,其模式为Pay-Per-Play

Solidity陷阱:以太坊的随机数生成

无人久伴 提交于 2019-12-04 03:49:29
title: Solidity陷阱:以太坊的随机数生成 Solidity是一种相当新的语言,因为没有代码是完美的,它包含与代码相关的问题以及你希望用它完成的任务。本文将指导你使用随机数作为以太坊智能合约的输入时的最佳实践和陷阱。 Solidity随机数生成 Solidity无法创建随机数。实际上,每个创建随机数的算法都是伪随机的——没有语言能够创建完全随机的数字。Solidity的问题在于复杂的算法成本太高,因此使用了更基本的解决方案。除此之外,Solidity代码应该是确定性的,因为它将在多个节点上运行。我们需要一种能够生成一次随机数的算法,并在多个节点上使用它。像时钟时间这样的东西不能用于生成随机数,因此我们必须查看其他选项。作为开发人员,你应该了解此问题,因为攻击者能够在某些特定情况下预测结果。 最常用的算法之一是“线性同余发生器”(LCG)。它是最古老的算法之一,快速且易于理解。LCG是嵌入式系统的一个很好的选择,因为它们的内存有限。但是,它不适合加密安全应用程序。虽然,这仍然在智能合约中使用,因为快速算法在气体成本方面实施起来便宜得多。 算法本身执行以下步骤: 接受输入。 在输入上执行算法。 取输出模数(除以你需要的范围内的最大数量)。 在你需要的范围内输出0到最大数字。 让我们探讨使用彩票智能合约示例创建随机数的不同方法。用户可以通过向合约发送0

DeFi终极指南【以太坊区块链去中心化金融】

China☆狼群 提交于 2019-12-02 05:43:25
DeFi(__De__centralized __Fi__nance),即去中心化金融,是2019年区块链应用发展最迅猛的一个领域。在以太坊区块链上那些最成功的DApp,例如MakerDAO/DAI、Compound、0x以及下面我们要介绍的那些,其目标都是颠覆传统的金融服务系统,促进一个全新的数字经济时代的到来,让每个人都可以获得极大的经济自由度。本文将介绍DeFi的作用、优势、演化历史、dApp架构等有关DeFi的重要概念,可以帮助你快速了解2019年区块链的热门概念: DeFi 。 1、为什么需要DeFi 不管当下的金融服务设施如何重要,它还是受到很多问题的困扰。这些问题的主要根源都在于中心化的、单体机构的存在,这使得所有在传统金融体系中发生的交易都处于第三方的监管之下。 这使得个体的经济自由在某种程度上被剥夺,DeFi就是为了让每个普通人都能够获得自治而平等的金融服务。 传统金融体系目前存在着以下的弊端: 区别对待的金融服务 不必要的监管与审查 收到对手方风险(counterparty risk)的困扰 缺乏必要的透明度 上述弊端的存在导致了以下后果: 使用传统金融设施需要支付高昂的手续费 由于地理边界而导致的资产缺乏、官僚注意及监管审查问题,使得们无法多样化其投资组合导致错失机会 个人承担过高不必要的交易对手方风险 正是借助于区块链技术的发展