区块链研究总结 —— 以太坊

Solidity合约中Merkle Root验证的一点实践 Solidity合约中Merkle Root验证的一点实践 背景 在上一篇文章"Solidity合约中签名验证的一点实践"中提到过,白名单机制一般有两种,除了签名验证的方式外,就是本文讲述的Merkle Root验证的方式。 主要做法是在服务端对白名单地址列表整体构建Merkle树,计算出树的root hash,合约只需存储这个Merkle的根哈希值就可以了。由于Merkle tree的构建,不需要任何私钥,所以安全性有很大提升,目前大多数新项目都会采用这个方法。 整体交互流程和签名验证比较相似,大致为: 阅读详情

本文为区块链技术总结及发展展望一文的子章节。

Vitalik于2013年发布了以太坊白皮书,并于2014年中通过ICO(首次代币发行)的方式募集到大量资金推动以太坊项目开发。目前以太坊还没有完成最终阶段,但主要功能均已上线。它是比特币后又一重量级产品,引爆了第二代区块链应用 - 智能合约。

以太坊的目标是运行用户自己开发的智能合约,除了上述比特币的大部分特点外,它还有自己显著的特点。

以太坊的特点

  • 发明了可以运行图灵完备程序的虚拟机EVM,做为运行智能合约的环境。
  • 创造了多种开发智能合约的编程语言及其编译器,其中最为熟知的是Solidity。
  • 引入了状态概念。不同于比特币只有账户余额这一个状态,以太坊的目标是运行用户开发的各种智能合约,每个合约可能会保存多种状态(类似于数据库保存的数据)。为了避免这些状态每次都从历史交易中推算出来,以太坊利用状态直接保存合约当前数据。以太坊有2种数据:交易和状态,交易是历史数据链式存储不可更改,状态是当前数据可以变化。从以太坊开始的大部分公链都采用这一模型。
  • 发明了ERC20规范,使得在以太坊上创建一种新的Token(代币)非常简单,造就了以太坊的王牌应用ICO。
  • 引入Gas概念,根据智能合约运行消耗的CPU和内存资源来收取交易费。
  • 采用独创的Patrica Tree(具有Patrica Trie和Merkle Tree特点)和RLP编码,高效保存Merkle码和实际数据。
  • 采用改进的内存密集型POW算法,并准备升价到POS共识。

但在使用过程中,也发现以太坊的一些缺点。

以太坊的缺点

  • 以太坊的地址和比特币一样,同样存在监管问题。ICO的发展也体现出这一点,由于ERC20 Token的发行仅仅需要一个智能合约(ICO还会提供一个白皮书),并没有任何价值保障(参考上面比特币就有价值保障),并且任何人都可以发行Token,不需要任何审核。对于空气币项目,只根据投资合约地址,投资者无法挽回任何损失。
  • 以太坊的TPS只比比特币快一点,大约在15左右。2017年底发布的加密猫应用是第一个进入公众视野的去中心化应用,但随之而来的就是以太坊系统严重堵塞,大量的交易处于等待状态。最终导致加密猫应用无法大规模推广。
  • 以太坊处理速度过慢造成的另一副作用就是gas费的恶性竞争。当整个系统堵塞是,矿工会选择gas费高的交易优先执行。用户为了让自己的事务尽快执行,只有提高gas费,结果就是所有人都在提高gas费,gas费越来越高。我们公司曾经在系统比较繁忙的时候,升级过一次合约(由10个左右合约组成),就花费了200美元。
  • 以太坊智能合约的目标是开发ICO这种简单的合约程序,其设计方式并未考虑复杂程序的开发。这体现在以下几个方面,
    1. 复杂应用一般包含多个合约,每个合约都需要单独部署,造成合约部署流程复杂并且失败恢复困难。
    2. 合约一旦部署就生成一个固定地址,无法升级。但是复杂应用很难做到没有需求变化或bug,需要支持升级。
    3. 合约产生的数据保存在合约的地址中,新合约部署后需要从老地址迁移已有的数据到新地址,或者需要从新老多个合约中获取数据。
  • 以太坊社区更新偏慢,例如从2017年底就发布要升级为POS共识,直到现在都还没有完成。这可能也是最近以太币走势不如比特币和EOS的原因之一。

以太坊推动区块链应用进入智能合约时代,ICO和加密猫使人们初步见识了去中心化应用的魅力。但它的设计不利于复杂的去中心化应用的开发和推广,这促成了另一个公链系统的崛起 - EOS。

完整文章请查看区块链技术总结及发展展望

