- 博客(42)
- 收藏
- 关注
原创 `removeLiquidity` vs `removeLiquidityWithPermit` 深度对比
Uniswap V2 中 removeLiquidity 和 removeLiquidityWithPermit 的核心区别在于授权机制和用户体验。前者需要预授权(2笔交易),后者通过签名一次完成(1笔交易)。removeLiquidityWithPermit 采用 EIP-712 签名授权,虽然增加了签名验证成本(约28,000 Gas),但减少了整体 Gas 消耗(约18,000 Gas)。高频操作适合传统方式配合无限授权,而单次操作推荐使用带签名的版本。签名方式通过 nonce 和 deadline
2025-07-18 13:30:46
456
原创 Flash Swap 与正常 Swap 的区别
特性正常 SwapFlash Swap资金要求需要预先持有代币无需预先持有,依赖原子性还款交易流程直接交换代币借款 → 操作 → 还款风险低(仅市场风险)高(操作失败则交易回滚)收益固定(代币兑换)潜在高收益(无本金套利)智能合约逻辑简单调用swap需要实现回调函数用户调用入口Router 合约的 Swap 函数(如直接调用 Pair 合约的swap函数,并传入非空data核心逻辑Router 计算路径 → 调用多个 Pair 合约的swaptestFlashSwap调用Pair 合约的。
2025-07-18 13:29:53
496
原创 Uniswap V2 移除流动性代码的解释(三)
Uniswap V2移除流动性的流程如下:用户需持有LP Token并授权合约转移,调用Router的removeLiquidity函数后,LP Token转移至Pair合约。Pair合约的burn函数计算应返还的代币比例(包含累积手续费),销毁LP Token并向用户转账两种代币。整个过程通过滑点控制(amountAMin/BMin)保障用户权益,并更新储备量等状态。V2的手续费实时计入储备池,用户退出时按当前份额比例(含历史累积手续费)获得对应代币。
2025-07-15 18:41:58
766
原创 computeProfitMaximizingTrade的迷思和思考
本文探讨了UniswapV2官方库中computeProfitMaximizingTrade函数的正确逻辑,指出常见认知误区。文章首先批判了认为套利会使两个池子价格完全一致的错误观点,强调套利者追求的是利润最大化而非价格趋同。通过数学推导,展示了正确的利润计算公式,并详细解释了官方代码的实现原理。
2025-07-15 18:40:57
463
原创 Uniswap V2 添加流动性代码的解释(二)
Uniswap V2添加流动性流程主要包括:1)选择交易对并查询是否存在;2)准备两种代币并确保余额充足;3)调用Router合约的addLiquidity函数,该函数会计算最优代币比例(使用恒定乘积公式),将代币转入交易对合约;4)通过mint函数铸造LP Token给流动性提供者。首次添加流动性时直接采用用户输入的代币数量,非首次则根据现有储备量按比例计算最优添加数量。整个过程确保了代币添加比例与当前池中比例一致,维持了x*y=k的恒定乘积关系。
2025-07-13 21:56:38
1125
原创 Uniswap V2 核心功能的合约解释和流程解释(一)
Uniswap V2由核心合约(core)和外围合约(periphery)组成。核心合约包括:UniswapV2Factory(创建管理交易对)、UniswapV2Pair(实现流动性池算法)、UniswapV2ERC20(LP Token)。外围合约UniswapV2Router02提供用户友好的接口,UniswapV2Library包含工具方法。 关键功能流程: 添加流动性:用户存入两种代币,获得代表份额的LP Token 移除流动性:销毁LP Token,取回对应比例;代币交换:通过恒定乘积公式x*y
2025-07-13 21:53:40
612
原创 微支付通道的测试-remix的使用此账号签署消息
在进行微支付通道的测试的时候,由于我不想用web3.js 或者是Ethers.js 去写代码了,然后突然发现remix好像也有账号的签名。然后我找了一下,发现没有找到这个的解释就自己测试了一下。2.使用computersignature2计算:接受者的地址,金额(单位是wei),nonce。1.先全部部署,在部署ReceiverPays时,要转账。表明remix 上的签名确实是。3.生成ower的合法签名。4.支付:输入测试参数。
2025-07-02 13:55:35
313
原创 IEEEtran中文献中的作者大于3个时,用et al.省略
在使用bib文件的时候,当参考文献超过三个作者时,第三个作者后加逗号并接上et al.。我使用的是IEEEtran.bst。1.需要将IEEEtran.bst添加到这个tex文件下的那个目录下,修改IEEEtran.bst 为。2.全网搜索:bbl.etal。
2025-05-20 21:31:19
305
原创 vscode 配置服务器远程连接
在9.输入两次密码 的时候,我发现我登入不进去,然后点击右下角的查看detail的时候,发现那个username变成了我Windows下的用户名,而不是配置中的名字。2.通过1来选择ssh,**但是请注意,刚安装的人是没有红框2的。username是指你服务器你要登录的用户名,192. . .131是指你的服务器的IP地址。3.来到终端,输入ssh username@192. . .131,进行连接你的服务器。7.选择配置文件,下面两个都可以,如果选择c:可能会出问题,往后看。的时候遇到了一个问题。
2025-03-19 23:20:02
1016
原创 BibTeX 条目的 `author` 字段的显示
一般推荐使用姓在前、名在后,用逗号分隔的方式,这样能更清晰地让 BibTeX 识别作者的姓和名,减少因姓包含多个单词等情况导致的识别错误。请注意有多个名的情况下,要有空格,一般网址给的可能没有空格。
2025-02-27 16:44:30
517
原创 win10下安装wireshark的问题
安装完winpcap再安装卸载安装wireshark。不过不要勾选安装npcap。可能你的电脑安装不了这个。所以换一个思路去安装winpcap代替npcap。2、直接删除 可能有四个,也可能只有两个文件。直接删除 可能有四个,也可能只有两个文件。应该是没有卸载干净,用geek去卸载。应该是在安装中有一个问题被忽视了。1、首先卸载原来的版本。这个问题和之前一样。
2025-02-27 14:50:39
1174
原创 latex常见长度单位
在实际应用中,选择合适的单位对于保持文档的一致性和美观非常重要。em和ex适合用于相对定位,而ptcmmm等则更适合固定尺寸的设计。了解这些单位之间的关系可以帮助你更好地控制文档布局。如果你有具体的换算需求或其他问题,请随时提问!
2024-10-19 00:28:05
862
原创 Latex 插入图片或表格导致页面空白过多
这个在上面就减少上面的垂直间距,在下面就减少下面的垂直间距。Latex 插入图片或表格导致页面空白过多。我们可以采用这个方式来减少空白。
2024-08-24 19:25:15
3337
原创 latex 编译失败但是问题不显示报错
他的描述是xdvipdfmx:fatal: Unable to open “text.pdf”. 不能打开这个pdf.然后我在网上找了一下也没有找到。关闭wps打开的文件,然后重新编译。然后我发现我用wps打开了这个文件。
2024-08-23 16:13:31
903
原创 latex中的参考文献中文章显示的问题(出现了参考文献的反向超链接和网页跨栏)
在使用latex插入参考文献的时候,最后面总是会出现这种代号。(document) 或者是对应的章节 比如 2.3。正式来讲,这个叫超链接的BACKREF。1.问题 出现了参考文献的反向超链接,有(document) 或者是对应的章节 比如 2.3。2.参考文献中出现网页跨栏了。
2024-08-20 22:52:03
538
原创 决策性双线性Diffie-Hellman(DBDH)假设
**群与生成元**:我们有两个群\( G_1 \)和\( G_2 \),它们的阶都是素数\( p \)。群\( G_1 \)有一个生成元\( g \)。- **算法\( \mathcal{A} \)的优势**:\( \mathcal{A} \)在解决DBDH问题上的优势被定义为当\( T = e(g, g)^{c_1c_2c_3} \)时\( \mathcal{A} \)正确识别\( T \)的概率与当\( T \)从\( G_2 \)中随机选取时\( \mathcal{A} \)输出1的概率之差。
2024-08-10 18:33:14
851
原创 Blockchain-Aided Anonymous Traceable and Revocable Access Control Scheme With Dynamic Policy Updatin
Blockchain-Aided Anonymous Traceable and Revocable Access Control Scheme With Dynamic Policy Updatin的比较重要的错误。算法9中的紫色部分应该改为要不然计算不对。
2024-08-05 18:10:59
385
原创 npm -v 报错 Error: Cannot find module ‘node:path‘
我是直接去idea中的配置界面这里删除之前的npm版本,才不报错。我之前是node20版本,然后降低版本node6.11.用nvm。
2024-07-17 22:22:33
2851
原创 大模型进行学术论文翻译和润色
你输入:假设你是一名资深的英语学术作者,请帮我润色一些英文段落,确保生成的内容符合专业学术期刊的语言风格。2.提供确切定义,确保你的术语和定义准确无误,特别是对于领域的专有名词和术语;你输入:假设你是一名资深的中英文翻译大师和英语学术作者,请帮我翻译一些中文段落成英文,确保你的语言符合专业学术期刊的语言风格。废话不多说,首先你得先有一个gpt账号,然后可以正常使用,这里推荐使用靠谱的调用openAI的官方API的国内版gpt,比较稳定且没有封号风险,不需要魔法。你输入:(你想要翻译的内容)
2024-07-17 22:16:01
1365
原创 大模型进行学术论文翻译和润色
你输入:假设你是一名资深的英语学术作者,请帮我润色一些英文段落,确保生成的内容符合专业学术期刊的语言风格。2.提供确切定义,确保你的术语和定义准确无误,特别是对于领域的专有名词和术语;你输入:假设你是一名资深的中英文翻译大师和英语学术作者,请帮我翻译一些中文段落成英文,确保你的语言符合专业学术期刊的语言风格。废话不多说,首先你得先有一个gpt账号,然后可以正常使用,这里推荐使用靠谱的调用openAI的官方API的国内版gpt,比较稳定且没有封号风险,不需要魔法。你输入:(你想要翻译的内容)
2024-07-05 15:57:58
484
原创 Windows10 下 VSCode 配置 LaTeX format 自动格式化
因为我发现latexindent新的文件目录不太一样了,并且我没有找到正确的,所以自己写一个。
2024-07-04 23:08:36
944
原创 Github邮件联系项目源代码作者的方法
把这个网站的使用选项都勾选,然后再最下面点击Generate Token.我们需要用到一个工具github-email。GH_EMAIL_TOKEN 没有设置。保存这个token.设置好之后可以使用了。
2024-05-02 21:12:40
1140
2
原创 CPABE中KUNodes或者是KEK树实现属性撤销
这样就获得了AGK’x,而被撤销的用户是没有办法获得的,被撤销的用户u2,PATH2={KEK9,KEK4,KEK2,KEK1} ,没有并集,获取不到更新的AGK’x。对所有用户需要构建这样的一颗二叉树,若v是叶子节点,则PATH(v)表示从v到根集合的所有节点集合(包括叶子节点v和根节点),若v是一个非叶子节点,则v_l表示v的左孩子节点,v_r表示其右孩子节点,我们假设树中的节点被编码为唯一的字符串。首先将已撤销节点的所有祖先标记为已撤销节点,然后输出已撤销节点的所有未撤销子节点。
2024-04-27 12:09:00
1219
原创 docker中安装Vi E: Unable to locate package vi 或者源有问题
在docker中使用vim修改文件,vim: command not found 说明vim没有安装。
2024-03-29 23:29:34
857
1
原创 pycharm连接远程服务器的docker容器进行运行和调试代码
在这里插入图片描述](https://img-blog.csdnimg.cn/direct/7d179d4c659b41a68f79cf7ee3771e9d.png。3.在右边的设置标签中点add,这个是配置好的,这个python中也可以选python版本,如果有的话,中间是选择镜像,先设置IP。首先声明这并不是通过ssh那个去连接docker容器,而是去使用dockers镜像。2.点New,然后设置服务器IP和之前设置docker的端口。2.docker可以被连接,且有镜像。7.设置对应关系,结束。
2024-03-23 22:19:27
1468
原创 Linux使用vi编辑文件报错:E212: Can‘t open file for writing Press ENTER or type command to continue
一般错误原因都是前者,解决方案是在使用vi命令打开文件时,前面加上sudo来临时提供管理员权限,比如使用命令“sudo vi hosts”打开编辑文件。但是还有一种可能就是你编辑的这个文件,没有这个文件夹,也没有这个文件。2.此文件可能正被其他程序或用户使用。1.当前用户的权限不足。
2024-03-22 23:28:07
3928
2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人