区块链开发

微信扫码分享
如何开发中心化交易所托管钱包

如何开发中心化交易所托管钱包

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

27 0 0 2026-05-28 09:47
VibeCoding:为 TokenBank 开发前端

VibeCoding:为 TokenBank 开发前端

视频 AI 总结: 本视频讲解了为Token Bank合约添加前端界面的过程,重点介绍了DApp与钱包交互的常见方式(浏览器插件钱包、原生应用钱包),以及游戏类应用的特殊处理(内部集成钱包)。演示了使用AI工具(如DeepSeek、Claude)辅助编写前端代码和接入APKIT钱包SDK,并分析了开发中的常见问题与调试方法。 关键信息: 1. DApp前端交互的常见模式:通过浏览器插件钱包(如MetaMask)或原生应用钱包(如手机App)发起交易。 2. 游戏类DApp的特殊方案:在应用内部集成轻量钱包,本地存储私钥/助记词,避免频繁弹窗签名。 3. AI辅助开发:利用AI工具(如DeepSeek、Claude)生成前端代码、修改合约交互、调试错误,但需注意AI知识库可能过时。 4. 接入AppKit钱包:安装SDK,修改钱包连接逻辑(用useAppKit替换useConnect),配置Provider,支持扫码和WalletConnect。 5. 开发调试建议:明确指定技术方案给AI,交叉验证方案,及时记录AI的常见错误以优化提示。

15 0 0 2026-05-26 10:14
OpenSpace 公开课 Aleo:ZK驱动的隐私区块链

OpenSpace 公开课 Aleo:ZK驱动的隐私区块链

视频 AI 总结: 该视频是Aleo基金会开发者关系负责人ZK的分享,主要介绍Aleo通过零知识证明(ZK)实现默认隐私的区块链解决方案。他强调,没有隐私的加密货币难以实现大规模应用,而Aleo通过自研Leo语言抽象底层ZK复杂性,让开发者轻松构建隐私应用。视频还介绍了Aleo的最新进展,如隐私稳定币USDCX/USDA、官方钱包Show Wallet、记录扫描与委托证明服务、动态分发器升级、代币总量上限设定等,并讨论了隐私与监管的平衡、UTXO与账户混合模型的应用,以及未来在支付、DeFi、游戏等领域的潜力。 关键信息: - Aleo利用ZK技术实现数据隐私,默认所有数据加密,但可选择性披露给监管。 - 自研Leo DSL极大降低ZK开发门槛,开发者无需懂底层电路。 - 采用UTXO+账户混合模型,兼顾隐私与可编程性(合约使用account-based,用户使用UTXO)。 - 近期推出隐私稳定币(与Circle合作)、官方钱包(含扫描和委托证明服务,并集成TEE保证隐私)、跨链桥、动态分发器(支持运行时调用其他合约)、代币上限50亿等。 - 交易生成证明时间:简单转账约3-5秒,复杂操作(如添加流动性)约5-7秒。 - 隐私应用方向:支付、DeFi(消除MEV)、游戏(隐藏状态)、身份认证等。 - 针对监管采用“选择性披露”,仅向指定方暴露必要信息,符合合规要求。 - 开发者支持:线上IDE Leo Playground、技术社区(Discord/Telegram)、生态资源曝光,资助偏向成熟有商业计划的项目。

192 0 0 2026-05-06 18:22
与 Solana 链交互

与 Solana 链交互

视频 AI 总结: 本课程主要讲解了Solana开发中的本地测试环境切换(从Solana test validator换为Surfpool)、Anchor测试与TypeScript测试的实践、后端脚本与前端交互的核心流程(如创建Connection、Provider和Program),以及数据解析方法(包括监听日志、扫区块和PDA账户解码)。同时介绍了Solana Kit和Kodama等新工具的使用。 关键信息: 1. 默认本地模拟链从Solana test validator改为Surfpool,需调整代码。 2. 测试分为Rust测试(Anchor test)和TypeScript测试(使用Mocha框架)。 3. 后端脚本:通过Connection、Wallet、Provider和IDL创建Program实例,随后调用合约指令并解析PDA账户数据。 4. Web3.js常用操作:转账(System Program Transfer)、请求空投、确认交易。 5. 数据获取方式:监听日志/账户变化(适用于新数据);扫区块(通过getBlock遍历交易,按discriminator匹配指令并解码);通过getSignatures获取地址相关交易。 6. 前端交互:推荐使用Solana Kit和Kodama工具,根据IDL生成TypeScript客户端,通过钱包连接后调用合约。 7. 数据解析:自定义程序需手动解码二进制数据(使用Borsh Coder),系统程序可直接解析。

