Tiny熊

@tiny

登链社区发起人 通过区块链技术让世界变得更好而尽一份力。

注册于 2017-10-20
多链部署:无密钥部署与CreateX

视频 AI 总结: 视频补充了多链部署中实现相同合约地址的两种方法:一是使用专用部署账号按顺序部署,二是通过工厂合约(使用CREATE2)实现。重点讲解了“无密钥部署”(Keyless Deployment)方法,由Nick提出,通过ECDSA签名推导地址,使私钥不可知,确保工厂合约在所有链上地址一致。还介绍了createX合约,它改进了多链一致性,解决了签名抢跑问题(在salt中加入msg.sender),并支持部署时立即初始化。推荐使用createX作为通用多链一致合约部署方案。 关键信息: - 多链部署常见需求,同一合约在各链上拥有相同地址便于维护和用户体验。 - 两种实现方式:专用部署账号(需按顺序且不发送其他交易)和工厂合约(通过CREATE2/3)。 - 无密钥部署:先计算签名,再根据交易哈希推导出地址,私钥无人知晓,工厂合约在各链上部署时地址一致。 - 无密钥部署需避免使用链ID,否则签名在不同链上不一致。 - createX合约:支持多种创建方式(CREATE2、CREATE3),解决抢跑问题(salt组合msg.sender),并支持部署时立即初始化。 - 普通项目用专用账号即可,通用设施推荐createX。

14 0 0 2026-06-02
以太坊账户抽象:ERC-4337与EIP7702

视频 AI 总结:该视频全面讲解以太坊账户抽象(AA),从EOA和CA的优缺点切入,介绍账户抽象目标。重点分析了EIP-4337(链下方案,引入Bundler等,但Gas高、采用率低)和EIP-7702(协议层改进,允许EOA临时拥有合约代码,实现批量交易、Gas代付,Gas更低、兼容性好),并演示7702的使用及注意事项,指出以太坊未来将偏向原生AA方案。 关键信息: 1. EOA存在私钥难记、无法批量交易等缺陷;CA灵活但无法主动发起交易,账户抽象旨在融合两者。 2. EIP-4337:引入UserOperation、Bundler、EntryPoint、Paymaster,实现合约账户的灵活逻辑,但交易链路变长、Gas成本高、采用率低。 3. EIP-7702:允许EOA通过委托调用临时加载合约代码(EF0100开头),支持批量交易、Gas代付、多签和社交恢复,Gas较低,可复用现有EOA资产。 4. 7702使用注意事项:不能依赖tx.origin区分EOA/合约;委托合约不应写入存储;可复用现成的Delegate合约。 5. 7702属于协议层改进,需以太坊升级引入新交易类型;4337属于应用层标准,未改共识层。 6. 未来方向:以太坊倾向于原生AA(如7702),减少对链下方案的依赖。

27 0 0 2026-06-02
VibeCoding: 基于ERC2612 实现 PermitToken

视频 AI 总结: 1. 视频核心内容:讲解如何基于ERC2612实现Permit Token,并通过离线签名+单笔交易(Permit Deposit)替代传统两笔交易(先approve再deposit)的流程,降低Gas费、提升用户体验。演示了合约代码修改、前端签名交互及整体流程对比。 2. 关键信息: - ERC2612标准新增permit方法,支持离线授权签名(无需Gas费)。 - 传统deposit需两笔交易(approve + deposit),Permit Deposit将签名作为参数一次性调用合约,只需一笔交易。 - 离线签名在前端完成并保存,随后发起交易时携带签名即可。 - 合约中新增permitDeposit函数,内部先验证签名再执行transferFrom。 - 前端需要处理签名生成与存储,并调用新的合约方法。 - 项目前后端合并可让AI更高效分析代码。 - 使用Gemini Flash模型辅助编写代码。

23 0 0 2026-05-30
VibeCoding: 基于 EIP-712 签名实现白名单购买

