- 博客(150)
- 收藏
- 关注
原创 分析solidity中delegatecall和call区别
在之前的文章中,已经详细介绍了和的用法, 原文: EIP1967-实现可升级智能合约调用合约的函数,合约内会以的方式调用, 更确切地说是将的函数代码加载到的运行环境,因此,就很容易理解修改的是中的数据,而不是中的数据了。
2023-01-07 15:23:39
106
原创 FISCO BCOS的PBFT共识算法流程详解
原文: https://fisco-bcos-doc.readthedocs.io/zh_CN/latest/docs/design/consensus/pbft.htmlPBFT模块主要包括PrepareReq、SignReq、CommitReq和: 包含区块的请求包,由leader产生并向所有Replica节点广播,Replica节点收到Prepare包后,验证PrepareReq签名、执行区块并缓存区块执行结果,达到防止拜占庭节点作恶、保证区块执行结果的最终确定性的目的;
2022-12-30 17:22:22
1519
3
原创 Solidity中使用CREATE2创建确定的合约
可以创建确定的合约地址,并且事先可以知道合约地址。其实很简单, 就是在创建合约时加入。预先计算的合约地址与实际调用。创建出来的地址是一样的。
2022-12-28 18:27:18
217
原创 深入理解可升级智能合约
通过进行调用实现合约,数据是存放在代理合约中,因此当“升级”实现合约合约后,不会影响现有的数据。很像“动态库”关于和call。
2022-12-15 17:43:26
453
原创 解决Ubuntu22.04微信打不开的问题
libldap-2.4-2 : 依赖: libsasl2-2 (>= 2.1.27.1) 但是 2.1.27+dfsg2-3ubuntu1 正要被安装。E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。有一些软件包无法被安装。如果您用的是 unstable 发行版,这也许是。因为系统无法达到您要求的状态造成的。该版本中可能会有一些您需要的软件。正在读取状态信息... 完成。正在分析软件包的依赖关系树... 完成。正在读取软件包列表... 完成。
2022-11-29 10:39:31
1505
原创 Rust借用几种变化情况分析
可变借用、不可变借用这些比较绕的概念,可以理解为C语言中的。只是做一个“约定”, 这里只是为了方便理解, 不必纠结)。可以把Rust中的借用,理解为C语言中的指针,修饰符(尽管,C语言中的。
2022-11-13 12:29:24
190
原创 使用Squid在Ubuntu22.04搭建http代理服务(局域网)
参考:https://blog.csdn.net/Fei20140908/article/details/111800929。这样其他客户端就可以连接http代理了。
2022-11-10 10:51:37
416
原创 理解Rust的生命周期就是理解了Rust
Rust的设计目的是“既高性能又内存安全”,Rust的生命周期机制就是实现设计目的核心原理,围绕生命周期机制又衍生出了“所有权” 这个语法层面的规则,而这点就是Rust区别其他编程语言的最本质的特点;正是由于这些创新的概念,增加了Rust的入门门槛。
2022-10-29 14:42:54
605
原创 深度解析Optimism被盗2000万个OP事件(含代码)
本文在这篇文章深度解析 Optimism窃取事件:Layer2 网络合约部署重放攻击加以梳理和细化,并配有详细的示例代码。
2022-06-12 15:02:26
2729
原创 深入分析NFT合约源码——以Surge Women为例
深入分析NFT合约源码——以Surge Women为例github源码地址:https://github.com/youngqqcn/mynftSurge Women合约地址:0x0632aDCab8F12edD3b06F99Dc6078FE1FEDD32B0智能合约源码:surge.soltokenId: 1802opensea链接:https://opensea.io/assets/0x0632adcab8f12edd3b06f99dc6078fe1fedd32b0/1802token m
2022-05-07 14:48:23
1475
原创 搭建s9、s19、L3+维修平台
文章目录1、CH341SER,USB转串口驱动安装链接:https://pan.baidu.com/s/1MsyYLj-r4WVmqmwjCIzyLg提取码:0a1b驱动安装完成后重启电脑,设备管理器查看“端口(COM和LPT)”这里使用的USB转串口的线,可以在网上买l例如:https://item.jd.com/51952673279.htmlUSB转串口线连接控制板,下图是L3+连接方式,红色线不连下图是S17控制板的接线,黑色(GND)、绿色(RX)、白色(TX)2
2022-03-21 13:40:56
712
原创 以太坊提案(EIP)审核流程
https://eips.ethereum.org/EIPS/eip-1Idea - 预先起草的想法。在EIP存储库中不会跟踪这一点。Draft - 开发中EIP的第一个正式跟踪阶段。正确格式化后,EIP将由EIP编辑器合并到EIP存储库中。Review - 一个EIP作者标记一个EIP为准备和请求同行评审。Last Call - 这是移动到final之前的EIP的最后审核窗口。EIP编辑器将分配Last Call状态并设置评审结束日期(评审周期结束),通常是14天之后。如果在此期
2021-09-09 17:55:18
6631
原创 github的token的生成与使用
按照官方文档生成token: https://docs.github.com/en/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token (官方文档只写了怎么生成,没有说明怎么使用)如果是已有仓库则使用git remote set-url 命令, 例如: youngqqcn/htdfsdk.git 是我的仓库, git remote set-ur..
2021-08-16 17:33:06
571
1
原创 01背包问题
01背包问题(二维数组)https://mp.weixin.qq.com/s/FwIiPPmR18_AJO5eiidT6w/*再回顾一下dp[i][j]的含义:从下标为[0-i]的物品里任意取,放进容量为j的背包,价值总和最大是多少。那么可以有两个方向推出来dp[i][j],由dp[i - 1][j]推出,即背包容量为j,里面不放物品i的最大价值,此时dp[i][j]就是dp[i - 1][j]由dp[i - 1][j - weight[i]]推出,dp[i - 1][j - wei
2021-08-04 15:00:37
53
原创 STL所有算法汇总
#include <iostream>#include <algorithm>#include <string>#include <vector>#include <set>#include <random>using namespace std;/*查找算法(13个):判断容器中是否包含某个值 adjacent_find: 在iterator对标识元素范围内,查找一对相邻重复元素,找到则返回指向这对元素的
2021-07-18 17:52:22
64
原创 记录一个问题_char**和 char[][]
ubuntu 20.04不能用 使用 char** ,$ gcc --versiongcc (Ubuntu 10.3.0-1ubuntu1~20.04) 10.3.0Copyright (C) 2020 Free Software Foundation, Inc.This is free software; see the source for copying conditions. There is NOwarranty; not even for MERCHANTABILITY or F
2021-07-16 19:04:36
124
原创 centos调试golang
vi /etc/yum.repos.d/CentOS-Debuginfo.repo修改enable 为 1yum install nss-softokn-debuginfo –nogpgcheck yum-utils -ydebuginfo-install glibc-2.17-324.el7_9.x86_64 leveldb-1.12.0-11.el7.x86_64 libgcc-4.8.5-44.el7.x86_64 libstdc++-4.8.5-44.el7.x86_64 snappy-1
2021-06-29 18:17:39
120
原创 Redis-04-set
一、概述: 在Redis中,我们可以将Set类型看作为没有排序的字符集合,和List类型一样,我们也可以在该类型的数据值上执行添加、删除或判断某一元素是否存在等操作。需要说明的是,这些操作的时间复杂度为O(1),即常量时间内完成次操作。Set可包含的最大元素数量是4294967295。 和List类型不同的是,Set集合中不允许出现重复的元素,这一点和C++标准库中的set容器是完全相同的。换句话说,如果多次添加相同元素,Set中将仅保留该元素的一份拷贝。和List类型相比,Set类型在功能上还存在
2021-06-08 10:33:46
44
原创 Redis-05-sortedset
一、概述:Sorted-Sets和Sets类型极为相似,它们都是字符串的集合,都不允许重复的成员出现在一个Set中。它们之间的主要差别是Sorted-Sets中的每一个成员都会有一个分数(score)与之关联,Redis正是通过分数来为集合中的成员进行从小到大的排序。然而需要额外指出的是,尽管Sorted-Sets中的成员必须是唯一的,但是分数(score)却是可以重复的。在Sorted-Set中添加、删除或更新一个成员都是非常快速的操作,其时间复杂度为集合中成员数量的对数。由于Sorted-Sets中
2021-06-08 10:33:31
39
原创 Redis-06-key操作
一、概述:针对key的通用操作二、相关命令列表:命令原型 时间复杂度 命令描述 返回值KEYS pattern 获取所有匹配pattern参数的Keys。需要说明的是,在我们的正常操作中应该尽量避免对该命令的调用,因为对于大型数据库而言,该命令是非常耗时的,对Redis服务器的性能打击也是比较大的。pattern支持glob-style的通配符格式,如*表示任意一个或多个字符,?表示任意字符,[abc]表示方括号中任意一个字母。 匹配模式的键列表。DEL key [key …] 从数据库删除中参
2021-06-08 10:33:16
61
原创 vscode golang 调试器断点无效一直是“未验证的断点”
我已经提交了issue: https://github.com/go-delve/delve/issues/2526简而言之,我的代码目录是一个软件链接,目前的我使用绝对路径打开代码目录就可以正常命中断点,可以正常调试,而使用相对路径打开代码目录则调试器不能命中断点。...
2021-06-04 19:07:57
1443
原创 Redis-08--主从复制
一、Redis的Replication:下面的列表清楚的解释了Redis Replication的特点和优势。1). 同一个Master可以同步多个Slaves。2). Slave同样可以接受其它Slaves的连接和同步请求,这样可以有效的分载Master的同步压力。因此我们可以将Redis的Replication架构视为图结构。3). Master Server是以非阻塞的方式为Slaves提供服务。所以在Master-Slave同步期间,客户端仍然可以提交查询或修改请求。4). Slave S
2021-06-03 09:54:51
29
1
原创 Redis-09-持久化
一、Redis提供了哪些持久化机制:1). RDB持久化:该机制是指在指定的时间间隔内将内存中的数据集快照写入磁盘。 2). AOF持久化:该机制将以日志的形式记录服务器所处理的每一个写操作,在Redis服务器启动之初会读取该文件来重新构建数据库,以保证启动后数据库中的数据是完整的。3). 无持久化:我们可以通过配置的方式禁用Redis服务器的持久化功能,这样我们就可以将Redis视为一个功能加强版的memcached了。4). 同时应用AOF和RDB。二、RDB机制的优势和劣势:
2021-06-03 09:54:36
24
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人