分享百科

Solana

该视频的核心内容是讲解如何解读Solscan上的Solana区块链交易数据,特别是对于数据分析师或与Solana区块链交互的人来说,理解Solscan至关重要。 视频中提出的关键论据和信息包括: * **Solana交易数据的复杂性:** Solana区块链上的数据量很大,存在很多噪音,需要过滤才能找到关键信息。 * **Solscan的功能:** Solscan最近增加了很多功能,使其更容易理解交易详情,例如提供交易的概览。 * **Compute Unit Limit和Compute Unit Price:** 类似于以太坊的Gas Limit和Gas Price,Solana使用Compute Unit来衡量交易成本,并以micro Lamports(Sol的子单位)支付。 * **账户创建机制:** 在Solana上,每种独特的Token都需要一个独立的子账户来存储。首次购买某个Token时,会创建一个新的子账户。 * **跨程序调用(Cross Program Invocation):** 当一个程序调用另一个程序时,Solana将其称为跨程序调用,类似于以太坊的内部交易(trace)。 * **交易流程分析:** 视频通过一个实际的WIF Token交易案例,展示了如何从Solscan上识别和理解交易的各个步骤,包括创建账户、初始化账户、调用Orca池进行Swap等。 * **Token Mint Account和Update Authority:** Token Mint Account包含Token的信息,Update Authority通常是开发者或控制合约的人。视频中提到WIF的开发者在早期就出售了所有Token。
22
0
0
3天前
该视频的核心内容是讲解如何从 Solana 链上的原始交易数据中提取和解码信息,即使在 DUNE 或 Flipside 等平台没有提供预处理好的数据时也能进行链上数据分析。 **关键论据/信息:** * **原始数据的重要性:** 强调了理解和处理原始交易数据的重要性,即使在有预处理数据的情况下,掌握这项技能也能更深入地理解链上活动。 * **数据结构:** Solana 链上的交易数据以 Base58 编码,在 DUNE 等平台通常转换为十六进制格式。 * **数据提取方法:** 通过 `substring` 函数,按照数据类型(如公钥、整数、布尔值)的长度,从十六进制数据中提取特定字段。 * **数据类型转换:** 提取出的十六进制数据需要根据其代表的实际意义进行类型转换,例如将十六进制的整数转换为可读的十进制整数。 * **Pump.Fun 案例:** 以 Pump.Fun 上的交易为例,展示了如何提取和解码交易中的关键信息,如交易类型、代币地址、交易数量等。 * **DUNE 平台的使用:** 演示了如何在 DUNE 平台上使用原始数据表(instruction call),并使用 SQL 查询提取和处理数据。 * **学习资源:** 推荐了 Andrew 的 Substack 文章作为学习资源,鼓励观众不要气馁,逐步掌握这项技能。
27
0
0
3天前
该视频的核心内容是:**构建一个Pump.fun代币创建者的排行榜,并利用该排行榜寻找有潜力的创建者,并设置提醒以便及时关注他们的新代币发行。** 视频中提出的关键论据和信息包括: * **排行榜的构建标准:** 基于创建者的代币的平均完全稀释价值(Average Fully Diluted Value)、中位数完全稀释价值(Median Fully Diluted Value)以及创建的代币数量。 * **数据来源:** * 代币地址、代币供应量和创建者地址来自Pump.fun程序创建的代币数据。 * 代币价格来自DEX交易表(DEX trades table),通过计算每个代币最近一次交易的价格来获取。 * **行动建议:** 找到排行榜上表现良好的创建者后,使用像CALO Finance这样的Telegram提醒应用,监控他们的链上活动,以便在新代币发行时及时收到通知。 * **数据分析方法:** 从最终目标(排行榜)出发,逆向推导出所需的数据参数(代币地址、供应量、价格、创建者地址),然后通过查询Dune Analytics的数据表来获取这些参数。 * **关键代码逻辑:** 使用窗口函数(`row_number() over (partition by ... order by ...)`)来获取每个代币最近一次的交易信息,从而得到最新的价格。
25
0
0
3天前
该视频的核心内容是:**通过链上数据分析Pump.Fun平台,验证其用户界面显示的信息,并寻找潜在的交易机会。** 视频中提出的关键论据和信息包括: * **Pump.Fun是一个允许任何人发行代币的平台。** * **视频作者尝试寻找Pump.Fun上创建的第一个代币,并分析其交易潜力。** * **通过Dune Analytics查询链上数据,筛选出由Pump.Fun程序铸造的所有代币,并按时间排序。** * **链上数据显示,第一个创建的代币是“test”,而Pump.Fun用户界面显示的第一个代币是“David Hat”。** * **“David Hat”实际上是第33个创建的代币,这意味着在它之前还有32个代币可能存在交易机会。** * **视频作者计划在后续视频中更深入地分析Pump.Fun平台。**
32
0
0
3天前
该视频的核心内容是:**展示如何利用区块链数据分析工具(Flipside Crypto)追踪和分析 Solana 链上与名人代币发行相关的可疑交易行为,特别是那些试图通过分散资金到多个钱包来掩盖大规模抛售的行为。** 视频中提出的关键论据和信息包括: * **案例分析:** 以 Trippie Reid 发行的代币为例,指出一个地址控制了大部分代币供应,并将其分发到大量钱包。 * **工具介绍:** 使用 Flipside Crypto 平台,类似于 Dune Analytics,用于查询和分析区块链数据。 * **分析方法:** 通过编写简单的查询代码,首先找到接收初始资金的钱包列表,然后追踪这些钱包的交易记录,特别是代币兑换成 SOL 的记录。 * **结果展示:** 演示了如何通过分析这些钱包的交易数据,估算出他们通过抛售代币获得的利润(约 457 SOL,价值约 8 万美元)。 * **目的:** 旨在展示区块链数据的透明性,以及如何利用这些数据来发现和追踪可疑的交易行为,模仿 Zach XBT 的调查方式。
37
0
0
3天前
该视频的核心内容是:**通过分析Solana链上的DEX交易数据,寻找在Iggy Azalea发布代币信息前提前买入的“内幕交易者”。** 视频中提出的关键论据和信息包括: * **公开信息的时间差:** Iggy Azalea在Twitter上公开代币地址后,存在一个时间差,在此期间,内部人士可能已经开始积累代币。 * **Dune Analytics工具:** 使用Dune Analytics提供的Solana DEX交易数据集,可以追踪特定代币的交易记录。 * **关键数据指标:** 通过分析交易者的ID、代币买入量和卖出量,以及交易发生的时间,可以识别在公开信息发布前大量买入的账户。 * **筛选标准:** 重点关注在公开信息发布前大量买入,少量卖出的账户,这些账户更有可能是内幕交易者。 * **案例分析:** 通过具体案例展示了如何识别早期买入并在高点卖出的交易者,并推测其可能为内幕人士。 * **后续追踪:** 使用CLO等工具追踪这些可疑账户的后续交易行为。 * **免责声明:** 强调视频仅为个人交易分析,而非法律建议。如果SEC进行调查,这些数据可以作为线索。
47
0
0
3天前
该视频的核心内容是探讨在 Solana 区块链上进行日志记录和事件广播的各种方法,以及这些方法的局限性。视频的主要观点是:依赖日志来获取事件信息并不可靠,因为日志可能会被截断。 视频中的关键信息包括: * **Solana 上事件监听的挑战:** 由于 Solana 上数据量巨大,实时监听特定程序的事件更新非常困难。 * **日志记录的局限性:** 虽然可以使用日志记录程序中的重要信息,但 RPC 可能会错过某些信息,并且存在日志截断的风险,因此不适合作为可靠的事件广播机制。 * **账户更新监听:** 可以监听特定账户或程序拥有的账户的变化,但这只能获取账户数据,无法获取程序内部的特定事件信息。 * **RPC 订阅的探索:** 视频尝试了各种 RPC 订阅方法(如账户通知、程序通知、日志通知),但发现它们都有各自的局限性。 * **自调用程序(Self CPI)作为替代方案:** 视频提出了一种使用自调用程序(程序调用自身)的方法,将事件数据作为指令数据传递,并通过查询交易的内部指令来获取事件信息。即使日志被截断,这种方法也能更可靠地获取事件数据。 * **两步过程:** 为了获取程序调用事件,需要先订阅日志通知以获取签名,然后查询该签名以获取交易详情。 * **基础设施提供商:** 一些 RPC 提供商有专门的工具来解决 Solana 上事件监听的挑战。 * **Anchor 事件:** 视频提到 Anchor 框架可能也使用自调用程序来记录事件。 总而言之,视频深入探讨了 Solana 上事件广播的复杂性,并提供了一种使用自调用程序和内部指令来更可靠地获取事件信息的替代方案。虽然这种方法并不完美,但它比仅仅依赖日志记录更可靠。
72
0
0
2025-04-30 14:50
该视频的核心内容是介绍如何使用 gill (G-I-L-L),一种与 Solana 链交互的 JavaScript 客户端库。GIL 兼容 Solana Web3.js 和 SolanaKit,并在此基础上提供更多功能。 视频的关键论据和信息包括: * **Gill 的安装和设置:** 演示了如何使用 PMPM 安装 GIL,并强调了其 TypeScript 支持。 * **加载 Keypair Signer:** 讲解了如何从文件系统加载 Keypair Signer,用于交易签名。 * **连接 Solana 网络:** 介绍了如何使用 `createSolanaClient` 函数连接到 Solana 的不同网络(如 DevNet),并获取 RPC 连接。 * **调用 RPC 方法:** 演示了如何使用 RPC 连接调用 Solana 的 RPC 方法,例如 `getLatestBlockHash`。 * **创建交易:** 讲解了如何使用 `createTransaction` 函数创建交易,包括设置 fee payer、添加指令(例如 memo 指令)和指定交易版本。 * **交易签名和发送:** 演示了如何使用 `SignTransactionMessageWithSigner` 函数对交易进行签名,并使用 `sendAndConfirmTransaction` 函数将交易发送到 Solana 网络。 * **获取交易签名和 Explorer 链接:** 介绍了如何从已签名的交易中获取交易签名,并使用 `getExplorerLink` 函数生成 Solana Explorer 的链接,以便查看交易详情。 * **设置 Compute Budget 和 Priority Fee:** 强调了设置 compute unit limit 和 compute unit price 的重要性,以提高交易成功率,并演示了如何在创建交易时设置这些参数。 * **Debug 模式:** 介绍了 Gill 的 Debug 模式,可以通过设置环境变量或全局变量来启用,以便在控制台中输出调试信息,并使用 Solana Explorer 的 Inspector 工具来分析交易。
76
0
0
2025-04-29 16:21
区块链生态全景介绍 - 以太坊、Layer2 扩容 、Solana、SUI 、跨链桥 主要内容: 1. **比特币的回顾与局限:** - 比特币被定义为去中心化的数字货币,采用PoW共识机制,约10分钟出一个块,被誉为“数字黄金”。 - 其不足之处在于无法支持除转账以外的复杂程序运行,仅能进行简单的交易。虽然有改进方案,但尚未成熟。 - PoW机制消耗大量能源,且交易处理速度较慢(TPS低),不适合日常支付。 2. **以太坊的创新与发展:** - 以太坊是一个去中心化的应用平台,目标是成为“世界计算机”,允许在网络上运行各种程序。 - 由Vitalik Buterin在2013年提出,并于2015年上线,结合 比特币 + 智能合约的概念。 - Hashkey是早期投资以太坊的团队。 - 以太坊的主要改进包括: - 共识机制从PoW切换到PoS(2022年),大幅降低能源消耗,出块速度更快(约12秒)。 - 内置以太坊虚拟机(EVM),可以执行各种程序,可以理解为去中心化的操作系统或数据库+操作系统。 3. **以太坊面临的挑战与解决方案:** - **PoS机制的运行原理:** 通过质押ETH来保护网络安全,验证者需要质押32个ETH才能参与出块,并随机选出出块者,其他验证者进行验证签名。 - **程序执行与Gas机制:** 以太坊通过Gas来衡量和限制程序的工作量,用户在发起交易时需要设置Gas Limit和Gas Price,矿工根据Gas Price排序交易并收取费用。 - **程序无限循环的风险:** Gas机制可以防止无限循环的程序阻塞网络。 - **程序收费的公平性:** Gas的消耗与程序的计算复杂度相关。 - **程序执行的验证:** POS机制下,验证者会验证出块者的交易和区块。 4. **以太坊的扩容方案:** - **原地扩容:** 包括提高Gas Limit(目前约3500万)、引入临时存储空间(Blob)给Layer 2使用,以及早期提出的分片方案(目前已转向Layer 2)。 - 二层扩容(Layer 2): 将部分交易放到链下执行,减轻主网压力,提高TPS。Rollup是主要的Layer 2方案。 - **乐观Rollup:** 将压缩的交易数据和结果提交到Layer 1,乐观假设交易正确执行,通过事后挑战来验证。代表项目有Hashkey Chain、Base、Optimism。 - **ZK Rollup:** 除了交易数据和结果,还提交交易执行的零知识证明(ZK Proof),在数学上证明交易的正确性。代表项目有zkSync、StarkWare、Linea。 - Layer 2的优势在于更高的TPS和更快的确认时间,但安全性验证机制有所不同。 5. **其他Layer 1区块链平台:** - **EVM兼容链:** 借鉴EVM但使用不同的共识机制,如BNB Chain(BSC,PoSA共识,约3秒出块,41个验证节点)、Polygon、Avalanche等。交易所如币安、火币、OKX早期都曾发布自己的EVM兼容链。 - **非EVM兼容链:** 有自己的虚拟机和编程模型,如Solana(PoH+PoS共识,约0.4秒出块,理论TPS高,节点要求高,程序和数据分离,交易并行处理,Meme币文化繁荣)、Sui(面向对象模型,Token为一等公民,编程语言层面保证Token安全,可并行处理,TPS高)。 6. **跨链技术:** - 由于不同的区块链之间是相互隔离的,需要跨链桥来实现资产和数据的互操作。 - 跨链桥的基本原理是在一条链上锁定资产,然后在另一条链上发行或解锁等量的资产。 - 存在多种跨链桥服务和协议,包括Layer 2官方桥、交易所集成的跨链服务以及第三方跨链协议(如LayerZero、Wormhole、Circle CCTP、Chainlink)。 7. **去中心化存储:** - 区块链不适合存储大量多媒体文件。 - 去中心化存储协议(如IPFS、Arweave)可以用于存储应用的前端代码和其他数据,实现应用的完全去中心化,并保证数据不被篡改。
691
0
0
2025-04-21 09:13
本视频是关于Solana程序(智能合约)安全性的课程,主要内容包括最佳安全实践、常见攻击向量以及安全测试方法。以下是视频的核心内容和关键论据总结: 1. **核心内容概括**: - 本周课程专注于Solana程序的安全性,强调开发者在编写智能合约时应遵循的最佳安全实践。 - 课程内容包括代码质量、测试、模糊测试(fuzzing)和审计等安全支柱,旨在帮助开发者提高智能合约的安全性。 2. **关键论据和信息**: - **代码质量**:开发者需了解常见的安全漏洞(如OWASP 10),并在设计阶段就考虑安全性,采用多层防御策略。 - **测试的重要性**:不仅要测试程序的正确性,还要模拟攻击者的思维,进行全面的安全测试,包括集成测试和模糊测试。 - **模糊测试**:通过输入大量随机数据来发现潜在漏洞,强调其在发现安全问题中的有效性。 - **审计**:建议在完成代码质量和测试后进行审计,以获得独立的安全评估,审计过程应包括对系统整体架构的理解和外部依赖的检查。 - **安全意识**:开发者和团队成员需保持安全意识,定期学习和更新安全知识,以应对不断变化的安全威胁。 总之,视频强调了在Solana智能合约开发中,安全性是一个多层次的过程,开发者需要从代码质量、测试到审计等各个方面进行全面考虑,以确保程序的安全性。
75
0
0
2025-04-14 15:45
在本次Solana审计员训练营的第六课中,讲师Andrej讨论了在Solana区块链上使用Anchor框架时常见的安全漏洞和攻击向量。课程的主要目标是创建一个公共数据库,记录这些攻击向量的示例,以帮助开发者识别和避免潜在的安全问题。 ### 核心内容 1. **常见攻击向量**:课程首先介绍了几种常见的攻击向量,包括签名授权、任意跨程序调用(CPI)、重复可变账户、所有权检查、程序派生地址(PDA)权限等。 2. **高级攻击向量**:随后,讲师提到了一些更复杂的攻击向量,如钓鱼攻击、私钥泄露、三明治攻击、抢跑攻击、闪电贷攻击等。 ### 关键论据和信息 - **签名授权**:确保签名者被授权调用指令,初学者常常忽视这一点,可能导致未授权访问。 - **任意CPI**:在进行跨程序调用时,必须验证目标程序的ID,以防止黑客利用恶意程序。 - **重复可变账户**:确保输入的两个账户地址不同,以避免意外行为。 - **所有权检查**:确保账户的所有者是预期的程序,以防止恶意账户的利用。 - **PDA权限**:确保PDA的权限不被滥用,特别是在涉及资金转移的情况下。 - **钓鱼攻击**:用户应警惕假冒网站和信息,以保护自己的资产。 - **私钥泄露**:开发者需注意在公共代码库中不泄露私钥。 - **三明治攻击和抢跑攻击**:这些攻击利用交易的顺序,可能导致资产损失。 - **整数溢出和精度损失**:开发者需谨慎处理整数运算,以避免潜在的安全漏洞。 课程强调了开发者在编写智能合约时应采取的安全措施,并鼓励参与者贡献新的攻击向量和示例,以丰富公共数据库的内容。
90
0
0
2025-04-14 10:07
在本视频的第五课中,讲师Andrej探讨了在编写Solana智能合约和Web3应用程序时的安全最佳实践,强调了几个关键的安全支柱。 ### 核心内容概括 视频主要介绍了智能合约开发中的安全原则,包括代码质量、测试、先进的测试方法(如模糊测试)以及审计的重要性。讲师强调,安全性不仅依赖于代码的正确性,还需要开发者具备安全意识,主动预防潜在的安全问题。 ### 关键论据和信息 1. **代码质量**:开发者应了解常见的安全漏洞(如OWASP 10),并在设计阶段就考虑安全性,采用多层防御策略,确保代码结构清晰,便于审计和维护。 2. **测试的重要性**:测试不仅是为了验证功能的正确性,还应模拟攻击者的思维,寻找潜在的漏洞。模糊测试被认为比集成测试更有效,因为它可以覆盖更广泛的输入空间。 3. **审计的必要性**:即使开发者自信于自己的代码,审计仍然是必要的,因为外部审计人员可以提供不同的视角,发现开发者可能忽视的安全问题。 4. **安全透明性**:鼓励开放审计、代码审查和漏洞奖励计划,以提高整体安全性。 5. **社会工程学测试**:教育团队成员识别和防范社会工程攻击,确保人力资源也是安全链中的一部分。 6. **持续学习**:开发者和审计人员都应不断学习最新的安全问题和攻击向量,以保持对安全威胁的敏感性。 总之,视频强调了安全性是一个系统性的问题,涉及代码、测试、审计和团队的整体安全意识。开发者应主动学习和实施最佳实践,以确保智能合约的安全性。
92
0
0
2025-04-14 10:06
在本次Solana审计员训练营的第四课中,讲师Andrej深入探讨了Trident工具的模糊测试(fuzzing)功能,特别是其附加特性。以下是本课的核心内容和关键论据总结: 1. **核心内容概括**: 本课主要介绍了Trident在模糊测试中的一些高级功能,包括不变性检查(invariant checks)、指令序列(instruction sequences)、自定义错误处理(custom error handler)、结构化数据(well-structured data)、客户端方法(client methods)以及Trident清单(trident manifest)。这些功能旨在提升模糊测试的效率和准确性。 2. **关键论据和信息**: - **不变性检查**:允许开发者在指令调用前后比较账户状态,以确保程序行为符合预期,特别是在代币转账等操作中。 - **指令序列**:开发者可以定义指令的执行顺序,确保初始化等必要步骤在其他指令之前执行,从而避免随机顺序带来的问题。 - **自定义错误处理**:可以为每个指令指定错误处理逻辑,以便在指令返回错误时进行特定的检查和处理。 - **结构化数据**:允许开发者为指令输入数据设定规则,确保生成的数据符合特定条件,例如时间戳的顺序。 - **客户端方法**:提供了一些方法来定制模糊测试环境,例如在测试开始前添加自定义账户。 - **Trident清单**:通过trident.toml文件,开发者可以配置模糊测试的参数,如迭代次数、运行时间和统计信息等。 此外,Andrej还提到了一些正在开发的新功能,包括轻客户端(light client)以提高模糊测试性能、减少手动工作、增加统计信息等。这些功能的实现将进一步增强Trident的用户体验和测试能力。 最后,讲师通过代码示例展示了如何在实际项目中应用这些功能,强调了模糊测试在发现程序错误和提升代码安全性方面的重要性。
148
0
0
2025-04-14 10:05
本视频是Solana审计员训练营的第三课,主要介绍了模糊测试(fuzzing)及其工具Trident。以下是视频的总结: 1. **核心内容概括**: 视频首先解释了模糊测试的概念及其重要性,接着介绍了Trident的功能和架构,最后通过实际示例演示了如何使用Trident进行模糊测试。 2. **关键论据和信息**: - **模糊测试的定义**:模糊测试是一种自动化技术,通过生成随机的有效、无效或意外输入数据来测试程序,以发现潜在的未知漏洞和错误。 - **模糊测试的重要性**: - 提高测试和安全性的信心。 - 覆盖意外的边界情况和错误。 - 低维护成本,一旦设置好可以长时间运行。 - 易于扩展,添加新指令时只需调整输入。 - **Trident的特点**: - 作为引导模糊测试工具,支持自定义生成的数据。 - 能够处理每秒数十到数百条指令,未来目标是提高到数千条。 - 支持跨程序调用(CPI),可以与主网程序进行模糊测试。 - **实际示例**:视频中展示了如何初始化Trident,编写模糊测试,运行测试并分析输出,最终发现了一个由于输入超出范围而导致的程序崩溃。 通过本课,观众能够理解模糊测试的基本原理及其在提高Solana程序安全性方面的应用,同时掌握使用Trident进行模糊测试的基本流程。
82
0
0
2025-04-14 10:03
在本次Solano审计员训练营的第二课中,主要讨论了单元测试和集成测试的重要性及其在Solano程序中的应用。以下是视频的核心内容和关键论据总结: 1. **核心内容概括**: - 本课重点介绍了单元测试和集成测试的定义、区别及其在Solano程序中的应用。讲解了如何使用Rust和TypeScript进行测试,并探讨了Anchor清单的使用、时间前移的测试方法以及最佳测试实践。 2. **关键论据和信息**: - **单元测试与集成测试的区别**: - 单元测试旨在验证单个函数或小组件的正确性,而集成测试则测试多个组件之间的交互。 - 单元测试的执行时间较短,因为只需测试部分指令,而集成测试需要启动Solano环境,执行时间较长。 - **Rust和TypeScript的测试方法**: - Rust测试使用Solana程序测试库,允许开发者手动设置账户和系统变量,提供更高的控制力。 - TypeScript测试通常与Anchor框架结合使用,自动启动Solano测试验证器,但控制力相对较低。 - **Anchor清单的使用**: - Anchor清单(anchor.toml)允许开发者指定要克隆的程序和账户,从而在测试中重用它们。 - **时间前移的测试方法**: - Rust中可以使用`warpToSlot`和`setSysVar`等函数来前移时间,而TypeScript中可以通过减少截止时间或使用Bank Run框架来实现。 - **最佳测试实践**: - 建议开发者编写易于理解的测试结构,测试不幸路径(即无效输入),进行广泛的测试,使用断言检查状态变化,并在测试中添加注释以提高可读性。 通过本次课程,参与者可以更好地理解如何在Solano程序中有效地进行测试,提升程序的安全性和可靠性。
86
0
0
2025-04-14 10:01
登链社区