![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
以太坊教程
文章平均质量分 84
落叶无声9
没有不成功的事,唯有坚持。
展开
-
Python的Geth封装库PyGeth
PyGeth是一个Python封装库,用来作为子进程运行geth。系统依赖该库需要geth可执行文件。安装pip install py-geth快速启动运行连接到mainnet的geth>>> from geth import LiveGethProcess>>> geth = LiveGethProcess()>>> ge...原创 2019-01-07 09:43:25 · 280 阅读 · 0 评论 -
10分钟内用Ezo和Python构建以太坊Oracle
上一篇,我写了用Web3.js构建以太坊Oracle。这个练习给了我一些新的Web3.js 1.0版本知识。许多新的好东西可供选择而且使用它实现一个简单的oracle非常容易。但是,显然必须有更好的方法。Instant Oracles,只需添加处理程序!Ezo(发音为eh-zoh)是用于构建和运行以太坊的离线事件响应器的工具。受到ServerLess和Gordon等AWS工具集以及Django...原创 2019-01-21 16:55:57 · 475 阅读 · 0 评论 -
使用Web3.js 1.0构建以太坊Oracle
以太坊oracle:一个人们可能会在Meetups听到或其他技术活动中被抛出的非常模糊的术语。如果你不了解,你可能没有意识到区块链oracle只是一个离线数据源的专门案例,它通过响应合约中的链上事件与以太坊EVM进行交互。这可能听起来似乎挺复杂,但实际上并非如此——只需坚持几分钟。oracle的主要关注点是在合约要求时将外部数据返回合约。这些数据可以是合约开展业务所需的任何数据:存储在数据库中的...原创 2019-01-21 17:06:02 · 535 阅读 · 0 评论 -
以太坊的企业系统集成
最流行的开源Java集成库——Apache Camel现在支持以太坊的JSON-RPC API。以太坊生态系统以太坊是一个开源,公共,区块链平台,用于运行智能合约。它提供了一个去中心化的图灵完备虚拟机,可以执行脚本和加密货币,用于补偿参与者挖掘节点进行的计算或减轻垃圾邮件。今天,以太坊是最成熟和最成熟的区块链平台之一,受益于小型和大型公司,非营利组织和政府。关于以太坊生态系统及其移动速度,可以...原创 2019-01-21 17:10:02 · 693 阅读 · 0 评论 -
你也可以构建私有区块链网络
这是我如何构建私有区块链网络的一篇文章,你也可以。没有什么比自己构建区块链更能帮助理解区块链了。以下是我们将在这篇文章中完成的内容:下图我们以前可能见过,但基本上以太坊区块链网络只是很多EVM(以太坊虚拟机)或连接到每个其他节点的“节点”来创建网格。每个节点都运行整个区块链的副本,并竞争挖掘下一个区块或验证交易。无论何时添加新块,区块链都会更新并传播到整个网络,以使每个节点同步。要成为以太...原创 2019-01-21 17:14:01 · 1151 阅读 · 0 评论 -
Hyperledger Fabric如何通过虚拟机部署以太坊智能合约
EVM作为用户链代码安装到Fabric中,然后可以通过它部署智能合约。单个EVM链代码足以在通道上运行多个以太坊智能合约。链码不采用以太坊的共识方法。所有事务仍将遵循Fabric事务流中的执行,订单,验证步骤。确保在不同组织中的足够对等方安装链代码,并设置一个确保一定程度的分散的认可政策。为了与已部署的智能合约进行交互,有一个fab3,它从以太坊JSON RPC API实现一组有限的API,因此可...原创 2019-02-25 11:40:22 · 1516 阅读 · 0 评论 -
以太坊开发者工具的最新清单
以太坊开发者工具的最新终极清单,用于在以太坊上开发应用程序的可用工具,组件,框架和平台的指南。对于任何开发者,无论你是一个睁大眼睛的Web3新手还是一个头发灰白的OG加密无政府主义技术霸主,Github都是你的朋友。特别是ConsenSys Github可能是你在整个互联网上找到的最明确的Ethereum开发工具库。无论是基础知识,编码语言,IDE,API,ABI,框架,最佳实践,智能合约标准...原创 2019-02-25 11:41:55 · 1276 阅读 · 0 评论 -
使用Geth设置基于权利证明POA的以太网私有网络
目标:逐步指导,帮助你使用权威证明共识引擎(也称为clique)设置本地私有以太网网络。简而言之:我们将在同一台机器上设置两个节点,在我们的localhost上创建一个点对点网络。除了两个节点之外,还将设置启动节点(发现服务)。我花了相当长的时间和广泛的研究和谷歌搜索,最终有一个坚实的以太坊开发环境来测试我的智能合约和我的DApps。在这篇文章中,我决定分享我如何使用Geth的clique共...原创 2019-03-19 11:48:07 · 1167 阅读 · 1 评论 -
用Go构建一个简单的区块链
在本教程中,我将尝试通过帮助你在Go中编写简单的区块链来揭开区块链的广义概念。在本教程中,你应该能够:理解区块链术语。创建自己的简单区块链。了解什么是区块以及如何创建块。了解如何维护区块链的完整性。区块链:一种数字分类帐,以较小的集合排列,称为块。这些块通过加密hash相互链接。每个块包含指向前一个块的哈希。区块链对于加密货币很有用,因为它具有去中心化的特性,这意味着存储的数据不...原创 2019-01-21 16:53:55 · 4423 阅读 · 0 评论 -
Solidity错误Stack Too Deep
当一个人开始在Solidity编写智能合约时,他/她迟早会遇到一个非常烦人的障碍。“Stack Too Deep”错误。很容易陷入这个陷阱,当发生这种情况时,通常很难找到出路。公平地说,根本原因不在于Solidity本身,而在于以太坊虚拟机(EVM),因此可能会影响编译成EVM的其他语言(即LLL,Serpent,Viper),但这是一个微妙的区别在编写智能合约的日常工作中。令人惊讶的是,考虑到...原创 2019-01-21 16:51:49 · 3390 阅读 · 0 评论 -
如何通过Geth、Node.js和UNIX/PHP访问以太坊节点
本文旨在说明通过Geth、Node.js如何访问以太坊节点和UNIX下PHP如何访问以太坊节点。说明如何通过RPC使用此(A)以太坊节点对于以太坊主网络使用RPC url:http://85.214.51.53:8545对于Ropsten测试网络使用RPC url:http://85.214.51.53:8546通过本地系统上的“geth”访问节点:1.确保你的本地IP已在你的用户配置...原创 2019-01-07 09:45:53 · 1734 阅读 · 0 评论 -
为什么选择Java进行以太坊区块链开发
当有人说Java时,你会想到什么?如果没有,你可以试试old。虽然,其他人可能会说它坚固,可靠和安全。而对于Oodles Blockchain来说,Java意味着“企业级”。毫无疑问,Java是一种多功能且流行的编程语言。那我们来说说java基于以太坊的区块链应用程序开发的好处。对于开发像以太坊为基础的项目(为以太坊应用程序开发选择java)而言,这可能是一个令人惊讶的选择。我们在Oodle...原创 2019-01-07 09:47:51 · 3553 阅读 · 1 评论 -
智能合约开发新趋势【2019】
智能合约开发语言已经被Solidity统治了一段时间,它用于开发可以在以太坊虚拟机EVM上运行的智能合约。不过Solidity有一些严重的问题,包括算术溢出、类型错误以及曾经冻结了3亿美元的delegatecall漏洞。所有这些漏洞都是在开发语言层面存在的问题。换句话说,如果有一个好点的开发语言,本来应该可以创造更安全的智能合约。文本将列出在2019年值得关注的区块链智能合约开发技术趋势。上汇...原创 2019-01-03 08:29:36 · 290 阅读 · 0 评论 -
以太坊交易确认数如何获取
以太坊和比特币一样,都有一个最长链的概念,因此也有一个交易确认数的概念。当一个以太坊交易所在区块被新加入区块链时,该交易的确认数为1,之后每增加一个区块,该交易的确认数加1。显然,一个以太坊交易的确认数越多,就意味着该交易在区块链中埋的越深,就越不容易被篡改。那么,应该如何获取一个以太坊交易的确认数?如果要快速掌握以太坊应用开发,推荐汇智网的以太坊智能合约与DApp开发入门,基于在线编程环境完...原创 2019-01-08 07:18:41 · 3983 阅读 · 0 评论 -
区块链与分布式超级帐本技术(Hyperledger Fabric或R3 Corda)
与分布式超级账本技术(如Hyperledger Fabric或R3 Corda)相比,以太坊区块链保持了相似性和差异性。在对区块链和分布式超级账本平台进行有根据的评估及其为企业带来的价值时,根据平台的核心功能和特征对平台进行分类是有用的。由于区块链源自密码学和数据配置的原则,某些功能可以在协调的数据库系统中复制,而其他功能仅在真正的区块链环境中可行。在本文中,我们将评估面向平台的主要企业的基本业...原创 2019-01-08 07:21:35 · 2194 阅读 · 0 评论 -
从2018年以太坊统计数据看区块链发展趋势
今年6月,我们发布了“以太坊网络状态”,重点介绍了整个网络的一些关键数据和统计数据。六个月后,即将在2018年结束时,我们处于长期“加密货币冬天”的尾声,2017年末至今的市场波动已经引起了区块链行业的普遍关注。然而,仔细研究这些数字可以发现一种强大的技术,它充斥着项目和开发人员,并且在新的一年里有着坚定的上升发展轨迹。交易活动迄今为止,以太坊网络共处理了超过3.53亿笔交易。自6月1日以来,...原创 2019-01-08 07:23:20 · 867 阅读 · 0 评论 -
以太坊和Hyperledger Fabric之间的差异
在这篇文章中,我们将介绍区块链中两个主要平台之间的差异:以太坊和Hyperledger。如果你正在考虑在项目中使用哪一个。这个博客的亮点是希望帮助你做出决定。但在我们详细说明之前,我们先来看一些定义。什么是区块链网络?它是一个去中心化的业务资产交易系统。它使用共享分布式分类帐记录网络成员之间的所有交易。它由分别存储区块链代码的连接节点(计算机)组成。网络可以是公共的或许可的,这将确定节点如何与...原创 2019-01-24 10:52:16 · 7734 阅读 · 0 评论 -
Nebulas一个新的JavaScript开发智能合约平台
Nebulas是另一个可以开发智能合约的平台。它提供了一种使用JavaScript开发智能合约的方法,这是一种有趣的替代方案,可替代更为成熟的解决方案,例如以太坊。我第一次在Reddit上宣读了Nebulas奖励计划,该计划奖励开发人员成功提交dApp(去中心化应用程序)。从Nebulas的白皮书中,我们可以了解团队的动机以及他们为dApp提供搜索引擎和排名算法的目标。听起来很熟悉?让我谷歌那个...原创 2019-01-21 16:49:17 · 406 阅读 · 0 评论 -
使用Go语言和以太坊智能合约交互
尽管最近遇到了些麻烦,但以太坊仍然是区块链领域内智能合约的最大参与者,这似乎不会很快改变。在我看来,技术本身具有很大的潜力,是从学术的角度看很有意思,但正如上面提到的问题和之前的许多问题是区块链技术方面的,智能合约,特别是具有Solidity的以太坊生态系统还是不太成熟的,并没有为prime-time和生产用例做好准备。然而,这是一个学习和了解这项技术的好时机,并且当它达到严格应用程序的可接受...原创 2019-04-22 21:08:34 · 2090 阅读 · 0 评论 -
以太坊开发者常见的问题答案
求职面试不仅是一种过滤掉不合格候选人的考验;对于候选人来说,这也是一个很好的机会,可以评估未来雇主的开发团队的优秀程度!如果你的面试官问的是原始的,蹩脚的或错误的问题(是的,他们会问你一些完全没有意义的事情);然后这是一个红旗,也许你应该重新考虑加入这家公司,如果他们问你很好地提出具有挑战性的问题,当你不知道答案时他们不会放弃你,而是给你一些小提示最终导致正确答案;那么你正在寻找一位专业的首席开...原创 2019-04-22 21:14:57 · 2127 阅读 · 1 评论 -
Solidity 0.5 address payable和address的区别是什么?
在Solidity 0.5.x中,地址类型被细分为address和address payable,那么,这两种类型有什么区别?如何将address类型转换为address paybale类型,或者反向转换?本文将给出这些问题,并指出Solidity进行地址类型细分的目的。solidity 0.5将地址类型细分为address和address payable的目的在于,它有助于强制智能合约开发人...原创 2019-05-31 11:26:43 · 1137 阅读 · 0 评论 -
以太坊Dapp终极教程——如何构建一个完整的全栈去中心化应用(三)
在以太坊Dapp终极教程——如何构建一个完整的全栈去中心化应用(一)中,我们已经完成了一切所需的设置;在以太坊Dapp终极教程——如何构建一个完整的全栈去中心化应用(二)中,让我们通过列出将在选举中运行的候选人来继续构建智能合约并完成客户端程序。下面我们来完成投票部分,现在让我们添加在选举中投票的能力。让我们定义一个选民voters映射到智能合约,以跟踪在选举中投票的账户,如下所示:contr...原创 2019-05-31 11:35:42 · 294 阅读 · 0 评论 -
以太坊Dapp终极教程——如何构建一个完整的全栈去中心化应用(二)
在以太坊Dapp终极教程——如何构建一个完整的全栈去中心化应用(一)中,我们已经完成了一切所需的设置,让我们通过列出将在选举中运行的候选人来继续构建智能联系。我们需要一种方法来存储多个候选者,并存储关于每个候选者的多个属性。我们希望跟踪候选人的身份,姓名和投票计数。以下是我们如何为候选人建模:contract Election { // Model a Candidate str...原创 2019-05-31 11:41:12 · 321 阅读 · 0 评论 -
以太坊Dapp终极教程——如何构建一个完整的全栈去中心化应用(一)
今天,我将向你展示如何在以太坊区块链上构建你的第一个去中心化应用程序或dApp。我将告诉你如何编写你的第一个以太坊智能合约,我们将在两个候选人之间举行选举。我们将针对智能合约编写测试,将其部署到以太坊区块链,并开发允许帐户投票的客户端应用程序。我们还将研究关键概念,如“什么是区块链?”,“什么是智能合约?”,以及“dApp如何工作?”。什么是区块链?让我们用一个类比来理解区块链是什么以及它是如...原创 2019-05-31 11:43:20 · 1185 阅读 · 0 评论 -
Truffle设置Solidity版本
当使用truffle开发以太坊solidity合约时,经常碰到的一个问题,就是你的solidity合约代码所要求的编译器版本,与truffle预装的solitiy编译器版本不匹配。本文将介绍如何更改truffle中的solidity版本。如果要快速掌握以太坊的开发,推荐汇智网的以太坊开发系列教程。1、问题重现由于solidity比较新,语法还在变换当中,因此你从网上找到的示范源码,有可能...原创 2019-05-31 11:51:03 · 1136 阅读 · 0 评论 -
以太坊Whisper协议
在本教程中,我们将学习如何使用以太坊的Whisper协议创建简单的聊天CLI。尽管本教程中的所有操作都在你的控制台中进行,但是你应该能够重新使用我们在你自己的应用程序中提供的JS,并对如何发送和显示不同类型的消息有一个很好的了解,以及使用Whisper可以构建什么。我们了解到,没有多少DAPP开发人员希望以状态的方式使用Whisper(作为一个庞大的多用户消息传递协议),而是将有关DAPP中与其...翻译 2019-07-04 15:10:30 · 2133 阅读 · 0 评论 -
关于智能合约开发的真相
就像“区块链”,“AI”和“云”这样的词语一样,“智能合约”也是那些得到大量炒作的短语之一。毕竟,没有什么比不通过司法系统而让人们能够相信发生了什么更有意思的了。智能合约的承诺包括:自动,无须信任和公正地执行合约。在合约构建,合约执行和合约执行环节中取消中间人。(暗示)删除律师。我认同炒作。毕竟,如果我们能够消除信任对方执行的需要,那么事情会有多高效?无论如何,什么是智能合约?并不是...原创 2019-05-22 11:18:30 · 444 阅读 · 0 评论 -
以太坊智能合约之如何执行智能合约?
区块链技术在顶级技术中占据主导地位的主要原因在于其去中心化。虽然区块链的主要目的是在没有中心的情况下维护交易记录,但为了实现自动化,智能合约被引入。那么在写完智能合约之后呢?在本文的这个以太坊智能合约教程中,我们将了解如何使用Truffle Ethereum和以太坊专用网络来执行智能合约。我们将在以太坊智能合约教程中查看以下主题:使用案例:保险流程中的智能合约智能合约的好处安装先决条件...原创 2019-05-14 09:23:58 · 3642 阅读 · 3 评论 -
solidity 0.5.7简明教程
以太坊不仅是一种加密数字货币,它更是功能完备的智能合约平台,solidity就是用来开发以太坊上的智能合约的原生开发语言。solidity最早发布于2015年,它是第一种图灵完备的智能合约专用开发语言。目前除了以太坊之外,在其他区块链中也逐渐开始支持solidity,例如hyperledger fabric、tendermint等。在这个solidity快速教程中,我们将使用最新0.5.7版的so...原创 2019-04-29 15:33:35 · 279 阅读 · 0 评论 -
区块链开发教程分享【201904】
分享汇智网最新的比特币、以太坊、EOS、Hyperledger Fabric、Tendermint等区块链相关的交互式在线编程实战教程。1、java比特币开发详解java比特币开发课程面向初学者,内容即涵盖比特币的核心概念,例如区块链存储、去中心化共识机制、密钥与脚本、交易与UTXO等,同时也详细讲解如何在Java代码中集成比特币支持功能,例如创建地址、管理钱包、构造裸交易等,是Java工程师...原创 2019-04-29 15:35:52 · 491 阅读 · 0 评论 -
以太坊如何计算交易成本
在发送比特币交易时,其费用与其大小成比例。输入和输出越多,它就越贵。再加上未决交易的因素,交易费用可能仅基于这两个因素就会飙升。对于以太坊,鉴于我们正在谈论协议中的编程语言,对于非常少的文本或代码(在BTC中可能非常便宜的东西),可能对计算要求非常高。 让我们来看看这个循环,例如:while (i++ < 1000) { j = j + i; } 这个循环意味着**只要i小于1000...原创 2019-04-25 19:36:29 · 1349 阅读 · 0 评论 -
关于智能合约的真相?到底什么是智能合约?
就像“区块链”,“AI”和“云”这样的词语一样,“智能合约”也是那些得到大量炒作的短语之一。毕竟,没有什么比不通过司法系统而让人们能够相信发生了什么更有意思的了。智能合约的承诺包括:自动,无须信任和公正地执行合约。在合约构建,合约执行和合约执行环节中取消中间人。(暗示)删除律师。我认同炒作。毕竟,如果我们能够消除信任对方执行的需要,那么事情会有多高效?无论如何,什么是智能合约?并不是...原创 2019-05-14 09:12:01 · 1345 阅读 · 0 评论 -
区块链开发最流行的编程语言有哪些?
我们目前正处于一个新兴的区块链开发行业中。区块链技术处于初期阶段,然而这种颠覆性技术已经成功地风靡全球,并且最近经历了一场与众不同的繁荣。由于许多资金充足的项目现在急于建立区块链网络并在其上部署分散的应用程序,因此缺乏能力强大的区块链开发人员。随着数十亿人进入这一领域,区块链开发商的薪酬和需求不断升级,项目互相竞标,以吸引留在市场上的最佳区块链人才。这种淘金热可能让一些开发人员怀疑他们是否具备了进...原创 2019-05-14 09:14:32 · 521 阅读 · 0 评论 -
如何保护你的以太坊节点RPC免受黑客攻击?
最近朋友的以太坊节点遭到黑客攻击,存储在Geth钱包中的以太币通过暴露的RPC端口命令被转移出去,Transfer可以在下面看到。下图显示了最近向黑客帐户的转移:保护计算机系统传统上是一场斗智斗勇,Gosser说”穿透者试图找到漏洞,设计师试图关闭它们。”与大多数比特币客户端不同,默认情况下,大多数以太坊客户端RPC不受密码保护。尽管如此,有多种方法可以保护以太坊节点RPC。其中一些...原创 2019-05-14 09:19:09 · 606 阅读 · 0 评论 -
Quorum企业以太坊环境搭建教程
Quorum是一个许可制的以太坊联盟区块链实现,包含了金融巨头JP摩根开发的一个GETH分支版本,可以在节点之间实现私有和快速的交易。Quorum为保证隐私对节点之间的私有交易进行了专门的设计,它使用Raft和Istanbul算法实现共识,使用Tessara和Constellation实现节点数据的加密和共享。在Quorum网络中交易不需要付费,交易的验证是由投票共识算法完成的。总体上来讲Quor...翻译 2019-07-04 15:13:21 · 1581 阅读 · 3 评论 -
web3j开发环境搭建
web3j是一个轻量级的以太坊Java开发包,可用于桌面、服务器或手机应用中实现对以太坊区块链智能合约的访问。web3j开发环境包括开发测试用的节点以及web3j开发栈,本文将介绍如何在自己的机器上搭建web3j开发环境。如果要快速掌握web3j的开发,强烈推荐汇智网的web3j以太坊开发详解,要比硬着头皮看官网文档省心的多,技术问题还可以直接咨询课程助教。web3j开发环境的搭建分为以下...原创 2019-01-07 09:38:25 · 870 阅读 · 0 评论 -
以太坊如何通过构建智能合约来销售商品?
如何通过构建以太坊智能合约来销售商品?这是个问题。毫无疑问,比特币已经改变了我们看待和理解什么是金钱,价值以及最近由智能合约产生的所有权的方式。这很有趣,因为几乎每个人都听说过它或加密货币。来自许多业务领域的人,不仅仅是我们,IT工作者。在本文中,我将展示我关于以太坊的第一份智能合约,这是我对区块链的个人研究的一部分。区块链适合初学者有许多涉及区块链技术的概念,但在本节中我将尝试解释这种...原创 2018-12-13 08:43:13 · 379 阅读 · 0 评论 -
以太坊客户端Geth命令用法-参数详解
Geth是在以太坊智能合约开发中最常用的工具(必备开发工具),一个多用途的命令行工具。 熟悉Geth可以让我们有更好的效率,大家可收藏起来作为Geth命令用法手册。 本文主要是对geth help的翻译,基于最新的geth 1.7.3-stable版本。如果你还不知道geth是干什么的,请先阅读入门篇:什么是以太坊?什么是智能合约? 以下开始正文。命令用法geth [选项...2018-06-14 09:24:02 · 488 阅读 · 0 评论 -
使用truffle部署以太坊智能合约到区块链
truffle是以太坊(ethereum)开发智能合约(smart contract)过程中最受欢迎的框架,本教程来安装构建一个基本的Truffle项目并部署一个智能合约到区块链。开始本文之前希望你已经了解区块链、以太坊、智能合约等基本概念。安装 Truffle安装 Truffle 框架非常的简单,只需要一行命令:npm install -g truffle...2018-06-15 14:43:20 · 211 阅读 · 0 评论 -
java类库web3j开发以太坊智能合约快速入门
web3j简介web3j是一个轻量级、高度模块化、响应式、类型安全的Java和Android类库提供丰富API,用于处理以太坊智能合约及与以太坊网络上的客户端(节点)进行集成。可以通过它进行以太坊区块链的开发,而无需为你的java应用平台编写集成代码。快速启动想要快速启动的话,有一个Web3j demo示例项目可用,演示了通过Web3j开发以太坊的许多核心特征,其中包...2018-06-18 10:49:44 · 268 阅读 · 0 评论