ETH一笔Transaction的一生
liujingze@skiff.com 在Ethereum上的每一个操作:例如注册一个ENS域名,在UNISWAP把ETH(准确的说是ETH-WETH-USDT)换成USDT都是一笔Transaction,给其他ETH地址的一笔转账,创建一个合约。本质都是一笔Transaction。我们以一个ETH主网铸造XEN操作为例,来解释这个铸造操作背后发生了什么。1. 首先通过Etherscan获得ABI和合约地址## 本地保存XEN合约abi的文件 abi_location = '/Users/ljz/PycharmProjects/mev_bot/xen.abi' ## XEN的合约地址 contract_address = "0x06450dEe7FD2Fb8E39061434BAbCFC05599a6Fb8" with open(abi_location) as file: contract_abi = json.load(file) ## 使用WEB3.py 初始化这个合约 contract = w3.eth.contract(address=contract_address,...
ETH一笔Transaction的一生
liujingze@skiff.com 在Ethereum上的每一个操作:例如注册一个ENS域名,在UNISWAP把ETH(准确的说是ETH-WETH-USDT)换成USDT都是一笔Transaction,给其他ETH地址的一笔转账,创建一个合约。本质都是一笔Transaction。我们以一个ETH主网铸造XEN操作为例,来解释这个铸造操作背后发生了什么。1. 首先通过Etherscan获得ABI和合约地址## 本地保存XEN合约abi的文件 abi_location = '/Users/ljz/PycharmProjects/mev_bot/xen.abi' ## XEN的合约地址 contract_address = "0x06450dEe7FD2Fb8E39061434BAbCFC05599a6Fb8" with open(abi_location) as file: contract_abi = json.load(file) ## 使用WEB3.py 初始化这个合约 contract = w3.eth.contract(address=contract_address,...
Aptos PythonSDK链上钱包创建验证问题
liujinge@skiff.com00 更新01 起因准备写个Aptos的脚本去抢NFT 发现本地创建的钱包没有在主网没有创建,不能查余额也转不了账。(没想到解决这个问题一个早上就过去了)先去看官方的GIthub的Issues发现7.8个相关地址激活的问题,只有一个回答是有点用的。在转账时激活账户 —(关键是我都转不了账啊。。。)或者用插件钱包去转一次钱,就能用了。(科学家怎么能用ui呢。。)但都没有给出具体完整的解决方法02 解决方式无赖只好自己啃下文档,最后发现可调用官方文档中给出的函数自己构造交易这个过程中有2个坑官方文档给出要传2个参数,但sdk里只接受一个参数。虽然可以 使用0x1::aptos_account::transfer 函数在转账时一起激活钱包但,gas并没有便宜太多,所以还是选择在创建钱包时就激活。完整代码如下""" create in : 2022/10/30 14:10 @author : Psycholab.ljz @description:本地创建钱包并进行激活 """ from aptos_sdk.account import Account ...
Aptos PythonSDK链上钱包创建验证问题
liujinge@skiff.com00 更新01 起因准备写个Aptos的脚本去抢NFT 发现本地创建的钱包没有在主网没有创建,不能查余额也转不了账。(没想到解决这个问题一个早上就过去了)先去看官方的GIthub的Issues发现7.8个相关地址激活的问题,只有一个回答是有点用的。在转账时激活账户 —(关键是我都转不了账啊。。。)或者用插件钱包去转一次钱,就能用了。(科学家怎么能用ui呢。。)但都没有给出具体完整的解决方法02 解决方式无赖只好自己啃下文档,最后发现可调用官方文档中给出的函数自己构造交易这个过程中有2个坑官方文档给出要传2个参数,但sdk里只接受一个参数。虽然可以 使用0x1::aptos_account::transfer 函数在转账时一起激活钱包但,gas并没有便宜太多,所以还是选择在创建钱包时就激活。完整代码如下""" create in : 2022/10/30 14:10 @author : Psycholab.ljz @description:本地创建钱包并进行激活 """ from aptos_sdk.account import Account ...
Orbiter王牌飞行员
liujingze@skiff.com000 更新💡 风险提示:0. 缘起做ZKsync的交互发现从orbiter跨链很方便,进而发现orbiter的也有交互任务LINK王牌飞行员需要500次的交易,每次交易的成本Layer1 - layer2 在1.8usdt-1.5usdt。之前用过很多跨链 感觉巨便宜,而且交互也很丝滑。最近学了一段时间了js了,就打算做个脚本刷一刷。思路分为四个部分首先手工走通流程看看程序,设计一下交互的流程,计算成本写代码测试迭代,存档,迁移1. 手工梳理流程大概交互了几次后,看看了optimistic上的calldata,发现有些交易是直接转账,有些是与合约交易。第一个问题出现:直接转账如何标记我跨链的目的地呢?第一反应是查官方文档,以及结合交互过程中的信息得知通过安全码来确定的。安全码即为转账数量的后四位,以下官方文档的安全码官网中有详细的跨链机制的介绍。简单但不准确的来说就是中间商帮你转账。我们optimistic可以查看相应的合约地址,我们不通过官网直接在小狐狸手动构造一笔 发送0.01eth到bsc链上相应的则是9015为安全码 精度18位一...
Orbiter王牌飞行员
liujingze@skiff.com000 更新💡 风险提示:0. 缘起做ZKsync的交互发现从orbiter跨链很方便,进而发现orbiter的也有交互任务LINK王牌飞行员需要500次的交易,每次交易的成本Layer1 - layer2 在1.8usdt-1.5usdt。之前用过很多跨链 感觉巨便宜,而且交互也很丝滑。最近学了一段时间了js了,就打算做个脚本刷一刷。思路分为四个部分首先手工走通流程看看程序,设计一下交互的流程,计算成本写代码测试迭代,存档,迁移1. 手工梳理流程大概交互了几次后,看看了optimistic上的calldata,发现有些交易是直接转账,有些是与合约交易。第一个问题出现:直接转账如何标记我跨链的目的地呢?第一反应是查官方文档,以及结合交互过程中的信息得知通过安全码来确定的。安全码即为转账数量的后四位,以下官方文档的安全码官网中有详细的跨链机制的介绍。简单但不准确的来说就是中间商帮你转账。我们optimistic可以查看相应的合约地址,我们不通过官网直接在小狐狸手动构造一笔 发送0.01eth到bsc链上相应的则是9015为安全码 精度18位一...