视频 AI 总结:视频讲解了NFT合约中实现VIP白名单购买的PermitBuy功能。通过后端对白名单用户进行EIP-712签名,用户获取签名后调用合约,合约验证签名是否来自授权签名者,从而实现白名单购买。这种方法比Mapping更高效,且将签名者与Owner分离提升安全性。视频最后展示了测试脚本并确认通过。 关键信息: 1. 使用Mapping设定白名单简单但Gas成本高;新的离线签名方案更优。 2. 签名采用EIP-712标准,防止重放攻击;签名内容包含用户地址、Token ID、有效期等。 3. 设置专门的WhiteListSigner角色,与Owner权限分离,降低安全风险。 4. 合约通过ecrecover验证签名,确认签名者为授权地址后执行NFT与Token的交换。 5. 视频包含完整测试,所有测试通过。

27 0 0 2026-05-30
VibeCoding: 使用 Permit2 进行 ERC20 授权与转账

视频 AI 总结: 本视频主要讲解如何在智能合约中集成Permit2,以简化ERC20代币的授权和转账流程。通过对比传统方案(每次存款需执行Approve)与Permit2方案,展示用户只需一次性授权给Permit2合约,后续通过签名即可完成存款,减少交互步骤。视频还强调了Permit2签名的数据格式、前端检查授权状态、以及使用测试网或Fork方式部署Permit2合约的注意事项。 关键信息: 1. 传统方案每次存款需两次操作:Approve + 转账。 2. Permit2方案只需一次无限额授权(第0步),之后每次存款仅需签名 + 调用Deposit with Permit2。 3. Permit2合约通过签名验证和TransferFrom将代币从用户转到目标合约。 4. 前端需检查用户是否已授权给Permit2,若无则引导授权。 5. Permit2合约有固定地址(如0x000…),可用Fork方式在本地测试。

27 0 0 2026-05-30
以太坊合约地址推导与创建

视频 AI 总结: 这段视频详细讲解了以太坊上合约地址的推导原理、不同创建合约的方式(CREATE、CREATE2、CREATE3)及其应用场景,并介绍了最小代理(Minimal Proxy)如何通过代码复用大幅降低批量部署成本。核心目标是实现可预测、多链一致的合约地址,同时优化Gas消耗。 **关键信息:** 1. **CREATE**:地址由创建者地址与交易 nonce 决定,nonce 不同会导致不同链上相同合约得到不同地址,且地址与合约代码无关。 2. **CREATE2**:引入 salt 和 init code 哈希,地址与 nonce 无关,代码和 salt 相同即可在不同链上得到同一地址;重复创建同一地址会失败(合约已存在)。 3. **CREATE3**:是一个库,先通过 CREATE2 部署部署器合约,再用部署器通过 CREATE 部署最终合约,彻底解除了地址与 nonce 和合约字节码的绑定,适用于字节码可能在不同链上不一致的场景。 4. **最小代理(EIP-1167)**:部署一个极小的代理合约,利用 delegatecall 将调用转发给固定实现合约,实现代码复用,大幅降低批量部署成本;但无法使用构造函数,需额外调用 init 方法初始化。 5. **多链一致性应用**:如 Safe 钱包工厂,使用 CREATE2 和固定 salt(用户地址)确保钱包地址在所有 EVM 链上相同,未部署时也可接收资产。 6. **EVM 合约销毁**:目前已被弃用,合约部署后无法被销毁。

30 0 0 2026-05-30
交易所钱包系统运行实践

视频 AI 总结: 该视频演示了如何启动一个名为CEX钱包的托管钱包系统,涉及多个独立服务模块(Scan、Wallet、Signer、风控、数据库网关)的部署与配置。通过逐步操作,展示了环境搭建、数据库初始化、密钥配置、原生以太坊节点启动、代币部署、用户充值监听及提现模拟的完整流程,强调了各服务间的签名验证机制和数据流转逻辑。 关键信息: - 系统包含扫描、钱包业务、签名机、风控、网关等独立模块,每个模块有独立数据库。 - 写操作需双签名验证:业务模块或风控模块各自签名后,网关验证。 - 签名机需在启动时输入数据池和密码,用于推导地址并存储,后续验证地址一致性。 - 本地链模拟需设置 `--block-time 1` 使区块每秒出块,以便判断交易最终性。 - 模拟测试中,合约地址和用户地址可能因签名机配置不同而异,需手动替换或通过脚本动态读取数据库。 - 大额提现触发人工审核,审核通过后系统自动完成交易并跟踪上链确认。