32 0 0 2026-04-28 08:11
开发第一个 Solana 程序

开发第一个 Solana 程序

视频 AI 总结: 本视频主要讲解了 Solana 区块链的开发流程,通过几个简单的程序案例演示了从创建账号、部署程序到交互的全过程。核心内容包括: 1. **Solana 开发基础**:视频首先回顾了 Solana 的运行原理(出块和账户模型),并强调了其与以太坊的关键区别:程序本身无状态,数据存储在 PDA(程序派生地址)账户中,且程序默认可升级。 2. **开发环境与工具**:介绍了 Solana 的开发环境设置,包括使用命令行工具生成账号、领取测试网“水龙头”资金,以及使用 Anchor 框架(类似于以太坊的 Foundry)来简化程序编写、编译和部署。视频还展示了 Solana Playground(一个在线 IDE)用于快速开发和测试。 3. **程序开发案例**:通过三个具体案例演示了开发流程: * **案例一(简单加法程序)**:创建一个仅执行加法并打印结果的程序,展示了程序的编写、编译和部署过程,并解释了部署时涉及的多账户交互和代码分块上传机制。 * **案例二(数据存储程序)**:演示了如何创建一个账户来存储数据(非 PDA),讲解了初始化指令、账户签名权限以及数据存储结构。 * **案例三(PDA 数据存储程序)**:展示了如何使用 PDA 为每个用户创建独立的存储账户(类似于以太坊中的 Mapping 结构),实现了用户特定数据的存储和管理。 4. **关键操作演示**:视频中实时演示了账号创建、资金领取、程序部署(本地和测试网)、以及通过客户端调用程序指令并查看交易日志和数据状态的过程。 **视频中提出的关键信息:** * Solana 程序与数据分离,数据存储在独立的账户(尤其是 PDA)中。 * Anchor 是主要的开发框架,提供了宏、库和命令行工具来简化开发。 * 程序部署成本较高,需要足够的 SOL 余额来支付存储空间租金。 * 开发流程包括:创建/配置账号、编写程序、编译、部署、以及通过客户端 SDK(如 TypeScript)进行交互。 * PDA 允许程序为不同用户派生和管理独立的存储空间。 * Solana Playground 提供了便捷的浏览器内开发环境。

82 0 0 2026-04-24 09:36
VibeCoding: TheGraph 实战 NFTMarket 事件索引

VibeCoding: TheGraph 实战 NFTMarket 事件索引

视频 AI 总结: 本视频主要讲解了如何使用 The Graph 索引 NFT 市场的上架(List)与成交(Sold)信息,并重点探讨了如何建立两者之间的关联。由于同一 NFT 可能多次上架,仅靠 Token ID 无法唯一匹配。视频提出了两种解决方案:一是修改合约,在事件中增加全局唯一的 List ID;二是在 Subgraph 逻辑中建立“中间表”记录当前活跃上架信息,通过 Token ID 匹配并关联原始交易哈希。最后强调了在设计智能合约事件时,应预先考虑数据索引的便利性。 视频中提出了以下关键信息: 1. **关联难题**:在 NFT 市场中,同一个 Token ID 可能被多次上架和售出,简单的 Token ID 关联会导致新旧记录混淆,难以精准匹配某次成交对应的具体上架时间。 2. **合约层解决方案**:在 `List` 和 `Sold` 事件中引入全局递增的 `List ID` 作为唯一主键,这是最直接、查询效率最高的方法。 3. **Subgraph 层解决方案(无需改合约)**: * 创建一个不可变的 Listing 全量表,以交易哈希(Transaction Hash)为 ID。 * 创建一个“当前上架(Current Listing)”中间表,记录 Token ID 与对应上架记录的映射。 * 成交时,通过 Token ID 从中间表找到对应的上架信息,完成关联后删除该中间记录。 4. **唯一性标识**:在区块链索引中,交易哈希是确保记录唯一性的重要手段。 5. **开发建议**:开发者在编写智能合约时,应具备“数据索引思维”,通过优化 Event 触发信息(如增加关联 ID),可以极大简化后续的数据分析和前端调用难度。 6. **实操演示**:展示了如何利用 AI 辅助生成 Subgraph 代码,并解释了处理逻辑中如何维护实体状态。

