自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(1602)
  • 资源 (9)
  • 收藏
  • 关注

原创 【MQTT】 物联网 EMQX本地部署及消息发布/订阅

MQTT 是用于物联网 (IoT) 的 OASIS 标准消息传递协议。它被设计为一种极其轻量级的发布/订阅消息传递传输,非常适合连接具有小代码占用空间和最小网络带宽的远程设备。如今,MQTT被广泛应用于各种行业,如汽车、制造、电信、石油和天然气等。EMQ X (简称 EMQ), 是一款完全开源,高度可伸缩,高可用的分布式 MQTT消息服务器,同时也支持 CoAP/LwM2M 一站式 IoT 协议接入。EMQ 是 5G时代万物互联的消息引擎,适用于 IOT、M2M 和移动应用程序,可处理千万级别的并发客户端。

2024-06-16 22:53:52 798

原创 【EIP】ERC1822-通用可升级代理标准UUPS

可代理合约中的兼容性检查是一种安全机制,用于防止升级到未实现通用可升级代理标准的逻辑合约。值得注意的是,支持多个构造函数的附加功能不会妨碍代理合约字节码的验证,因为可以首先使用代理合约 ABI,然后使用逻辑合约 ABI 来解码初始化 tx 调用数据(输入)。此外,代理合约构造函数的任意性提供了从逻辑合约源代码中可用的一个或多个构造函数中进行选择的能力(例如,,,这消除了代理合约和逻辑合约中变量之间发生冲突的可能性,从而提供了与任何逻辑合约的“通用”兼容性。代理合约包含在逻辑合约中,提供执行升级所需的功能。

2024-05-29 22:17:36 917

原创 【EIP】ERC1967- 代理存储槽标准

为了避免代理和逻辑合约在存储使用方面发生冲突,逻辑合约的地址通常保存在特定的存储槽中,保证永远不会被编译器分配。选择这些变量的方式可以保证它们不会与编译器分配的状态变量发生冲突,因为它们依赖于不以存储索引开头的字符串的哈希值。这可能会导致意外错误,甚至漏洞,因为代理会拦截调用并使用自己的值进行应答,因此对代理合约的调用会返回与预期不同的值。代理合约中的任何函数,只要其选择器与实现合约中的选择器匹配,就会被直接调用,完全跳过实现代码。代理存储其委托的逻辑合约的地址以及其他代理特定信息的一致位置。

2024-05-29 21:11:38 1005

原创 可升级的智能合约

智能合约“不可变”或“无法更改”的说法是许多基于区块链的智能合约平台(例如以太坊)的普遍特征。因此,代理被认为是最不透明的升级方法,因为它可能会向用户隐藏底层逻辑的变化。尽管如此,我们可以在不更改其原始代码的情况下对已部署的智能合约做更多的事情。可升级的智能合约在某些情况下可能很有用,但它们是否是一种好的做法取决于独特的用例、透明度和安全性级别以及所涉及的权衡。此外,代理合约是最难审计的,因为它们会引入新的漏洞。可升级的合约允许开发人员修复错误、添加新功能或改进已部署的合约,而不会中断用户或需要数据迁移。

2024-05-27 21:07:26 1142 2

原创 【truffle】快速入门

部署脚本migrations/1_deploy_contracts.js。测试脚本solidity-TestMetaCoin.sol。修改配置truffle-config.js。测试脚本js类型-metacoin.js。编译完后会多一个build目录。下载ganache,

2024-05-26 14:54:28 388

原创 【Uniswap】uniswap v1版本 foundry简单实现

【代码】【Uniswap】uniswap v1版本 foundry简单实现。

2024-05-24 18:12:28 295

原创 【Uniswap】uniswap概述及核心概念

Uniswap 是一个去中心化交易所 (DEX),旨在成为 中心化交易所的替代方案。它运行在以太坊区块链上,并且是完全自动化的:没有管理员、经理或具有特权访问权限的用户。V1于 2018 年 11 月推出,它只允许以太币和代币之间的交换。V2 于 2020 年 3 月推出,允许任何 ERC20 代币之间的直接交换。V3 于 2021 年 5 月推出,它显着提高了资本效率,从而实现了流动性 提供商从资金池中移除更大一部分流动性,并仍然获得相同的回报。

2024-05-24 16:54:21 331

原创 【foundry】铸造NFT并发布到Opensea

【代码】【foundry】铸造NFT。

2024-05-20 19:28:15 352

原创 【foundry】模糊测试

模糊测试(Fuzzing),是一种通过向目标系统提供非预期的输入并监视异常结果来发现软件漏洞的方法。

2024-05-19 21:31:36 152

原创 【foundry】安装依赖 以openzeppelin为例

forge-remove - 删除一个或多个依赖项。使用forge install 依赖名。在foundry.toml文件中。使用import 引入。

2024-05-19 18:05:32 269

原创 【foundry】快速入门

rpc--url 和private-key请参考如下文章中【复制Transaction hash到。验证安装成功命令(查看版本号)验证安装(查看命令)

2024-05-19 17:21:19 313

原创 【EIP】ERC-4626 代币化资金库标准

它为表示单个底层 ERC-20 代币的份额的代币化收益资金库提供标准应用程序接口。ERC-4626 还概述了使用 ERC-20 的代币化资金库的可选扩展,提供存款、提取代币和读取余额的基本功能。借贷市场、聚合器和本质上计息的代币可以帮助用户通过执行不同的策略来找到他们的加密代币的最佳收益。这些策略的完成方式略有不同,这可能容易出错或浪费开发资源。收益资金库的 ERC-4626 标准通过创建更加一致和健壮的实现模式,无需开发者提供专门的工作,就能减少集成工作量并解锁在各种应用程序中获取收益的途径。

2024-05-18 18:17:22 151

原创 【EIP】ERC-1155 多代币标准

ERC1155用于多种代币管理的合约标准接口。单个部署的合约可以包括同质化代币、非同质化代币或其他配置(如半同质化代币)的任何组合。这样一来,ERC-1155 代币就具有与 ERC-20和erc-721代币相同的功能,甚至可以同时使用这两者的功能。它改进了 ERC-20 和 ERC-721 标准的功能,提升了效率并纠正了实现中的明显错误。

2024-05-17 18:34:34 233

原创 【EIP】ERC-721 非同质化代币NFT标准

ERC-721 为 非同质化代币NFT ( Non Fungible Token)引入了一个标准,换言之,这种类型的代币是独一无二的,并且可能与来自同一智能合约的另一代币有不同的价值。所有 NFTs 都有一个uint256变量,名为tokenId,所以对于任何 ERC-721 合约,这对值必须是全局唯一的。

2024-05-17 16:28:30 159

原创 【EIP】ERC-20 同质化代币标准

ERC20标准允许在智能合约中实施代币的标准 API。该标准提供了转移代币的基本功能,并允许代币获得批准,以便其他链上第三方可以使用它们。

2024-05-17 10:05:35 236

原创 【hardhat】快速入门

SEPOLIA_API_URL和PRIVATE_KEY, 看后面的附加说明。chrome浏览器安装metamask扩展,然后复制出。私钥,即PRIVATE_KEY的值。初始化package.json。hardhat项目初始化。部署hardhat网络。

2024-05-16 17:33:30 472

原创 【solidity基础】库library

solidity库用library声明。

2024-05-15 19:43:42 288

原创 【solidity基础】call 和delegatecall

call是与其他合约交互的底层函数。如果只是通过调用回退函数发送以太币,建议使用这种方法。但这并不是调用现有函数的推荐方法。

2024-05-15 18:08:27 171

原创 【solidity基础】fallback和receive

当通过传输或发送调用时,fallback 的气量限制为 2300。fallback() 必须声明为external。receive是fallback的一种变体,在 msg.data 为空时触发。发送数据和不发送数据,调用的都是fallback。发送数据 ,调用的是fallback。不发送数据, 调用的是receive。

2024-05-15 16:21:22 300

原创 【solidity基础】ABI 常用函数

【代码】【solidity基础】ABI编码。

2024-05-15 09:49:06 212

原创 【solidity基础】错误和异常处理

solidity可以通过调用 require、revert 或 assert 来抛出错误, 使用try...catch来捕获异常。

2024-05-14 22:12:52 203

原创 【solidity基础】多合约-继承、引入

solidity合约继承通过is关键字声明。

2024-05-14 21:54:41 88

原创 【solidity基础】接口

solidity接口通过关键字interface声明。

2024-05-14 21:05:42 582

原创 【solidity基础】事件

【代码】【solidity基础】事件。

2024-05-14 20:38:28 102

原创 【solidity基础】结构体

结构体使用struct关键字声明。

2024-05-14 10:24:31 180

原创 【solidity基础】函数

构造函数用来初始化变量。

2024-05-14 07:51:11 346

原创 【solidity基础】数组

在Solidity中,数组的遍历没有提供直接访问元素的方法,因此我们需要手动遍历数组并将元素复制到新的数组中。这是因为Solidity中的数组是存储在内存中,而不是像其他编程语言中那样在堆上。

2024-05-13 22:58:07 239

原创 【solidity基础】映射

使用语法 mapping(keyType => valueType) 创建映射。

2024-05-13 08:55:36 164

原创 【solidity基础】循环语句

solidity循环语句有for、while、do...while。

2024-05-13 08:24:26 286

原创 【solidity基础】条件语句

solidity条件语句使用关键字if...else...

2024-05-12 21:26:51 114

原创 【solidity基础】常量

solidity使用constant关键字声明常量。

2024-05-12 21:13:33 365

原创 【solidity基础】变量、变量类型及可见性

【代码】【solidity基础】变量。

2024-05-12 20:40:24 235 1

原创 【solidity基础】常用基本数据类型

以上是Solidity中的一些基本数据类型。除了这些基本类型,Solidity还支持结构体(struct)、数组(array)、映射(mapping)等复杂数据类型。

2024-05-12 11:21:09 488

原创 【solidity基础】快速入门

指定solidity编译版本。第一行, 表示开源协议。

2024-05-12 10:30:54 75

原创 golang生成uuid

【代码】golang生成uuid。

2023-11-05 17:02:35 386

原创 golang 发送邮件

【代码】golang 发送邮件。

2023-11-05 16:18:55 454

原创 Cannot use ‘**‘ (type any) as the type string

【代码】Cannot use ‘**‘ (type any) as the type string。

2023-10-15 11:29:46 676

原创 golang channel关闭后能正常读写吗

关闭channel后,已经写入的正常读取完,继续读的话是类型的零值(int类型的话就是0)会报panic: send on closed channel。看下运行时源码runtime/chan.go。看下运行时源码runtime/chan.go。

2023-08-25 22:22:57 496

原创 【Golang1.20源码阅读】crypto/sha256.go

【代码】【Golang1.20源码阅读】crypto/sha256.go。

2023-08-24 09:37:35 270

原创 【Golang1.20源码阅读】bytes/buffer.go

【代码】【Golang1.20源码阅读】bytes/buffer.go。

2023-08-24 09:28:46 249

Java8 Windows64位安装包JDK

Java8 Windows64位安装包JDK

2021-04-18

软件设计师中级历年真题及2009-2017

软件设计师中级历年真题及2009-2017

2021-04-18

PHP版顺丰下单API、取消订单API、查询订单API

PHP版顺丰下单API、取消订单API、查询订单API

2021-03-07

ELK windows安装包2020最新版

elasticsearch、logstash、kibana,window安装包,ELK windows安装包2020最新版ELK windows安装包2020最新版ELK windows安装包2020最新版ELK windows安装包2020最新版ELK windows安装包2020最新版

2020-12-13

php-redis中文手册

php-redis中文手册

2018-08-25

redis-desktop-manager-0.8.8.384

redis可视化工具redis-desktop-manager-0.8.8.384

2018-08-24

redis4.1php扩展

redis4.1php扩展

2018-08-24

php Redis扩展类

Redis类PHP

2018-08-24

Qt5开发及实例

Qt5开发及实例

2018-08-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除