16 0 0 2026-05-29
以太坊离线签名应用

视频 AI 总结: 本次视频主要讲解以太坊签名在智能合约中的应用。首先回顾签名基础知识(交易签名与身份认证),然后重点介绍EIP-191和EIP-712标准,说明如何对结构化数据进行签名及验证。视频还展示了离线签名的实际用例,包括ERC20的Permit(ERC-2612)和Permit2,实现无需持有ETH即可转账、减少手续费依赖,并提升用户体验。通过签名的线下操作,可让接收方代付手续费,降低用户门槛。 关键信息: 1. 签名本质是椭圆曲线算法,任何人都可验证,签名数据需统一编码(哈希)后签出。 2. EIP-191区分交易与非交易签名,并规定前缀防误认;EIP-712定义结构化数据签名的规范,包含域(domain)防止签名重放。 3. 离线签名允许用户离线签署授权,由他人(如收款方)提交上链并支付手续费,用户无需持有ETH。 4. ERC-2612(Permit)实现ERC20的离线授权,将approve和transfer合并为一笔交易。 5. Permit2是全局授权合约,用户只需授权一次,后续所有支持Permit2的协议可共享该授权,并通过离线签名完成转账。 6. 应用场景包括代币存款、白名单购买、NFT授权等,可显著降低用户交互成本。

43 0 0 2026-05-29
如何开发中心化交易所托管钱包

视频 AI 总结: 本视频系统讲解了中心化交易所托管钱包的开发设计,重点围绕充值与提现流程、私钥安全管理、资金分层调度、交易扫描与区块重组处理,以及风控与双签名机制。代码已在GitHub开源,适合作为交易系统后端开发的技术参考。 视频中提出的关键信息包括: - 私钥管理:通过HD钱包(BIP32/44/39)和签名机实现,私钥仅存于进程内存,不落数据库。 - 资金分层:热钱包(小额快速)、多签钱包(中额)、冷钱包(大额),并设置资金自动平衡程序。 - 充值实现:为每个用户生成独立地址,通过扫描链上交易(含ERC20的Transfer事件)更新流水记录,并处理区块重组回滚。 - 提现实现:由热钱包发起交易,需维护nonce避免空洞,通过eth_feeHistory优化gas费,并支持用户等级调节tip。 - 风控与双签名:引入独立风控模块和dbgate网关,数据写入需业务与风控双签名验证;Safe多签钱包升级为含机器人bot的6/4签名架构,提升安全性。

31 0 0 2026-05-28
VibeCoding:实现命令行钱包

视频 AI 总结: 本节课讲解如何编写一个命令行钱包,核心是使用 web3 工具构造并签名交易发到链上,同时设计成可供 AI agent 调用的工具。强调 agent 不能直接掌握私钥,需通过 keystore 或环境变量安全加载。钱包功能包括生成私钥、查询余额、执行 ETH/ERC20 转账,参数从命令行获取。最后演示了构建交易、评估 gas、发送交易的全过程。 关键信息: 1. 命令行钱包使用 web3 工具构造交易并签名,支持 ETH 和 ERC20 转账。 2. 私钥安全加载方式有 keystore(推荐)、助记词、环境变量,agent 不能直接掌握私钥。 3. 功能包括生成私钥、查询余额、根据命令行参数(to 地址和金额)执行转账。 4. 交易流程包括评估 gas、构建对象、签名并发送,网络可在环境变量中配置。 5. 可打包为独立命令,并建议用 keystore 加密码方式避免 agent 扫描到私钥文件。

23 0 0 2026-05-28