Solidity 字节码和操作码基础知识

在本文中,简单地解释一些 EVM 基础知识。

第4节:App与Dapp的架构异同

App与Dapp的架构异同

【100个Solidity使用技巧】2、交易回滚攻击

以太坊 EVM 支持交易回滚,合约可以使不满足条件的调用失败,从而回滚部分或者整个交易。

  • 33357
  • 发布于 2022-08-13
  • 阅读 ( 492 )
  • ( 8 )

智能合约安全-整数溢出(SW101-IntegerOverflowAndUnderflow)

当算数运算达到改类型的最大或最小值时,就是出现溢出。比如uint8类型,它的取值范围为0-2^8-1,当运算时尝试创建一个超出该类型可描述范围的值时,就会出现整数溢出。

如何用 Solidity 创建一个“Hello World”智能合约

Solidity 编程语言的 “Hello world”

[100个Solidity使用技巧]1.合约重入攻击

[100个Solidity使用技巧]1.合约重入攻击

  • 33357
  • 发布于 2022-07-27
  • 阅读 ( 436 )
  • ( 7 )

实战:调整NFT智能合约,减少70%的铸币Gas成本

文章非常严谨讨论了各种实现的 gas 消耗,以及低效代码带来的深远影响,并给出了实现方案。

Solidity 学习:在Solidity中使用Revert()、Assert()和Require(),并且在EVM中使用新的Revert操作码

在本文中,将看到:1.解释这些函数解决的问题。2.讨论 Solidity 编译器如何处理新的 assert(), require()revert()。3.给出一些经验法则来决定如何以及何时使用每一个。

  • darren
  • 发布于 2022-07-08
  • 阅读 ( 651 )
  • ( 169 )

深入理解EVM - Part 5 - 调用/委托调用的原理与实现

从solidity使用,到opcode原理,再到Geth实现,三个层次解读委托调用的原理与实现

  • Alvan
  • 发布于 2022-06-30
  • 阅读 ( 752 )
  • ( 44 )

使用 Chainide 快速在 Conflux 上发行数字藏品

ChainIDE 是一款云端智能合约 IDE ,开发者可以在其上编写智能合约,以部署在 Ethereum、BNB Chain、Polygon、Conflux、Nervos、Dfinity、Flow、Chain33、Fisco Bcos 等不同区块链上。它可以减少用户的开发周期,节省用户的时间和精力。

  • WTOM
  • 发布于 2022-06-28
  • 阅读 ( 537 )
  • ( 3 )

编写SmartContract铸造NFT

这是本系列文章的第三篇,这篇文章我们就开始编写一个能铸造NFT的智能合约了。当然这不是一篇solidity的教学文章,所以不会在编码细节上做过多的介绍

  • zhengyq
  • 发布于 2022-06-27
  • 阅读 ( 469 )
  • ( 10 )

深入理解EVM - Part 4 - Geth中存储区的实现

以Geth代码为基础,从区块结构讲到账户状态/合约存储,最后是SSTORE和SLOAD两个操作码的具体实现

  • Alvan
  • 发布于 2022-06-25
  • 阅读 ( 640 )
  • ( 21 )

使用OpenZeppelin编写可升级的智能合约

在本文中,通过 7 个任务,如何来编写可升级合约,测试以及自动、活动实施升级。 在 7 个任务中,分别介绍了可升级合约可能遇到的各种情况: 在新实现合约中添加函数、添加状态变量、修改状态变量可见性(修改函数)。

  • Tiny熊
  • 发布于 2022-06-24
  • 阅读 ( 2131 )
  • ( 2 )

利用Docker镜像准备Solidity开发环境

上一篇文章中我们已经准备好了用于开发、测试和部署智能合约的以太坊私有环境,那么在开始编写合约之前,我们还需要准备开发环境。

  • zhengyq
  • 发布于 2022-06-24
  • 阅读 ( 448 )
  • ( 9 )

Solidity进阶之静态分析

静态分析是相对容易掌握的工具,对开发复杂的Defi应用非常有帮助。

  • Deep Defi
  • 发布于 2022-06-23
  • 阅读 ( 894 )
  • ( 46 )

深入理解EVM - Part 3 - 存储

这篇通过一个例子讲了EVM中storage和插槽的工作原理

  • Alvan
  • 发布于 2022-06-22
  • 阅读 ( 1149 )
  • ( 40 )

深入理解EVM - Part 2 - 内存

从opcode角度讲解EVM的内存机制,包括数据结构,空闲内存指针与变量赋值等

  • Alvan
  • 发布于 2022-06-21
  • 阅读 ( 872 )
  • ( 53 )

Solidity可升级代理模式: 透明代理与UUPS代理

Solidity有两种模式实现升级:透明代理与UUPS代理, 他们的实现由细微差别,本文一起来看一看。

深入理解EVM - Part 1 - 从字节码到函数选择器

翻译深入理解EVM系列文章,第一篇是关于函数选择器与字节码/opcode

  • Alvan
  • 发布于 2022-06-18
  • 阅读 ( 1625 )
  • ( 101 )

技术:如何在 Solidity 中验证签名消息

这是一个使用MetaMask签名消息,然后在链上进行验证的实用教程。