区块链研究(一)搭建基于以太坊的Windows区块链环境 1.下载Geth.exe并安装官网地址: https://ethereum.github.io/go-ethereum/downloads/ (另附百度网盘地址:链接: https://pan.baidu.com/s/1kVVMBsz 密码: dr5j)进入之后显示如下界面,点击Geth 1.7.3 for Windows进行下载。看它的介绍,应当只支持64位操作系统。下载后双击打开安装点击I A... 阅读详情

相关推荐

区块链研究(二)搭建基于以太坊的Windows私有链

1.准备创世块文件配置自己的创世块是为了区分公有链,同一个网络中,创世块必须是一样的,否则无法联通。新建文件fflngenesis.json,输入如下内容并保存,路径随意。我的路径是: F:\app\Ethereum\Blockchain Env\{    "nonce":"0x0000000000000042",    "mixhash":"0x0000000000000000000000000...

u012107512的专栏 6976

详解以太坊的工作原理

这篇文章主要讲解以太坊的基本原理,对技术感兴趣的朋友可以看看。 翻译作者: 许莉 原文地址:How does Ethereum work, anyway?   简介   不管你们知不知道以太坊(Ethereum blockchain)是什么,但是你们大概都听说过以太坊。最近在新闻里出现过很多次,包括一些专业杂志的封面,但是如果你们对以太坊到底是什么没有一个基本的了解

予衡飞翔 3万+

35、电动汽车充电系统与以太坊区块链验证者困境研究

本博文深入探讨了电动汽车充电系统的优化策略以及以太坊区块链中的验证者困境问题。在电动汽车充电系统研究中,通过分析不同充电策略及其对可靠性、行程时间和电池电量利用的影响,揭示了合理选择充电策略的重要性,并讨论了安全阈值和服务站位置对充电行为的复杂影响。在以太坊区块链研究中,利用基于PEPA的定量模型分析验证者困境,提出通过无效块注入机制解决验证者困境的方法,并设计了计算最佳注入率的数值算法。最后,博文展望了电动汽车充电系统与区块链技术的结合应用,提出了智能充电网络和电动汽车分布式能源管理的未来发展方向。

sugar的博客 67

Solidity实现默克尔树 Merkle Tree

​​Merkle Tree​​​,也叫默克尔树或哈希树,是区块链的底层加密技术,被BTC和Ethereum区块链广泛采用。​​Merkle Tree​​​是一种自下而上构建的加密树,每个叶子是对应数据的哈希,而每个非叶子为它的​​2​​个子节点的哈希。​​Merkle Tree​​允许对大型数据结构的内容进行有效和安全的验...

sleep的博客 1520

关于区块链应用的好文章

一个以太坊私有链应用的很好论文,关于智能合约实现的详细介绍,值得参考学习!

solidity-mt-vs-mmr:比较Merkle Tree和Merkle Mountain Range树木气体使用量的Solidity示例

团结默克尔树vs默克尔山脉树 比较Merkle Tree和树的气体使用量的Solidity示例。 建造 npm run build 测试 npm test 输出: Test append gas used: 0 62737 append gas used: 1 47749 append gas used: 2 47749 [...] append gas used: 97 47737 append gas used: 98 47749 append gas used: 99 47749 total append gas used: 4789660 commit gas used: 165686 proof verification gas: 51394 ✓ MerkleTree (2279ms) append gas used: 0 161462 append gas use

我的开源项目与开源经历分享

一位93年的前端开发者从一个开源门外汉变成了一个开源发起者,项目已经1K+ Star,分享一下自己的开源项目和开源历程,供大家参考。 逐字稿

nihaojob123的博客 6391

merkle-tree-solidity:JS-Solidity sha3 merkle树桥。 在JS中生成证明; 实体验证

merkle树的坚固性 JS-实体sha3 merkle树桥。 在JS中生成证明; 在Solidity中验证。 安装 npm install --save merkle-tree-solidity 信用 这部分是Raiden的merkle tree python模块的一部分,而solidity代码是一个紧密的副本。 默克尔树 可靠性 用法 import MerkleTree , { checkProof , merkleRoot , checkProofSolidityFactory } from 'merkle-tree-solidity' import { sha3 } from 'e

Solidity--使用Merkletrees为链上合约添加白名单【降低gas消耗】

目前的NFT市场越来越火爆,入场的人越来越多,在很多NFT在公开销售的之前就会有设置白名单,让这些白名单的人提前可以购买,又或者制定的白名单的人才能进行购买,从而达到他们饥饿营销的手段..............................

知识的共享,拓宽视野,深化思考,获得新的启发. 3110

区块链底层平台测评方案

区块链底层平台测评方案,内容经典,分享学习,请需要的同学下载,谢谢。

《QMT量化实战系列》支持自定义筛选与排序的多因子策略,实测年化收益超100%

【QMT量化实战系列】推出《支持自定义筛选与排序的多因子策略》,通过Tushare获取38个核心因子数据,实现股票多维筛选(剔除ST股、次新股及特定板块)。策略创新性地采用多因子加权排名机制,通过(股票数-排名+1)/股票数*100的算法计算各因子得分,支持自定义权重组合。该策略提供完整代码及详细注释,涵盖数据获取、因子筛选、权重排序等核心环节,帮助用户构建个性化量化模型。系列内容每月更新1-2期,由浅入深讲解QMT平台实战应用。

qq_46262068的博客 1255

基于以太坊区块链的 EtherRAT 恶意基础设施及攻防研究

EtherRAT 是基于 Node.js 开发的轻量级 RAT,代码体量较小,核心功能围绕 “区块链获取 C2、接收远端指令、执行代码、数据回传、自我重混淆” 设计,主要传播载体分为三类:MSI 安装程序、PowerShell 脚本、JavaScript 脚本,样本版本从 v1 迭代至 v10,具备持续更新能力。同时,基于攻击暴露的风险点,针对终端、网络、邮件、域名、应急、监管六大场景设计了分层防御体系,兼顾中小企业、大型企业、运营商、监管机构的不同运维需求。最后减去密钥数组k对应字节,得到明文数据。

176

SAP FB03凭证修改实战:巧用BAPI FI_DOCUMENT_CHANGE更新抬头与行项目

本文详细介绍了SAP FB03凭证修改的实战技巧,重点解析了BAPI FI_DOCUMENT_CHANGE的使用方法。通过该接口,用户可以在不冲销原凭证的情况下直接更新抬头文本(BKTXT)和行项目文本(SGTXT),确保凭证编号连续且符合审计要求。文章包含核心机制解析、完整实现步骤、错误处理方案以及高级应用场景,帮助开发者高效完成SAP财务凭证修改。

weixin_29251567的博客 424

研究人员探索了对以太坊区块链的日食攻击

eclipse攻击是对区块链的网络级攻击,攻击者基本上控制了对等网络,模糊了节点对区块链的视图。波士顿大学副教授Sharon Goldberg在一篇题为“低资源Eclipse攻击以太的点对点网络”的论文中写道:Ethan Heilman,波士顿大学的博士研究生;匹兹堡大学的研究员Yuval Marcus描述了一种在以太网络上进行日食攻击的方法。(研究人员在2018年1月9...

全网:架构师研究会 214

PTA 7-8 暴力小学(二年级篇)-求出4个数字 (10分)java

PTA 7-8 暴力小学(二年级篇)-求出4个数字 (10分)java 小博是新城小学二年级学生,这孩子人很老实,数学、语文成绩都是中等。不过一旦坐在电脑前,写起代码来,则有些霸气侧漏,尤其擅长各种暴力方法。本题就是数学莫老师的题目之一,请你和小博一起暴力求解吧。 输入格式: 第一行给出这个和N(图中例子的和N为2000)。 输出格式: 第一行输出所有解的数目K,随后K行按照DCBA 4位数字从...

qryzhfj的博客 2187

手把手教你用Gazebo和VINS-MONO搞定VIO SLAM仿真(附Realsense D435i模型配置)

本文详细介绍了如何使用Gazebo和VINS-MONO构建VIO SLAM仿真环境,包括Realsense D435i模型的配置与集成。通过实战指南,帮助开发者快速搭建高保真仿真平台,优化VIO性能,并解决常见问题,适用于机器人感知与定位导航领域。

weixin_30682415的博客 159

以太坊 四个区块链底层协议的研究方向

以太坊 四个区块链底层协议的研究方向 -整合zk-SNARK: 通过新指令(opcode)或者更理想的,利用EVM(以太坊虚拟接)现有的256位模运算指令,让以太坊合约获得验证succinct zero-knowledge proof的能力。由于verification key可以在链下生成,这个任务比看上去要容易些,虽然要达到相当的实用程度还需要很多其他方面的工作。 我们最初始的目标是利...

专注大数据、人工智能、区块链研究 4061

Libero SoC v2021.1离线安装与IP核配置全攻略

本文详细介绍了Libero SoC v2021.1在离线环境下的完整安装与配置流程。核心内容包括如何选择正确的离线安装包、获取并配置许可证、安装与挂载MegaVault IP库,以及将ModelSim仿真器切换至免费SE模式的关键步骤。文章旨在帮助内网开发者避开常见陷阱,顺利完成FPGA开发环境的搭建。

weixin_29279101的博客 406

以太坊区块链搭建ndows,区块链研究(一)搭建基于以太坊的Windows区块链环境

想知道更多关于区块链技术知识,请百度【链客区块链技术问答社区】链客,有问必答!1.下载Geth.exe并安装进入之后显示如下界面,点击Geth 1.7.3 for Windows进行下载。看它的介绍,应当只支持64位操作系统。下载后双击打开安装点击I Agree直接next点击Browse...选择安装路径,完成后点击Install进行安装点击close安装完成接下来验证是否安装正确。Win+R ...

weixin_29419279的博客 189

2025海外代理IP深度横评:Bright Data、IPFoxy、SmartProxy等六大服务商实战对比

本文深度横评2025年六大海外代理IP服务商(Bright Data、IPFoxy、SmartProxy、IPIPGO、Kookeey及青果网络),基于实战测试数据,从IP池质量、速度稳定性、性价比等维度进行对比。针对跨境电商、数据爬虫、社交媒体管理等不同业务场景,提供精准的选购指南与避坑建议,帮助企业用户根据自身需求选择最合适的代理IP解决方案。

weixin_29196891的博客 434

YOLOv11 模型剪枝实战:深入解析通道剪枝与层剪枝的策略与实现(含环境配置、微调技巧与部署测试)

YOLOv11模型剪枝技术通过移除冗余参数和结构来压缩模型,主要包括通道剪枝和层剪枝两种方法。通道剪枝通过评估批量归一化层的缩放因子γ确定通道重要性,移除不重要的特征通道;层剪枝则直接删除整个网络层或模块。剪枝流程包括评估重要性、移除冗余成分、微调模型和评估性能四个步骤。该技术可显著降低模型计算量和参数量,适合在资源受限设备上部署高性能目标检测模型。

本博客聚焦 YOLOv11 全流程落地,涵盖架构优化、数据集处理、训练技巧与多场景部署,兼及国产数据库、Java 开发与 AI 模型应用,内容兼顾理论与工程实践,为开发者提供系统干货,助力高效提升技术能力。 1960

mysql 区块链_区块链研究实验室 | 使用MySQL存储以太坊事件

在本文中,我将演示一种缓存假设我们想要创建一个跟踪令牌传输的网站,Etherscan。我们只需要一波简单的操作,比如:取得所有令牌转移信息取得以太坊转账来源地址取得以太坊转账目标地址获得特定金额的转账信息在特定时间范围内获得转移信息在web3中是有getPastEvents方法,其示例用法是:这种方法的主要问题是,随着接下来,几乎不可能实现一些比较复杂的查询,因为筛选对象的功能非常有限。此外,已经...

weixin_39607865的博客 280

大模型复杂问答能力评测框架:从原理到实践

在人工智能领域,大语言模型(LLM)的评估是衡量其实际应用价值的关键环节。其核心原理在于通过系统化的评测框架,对模型的理解、推理、整合与表达能力进行量化分析。传统的NLP基准测试往往侧重于事实性检索或简单推理,难以全面反映模型在应对多跳推理、隐含条件、长上下文整合等复杂现实任务时的真实性能。因此,专门针对复杂问答设计的评测技术应运而生,其价值在于为模型选型、效果优化和瓶颈诊断提供数据驱动的科学依据。该技术广泛应用于需要深度逻辑判断的业务场景,如智能投顾、法律咨询、医疗诊断等。本文聚焦的`tan92hl/Co

weixin_28679635的博客 362

区块链研究实验室 | 以太坊上的广义状态通道

状态通道是可用于分布式应用程序的基础技术。它们可以用于与一组已定义的参与者进行任何交互,例如付款或类似象棋或扑克的游戏。“通道化”这些应用程序使其成本大大降低,并减少了当今区块链应用程序中不可接受的高延迟,从而实现了用户预期的类似网络的响应时间。 尽管如此,在当今的以太坊应用中,状态通道的利用率仍然很低。每个想要使用状态通道的项目必须有效地构建自己的自定义实现,从而导致冗余和不必要的风险。其...

willam1的专栏 350

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

区块链存储mysql_区块链研究实验室 | 使用MySQL存储以太坊事件

在本文中,我将演示一种缓存以太坊事件的简单方法。我只想说,通常我们将事务用于链下操作,例如跟踪令牌的传输或检索特定事务的筛选列表,就像一个SQL查询一样。假设我们想要创建一个跟踪令牌传输的网站,Etherscan。我们只需要一波简单的操作,比如:取得所有令牌转移信息取得以太坊转账来源地址取得以太坊转账目标地址获得特定金额的转账信息在特定时间范围内获得转移信息在web3中是有getPastEvent...

weixin_39611754的博客 244

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

上一篇: 区块链技术总结及发展展望
下一篇: 区块链研究总结 —— EOS
feifeilb
博客等级 码龄22年 22粉丝 38原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值