47 0 0 2026-04-17 08:32
VibeCoding:实现质押挖矿

VibeCoding:实现质押挖矿

视频 AI 总结: 本视频是一节关于智能合约开发的实战课程,重点讲解了如何实现一个“质押 ETH 产出 KK Token”的 Staking 合约。核心逻辑参考了 SushiSwap 的 MasterChef 算法,通过区块高度和质押份额动态计算奖励。视频演示了利用 AI 辅助编写代码的过程,包括 KK Token 的铸造权限管理、质押与解质押逻辑的实现,并强调了在解质押时自动结算奖励以优化用户体验,最后通过 Foundry 框架验证了多用户场景下的奖励分配准确性。 **关键信息:** 1. **业务逻辑:** 用户质押 ETH,合约根据质押数量和时长实时铸造(Mint)KK Token 作为奖励。 2. **权限管理:** KK Token 初始发行量为 0,Staking 合约必须被设置为 KK Token 的 Owner,才具备调用 `mint` 方法的权限。 3. **奖励算法:** 采用 MasterChef 经典模型,设定每个区块产出固定数量(如 10 个)的 Token,按质押比例分配。 4. **合约功能:** 实现 `stake`(质押)、`unstake`(提取本金)和 `claimReward`(领取奖励)三个核心接口。 5. **逻辑优化:** 建议在用户执行 `unstake` 时自动触发奖励结算与发放,避免用户需要手动多次操作,同时确保数据一致性。 6. **测试验证:** 使用 Foundry 进行测试,通过模拟区块推进(Roll)来验证单用户及多用户在不同权重下的收益分配是否符合预期。

52 0 0 2026-04-09 08:08
VibeCoding: 使用 Foundry 开发部署 Token 并开源

VibeCoding: 使用 Foundry 开发部署 Token 并开源

视频 AI 总结: **1. 核心内容概括 ** 视频主要对比了 Foundry 和 Remix 在智能合约开发中的优劣,强调 Foundry 在本地开发、大型项目管理和测试方面的显著优势。讲师详细介绍了如何利用 AI 辅助测试,大幅提升效率。随后,通过实际操作演示了使用 OpenZeppelin 和 Foundry 部署并开源一个 ERC20 代币(MyToken)到 Sepolia 测试网的全过程,包括安全部署、账户资金准备、合约验证以及与区块链交互的 `cast` 命令使用,并强调了开源对合约透明度和信任的重要性。 **2. 视频中提出的关键信息** * **Foundry 的优势:** 适用于本地开发、大型项目和复杂的测试场景,提供强大的测试框架和命令行工具,优于 Remix 在页面上进行小规模 Demo 开发的局限性。 * **AI 在测试中的应用:** AI 能高效分析代码分支和条件,显著减少测试时间(传统上测试时间是开发时间的 2-3 倍),提高测试覆盖率。 * **智能合约部署流程:** * 使用 OpenZeppelin 库快速开发 ERC20 代币(如 MyToken)。 * 强调使用 Keystore 进行安全部署,避免直接暴露私钥。 * 部署前需确保部署账户有足够的资金支付手续费。 * 通过 `forge verify` 命令将合约代码开源到区块链浏览器(如 Etherscan),需要配置 API Key。 * 开源合约能提高透明度和用户信任,因为代码逻辑清晰可见。 * **Foundry 命令行工具:** * `forge`:用于合约的编译、部署和验证。 * `cast`:用于与区块链进行交互,例如查询账户余额 (`cast balance`) 或调用合约函数 (`cast call`)。 * **故障排除与 AI 辅助:** 遇到错误时,应养成“万事不决问 AI”的习惯,利用 AI 解决开发中遇到的问题。 * **网络节点配置:** 部署合约需要指定目标网络的 RPC URL,可以通过 Chainlist 等网站获取。 * **安全性考量:** 强调私钥和 API Key 等敏感信息不应直接硬编码,应通过环境变量或 Keystore 等方式管理,以确保项目安全。

112 0 0 2026-03-11 10:08