📜  最新的solidity版本 (1)

📅  最后修改于: 2023-12-03 15:26:28.018000             🧑  作者: Mango

最新的Solidity版本介绍

Solidity是一种面向以太坊平台的智能合约语言,其最新版本为0.8.7。在本文中,我们将介绍solidity的一些新特性和改进,以及如何进行升级。

新特性和改进

以下是solidity 0.8.7中的主要新特性和改进:

ecrecover变更

在Solidity 0.8.7中,ecrecover函数现在根据EIP-155规范要求执行“不带chainId的签名”(没有v值)。这是为了防止“重放攻击”,并为签名者提供留有余地的审查防御。

链上有序数组库

Solidity的链上有序数组库现在可通过“pragma abicoder v2”指令进行使用。有序数组库支持常规数组中的大多数功能,但它还具有额外的功能,例如从中央位置插入,删除和查找。

新的高阶安全函数

Solidity 0.8.7引入了一组新的高级安全函数,包括“递归被调用”,“文件许可证”和“函数凭证”。

ABI解析器升级

0.8.7中为了更好的支持实现的jarvis规范,ABI解析器被升级以更好地支持压缩和紧凑的ABI编码。

升级到0.8.7

要将Solitidy升级到0.8.7,请按照以下步骤操作:

  1. 更新Solidity编译器:$ npm install -g solc
  2. 将合约文件扫描到以下任何地方:
// SPDX-License-Identifier: MIT

pragma solidity >=0.8.0 <0.9.0;

contract MyContract {
   //...
}
  1. 在终端中运行以下命令进行编译:$ solc --version
结论

Solidity 0.8.7包含了一些重要的新特性和改进,特别是针对安全性的改进。如果您使用Solidity编写以太坊智能合约,请考虑升级到最新版本。