文章
视频
课程
百科图谱
集训营
更多
问答
提问
发表文章
专栏
活动
文档
工作
集市
发现
Toggle navigation
文章
问答
视频
课程
集训营
专栏
活动
工作
文档
集市
搜索
登录/注册
Solandy
文章
专栏
问答
视频
课程
集市作品
活动
招聘
TA的视频
TA的合集
Solana 教程 - 如何在链上保存 IDL
视频 AI 总结: 该视频主要讲解了 Solana 链上存储程序元数据的方法,包括使用 Anchor 框架和 Program Metadata Program。视频首先介绍了将 IDL (接口描述语言) 和 security.txt 文件上传到链上的重要性,以便开发者更好地与程序交互和安全研究人员联系程序所有者。视频详细分析了 Anchor 如何存储 IDL,以及 Program Metadata Program 的工作原理,包括如何使用 CLI 工具上传 IDL 和 security.txt,以及如何在链上读取和解析这些元数据。 关键信息: * 将 IDL 和 security.txt 上传到链上是良好实践,有助于程序交互和安全研究。 * Anchor 框架和 Program Metadata Program 都可以用于存储程序元数据。 * Anchor 将 IDL 压缩后存储在链上,并提供工具进行上传和读取。 * Program Metadata Program 允许存储各种元数据,包括 IDL 和 security.txt。 * 视频演示了如何使用 Program Metadata Program 的 CLI 工具上传和读取元数据。 * 视频分析了链上元数据的存储格式,包括头部信息和数据内容。 * 视频鼓励开发者上传 IDL 和 security.txt,以提高程序的可互操作性。
11
0
0
1天前
Solana 教程-如何检查交易失败
视频 AI 总结: 该视频主要讲解了如何在 Solana 链上程序中判断之前的交易是否失败。由于 Solana 交易失败后状态会回滚,无法直接通过账户状态判断。视频提出了两种解决方案:一是通过检查交易费用支付者的余额变化来判断交易是否被执行,但这种方法不够可靠;二是使用 nonce 账户,通过检查 nonce 账户中的 blockhash 是否发生变化来判断交易是否被执行,如果交易被执行但未成功,则说明交易失败。 关键信息: * Solana 交易失败后状态回滚,无法直接通过账户状态判断交易是否成功或失败。 * **方案一:检查交易费用支付者的余额变化**。交易无论成功与否,都会扣除手续费,因此可以通过检查手续费支付者的余额是否减少来判断交易是否被执行。但这种方法不够可靠,因为其他人可以向该账户充值,导致判断失误。 * **方案二:使用 nonce 账户**。Nonce 账户可以存储一个 blockhash,每次交易后都会更新。通过检查 nonce 账户中的 blockhash 是否发生变化,可以判断交易是否被执行。如果交易被执行但未成功,则说明交易失败。这种方法更可靠,但需要预先创建 nonce 账户,并且需要使用 durable nonce lifetime。 * 视频还涉及了 Anchor 开发、Kodama 工具的使用,以及 Solana Kit 的一些问题。
67
0
0
6天前
VS Code第一个 Solana 插件
视频 AI 总结: 该视频评测了 Aki Blockchain 开发的 Solana VS Code 扩展,该扩展旨在通过静态代码分析和模糊测试覆盖率可视化来增强 Solana 开发的安全性。视频作者安装并测试了该扩展,发现它主要针对 Anchor 框架,并且存在一些bug和不准确的警告。尽管如此,作者认为该扩展在某些情况下仍然有用,可以帮助开发者发现潜在的安全问题,但不能完全依赖它,开发者仍需保持警惕。 关键信息: * 该扩展提供静态代码分析,例如检查是否缺少签名者验证,以及模糊测试覆盖率可视化。 * 该扩展主要针对 Anchor 框架,对原生 Rust 程序的支持有限。 * 该扩展存在一些bug,例如无法正确刷新警告信息,以及给出不准确的建议。 * 该扩展可以帮助开发者发现潜在的安全问题,但不能完全依赖它。 * 作者建议开发者安装并尝试该扩展,但要保持警惕,不要盲目相信其提供的警告信息。
112
0
0
2025-11-05 14:33
Solana教程:使用Gill的代币 Metadata
视频 AI 总结: 该视频主要讲解了如何使用 Gill 库从 Solana 的 Token 2022 获取元数据,并提供了一种更规范、更健壮的实现方法,避免直接访问私有字段,并处理了元数据指针指向不同账户的情况。视频详细分析了 Token 2022 扩展的结构,并演示了如何通过元数据指针获取元数据,即使元数据存储在不同的 Token Mint 中。 关键信息: 1. Token 2022 允许使用扩展来存储元数据。 2. Gill 库提供了 `isExtension` 等方法来安全地访问扩展数据,避免直接访问私有字段。 3. 元数据可以通过元数据指针扩展存储在 Token Mint 本身,也可以存储在另一个 Token Mint 中。 4. 需要检查元数据指针是否存在,以及指针指向的账户是否有效。 5. 如果元数据由 Token 2022 程序处理,可以直接读取;如果由其他程序处理,则需要根据该程序的规范进行解码。 6. 视频提供了完整的代码示例,展示了如何使用 Gill 库获取 Token 2022 的元数据,并处理了各种错误情况。
179
0
0
2025-10-28 17:26
如何在 Solana 上实现 X402 标准
视频 AI 总结: 该视频主要讲解了如何在 Solana 上实现 X402 标准,即支付墙功能,允许用户通过小额支付来访问特定内容。视频详细演示了如何配置和运行 X402 标准中的三个关键组件:客户端、服务器和协调器(facilitator),并解决了在实现过程中遇到的各种问题,最终成功实现了通过支付访问内容的功能。 关键信息: 1. X402 标准允许用户通过小额支付访问特定内容,适用于 AI 代理或用户与网页的交互。 2. 实现 X402 需要配置客户端、服务器和协调器三个组件。 3. 客户端发起支付请求,服务器返回 402 支付请求,客户端构建交易并部分签名。 4. 服务器将部分签名的交易转发给协调器,协调器完成签名并提交到区块链。 5. 协调器负责支付交易费用,并确认交易完成。 6. 服务器在确认支付后,向客户端提供所请求的资源。 7. 视频解决了在配置过程中遇到的依赖问题、内存溢出问题以及 RPC 连接问题。 8. 强调了在测试环境中运行所有组件的重要性,以便更好地控制和调试。 9. 最终实现了通过支付访问内容的功能,并展示了交易的详细信息。
344
0
0
2025-10-19 13:42
x402 微支付入门
视频 AI 总结: 该视频介绍了 X402 协议,这是一个用于互联网原生支付的开放协议,旨在简化在线支付,无需注册、邮件或复杂签名。它基于 HTTP 402 状态码,允许用户通过 API 为资源付费。该协议具有无费用、区块链无关性、开放标准、即时结算、无摩擦和 Web 原生等特点,尤其适用于机器对机器的微支付,例如 AI 代理支付服务。视频还尝试了在 Solana 上使用 X402 协议,但未能成功,作者计划在后续视频中进行更深入的技术研究。 关键信息: * X402 协议是互联网原生支付的开放协议,基于 HTTP 402 状态码。 * X402 协议简化了在线支付,无需注册、邮件或复杂签名。 * X402 协议具有无费用、区块链无关性、开放标准、即时结算、无摩擦和 Web 原生等特点。 * X402 协议尤其适用于机器对机器的微支付,例如 AI 代理支付服务。 * 视频演示了在 Base 测试网上使用 X402 协议成功支付访问内容。 * 视频尝试在 Solana 上使用 X402 协议,但未能成功,作者计划后续进行更深入的技术研究。 * X402 协议涉及客户端、服务器、协调器和区块链四个实体。 * 协调器负责处理实际的支付事务,服务器专注于 API 或内容服务。
647
0
0
2025-10-15 21:06
Mollusk 测试工具 [Solana 教程]
视频 AI 总结: 1. **核心内容:** 该视频介绍了 Anza 开发的 Solana 程序轻量级测试工具 Mollusk。Mollusk 允许开发者在精简的 Solana 虚拟机环境中进行单元测试,无需启动完整的 Solana 验证器,从而提高测试效率。视频通过一个简单的 Solana 程序示例,演示了如何使用 Mollusk 进行指令级别的测试,包括设置账户、执行指令、以及验证结果。 2. **关键信息:** * Mollusk 是一个轻量级的 Solana 程序测试工具,适用于单元测试。 * Mollusk 通过直接从底层 SVM 组件提供程序执行管道,避免了运行完整验证器的开销。 * 使用 Mollusk 需要手动设置账户。 * 视频演示了如何使用 Mollusk 测试单个指令,包括检查签名、读写账户数据等。 * Mollusk 提供了多种检查方法,例如检查执行结果、账户状态、错误信息等。 * Mollusk 支持状态化测试,允许在多个指令之间保持账户状态。 * 视频对比了 Mollusk 和 Surfpool,指出 Mollusk 更适合单元测试,而 Surfpool 更适合集成测试。 * 强调了测试的重要性,并建议开发者根据需求选择合适的测试工具。
359
0
0
2025-10-12 11:43
Solana 教程: RPC Websocket API
视频 AI 总结: 本视频主要讲解了如何在 Solana 开发中使用 WebSockets 获取状态更新,避免了传统 HTTP 请求的轮询方式。通过 WebSockets,客户端可以与 Solana RPC 服务器建立持久连接,服务器可以在状态发生变化时主动推送通知给客户端,从而实现实时更新。视频详细介绍了 WebSockets 的基本概念,以及如何在 TypeScript 中使用 Solana WebSocket API 订阅账户、区块、程序等,并接收相应的更新通知。 视频中提出的关键信息: 1. **WebSocket 的定义和优势**:WebSocket 是一种在 Web 应用中保持开放连接的技术,允许服务器主动向客户端推送数据,避免了客户端轮询的低效方式。 2. **Solana WebSocket API 的使用**:通过 WebSocket URL 连接到 Solana RPC 服务器,可以使用 TypeScript 的 WebSocket 接口创建和管理 WebSocket 连接。 3. **订阅和取消订阅**:Solana WebSocket API 提供了多种订阅方法,如 `accountSubscribe`(账户订阅)、`blockSubscribe`(区块订阅)、`programSubscribe`(程序订阅)等,以及相应的取消订阅方法。 4. **不同订阅类型的应用**: * 账户订阅:监听指定账户的 Lamports 或数据的变化。 * 区块订阅:监听新区块的确认,可以过滤包含特定账户的交易。 * 程序订阅:监听由给定程序拥有的账户的变化。 5. **Commitment Level 的影响**:Commitment Level(Processed, Confirmed, Finalized)会影响接收更新的速度和可靠性,Finalized 最安全但速度最慢,Processed 最快但可能不准确。 6. **JSON 解析编码**:JSON 解析编码可以使返回的数据更易于阅读和解析。
514
0
0
2025-10-09 17:37
Solana 教程 - 公钥 vs 地址
视频 AI 总结: 该视频主要讲解了 Solana 中 address(地址)和 pubkey(公钥)的区别,以及 Solana Rust SDK V3 版本中将 pubkey 重命名为 address 的原因。核心在于并非所有地址都是公钥,公钥是可以通过私钥推导出来的,而地址不一定。例如,PDA(程序派生地址)和系统程序的地址就不是公钥。SDK V3 的更新旨在更准确地使用术语,避免混淆,并解决与其他库(如 Pinocchio)的类型冲突问题。 关键信息: * **Pubkey vs Address:** 公钥是与私钥对应的公开密钥,可以从私钥推导出来。地址是用于索引 Solana 账户的标识符。所有公钥都是地址,但并非所有地址都是公钥。 * **PDA:** 程序派生地址(PDA)是通过哈希计算得到的地址,没有对应的私钥,因此不是公钥。 * **System Program Address:** 系统程序的地址是预定义的,也不是通过私钥生成的公钥。 * **Solana Rust SDK V3:** 新版本将 pubkey 重命名为 address,以更准确地反映其含义。 * **Pinocchio:** 解决与 Pinocchio 库中公钥类型冲突的问题。 * **升级建议:** 建议使用 Solana address crate,并在代码中使用 address 类型,以确保与未来版本的兼容性。 * **SDK V3 的其他变化:** 移除了一些模块,并将系统程序等组件移至单独的 crate 中。
405
0
0
2025-09-28 21:21
优化 Solana 程序的计算单元 - 第二部分
视频 AI 总结: 该视频是关于 Solana 程序计算单元(CU)优化的第二部分,核心内容是讲解如何通过一系列优化技巧来减少 Solana 程序执行所需的计算资源,从而提高效率并降低成本。视频强调了避免不必要的计算、数据复制和类型转换的重要性,并提供了一系列实用的优化建议。 关键信息: 1. 避免重复执行相同的代码,将结果保存并重复使用。 2. 移除不必要的日志记录,减少计算开销。 3. 使用已实现的函数或库,避免重复造轮子。 4. 使用适当大小的数据类型,避免浪费计算资源。 5. 将不必要的 if else 语句更改为 match 语句。 6. 避免不必要的克隆操作,使用引用代替。 7. 存储 PDA 的 bump,避免重复推导地址。 8. 优化代码逻辑,例如使用位运算代替字符操作。 9. 将固定长度的数据放在账户的前面,方便访问。 10. 考虑使用零拷贝(Zero Copy)技术,避免反序列化整个账户。 11. 使用正确的类型,例如将 authority 设置为 pub key 而不是 string。
405
0
0
2025-09-24 20:32
‹
1
2
3
›
Solandy
关注
贡献值: 5
学分: 10
江湖只有他的大名,没有他的介绍。
0 关注
7 粉丝
×
发送私信
请将文档链接发给晓娜,我们会尽快安排上架,感谢您的推荐!
发给:
内容:
提醒
检测到你当前登录的账号还未绑定手机号
请绑定后再发布
去绑定
×
编辑封面图
封面预览
取消
确认
×
创建课程
课程封面
编辑封面图
建议尺寸: 1920*1080
×
编辑封面图
封面预览
取消
确认