数据验证

微信扫码分享
默克尔树算法

默克尔树算法

视频 AI 总结: 该视频详细讲解了 Merkle Root 的计算、Merkle Proof 的生成以及 Merkle Proof 的验证算法。首先,视频介绍了如何通过哈希一系列值,并不断配对哈希值进行再次哈希,最终得到 Merkle Root。接着,视频讲解了如何根据 Merkle Root 的计算过程,提取出生成 Merkle Proof 所需的关键哈希值。最后,视频展示了如何利用 Merkle Root 和 Merkle Proof,通过循环哈希验证 Merkle Proof 的有效性。 关键信息: * **Merkle Root 计算:** 对数据进行哈希,然后将哈希值两两配对再次哈希,重复此过程直到只剩一个哈希值,即为 Merkle Root。奇数个哈希值时,复制最后一个哈希值进行配对。 * **Merkle Proof 生成:** 在计算 Merkle Root 的过程中,记录下用于计算特定哈希值所需的兄弟哈希值,这些哈希值构成 Merkle Proof。 * **Merkle Proof 验证:** 使用 Merkle Proof 中的哈希值,结合已知的哈希值,逐步计算哈希值,直到得到一个哈希值,将其与 Merkle Root 进行比较,如果一致则验证成功。 * **算法实现:** 视频中给出了计算 Merkle Root、生成 Merkle Proof 和验证 Merkle Proof 的详细算法步骤,包括如何处理奇数个哈希值的情况,以及如何根据索引确定配对的哈希值。

555 0 0 2025-11-08 10:55
Chainlink Functions:调用链外数据

Chainlink Functions:调用链外数据

视频 AI 总结: 该视频主要讲解了 Chainlink Functions 的功能,即如何在智能合约中安全地获取链外数据,例如天气数据、航班信息或 AI 的预测结果。通过 Chainlink Functions,合约可以调用外部 API,并由 Chainlink 网络中的节点执行请求,验证结果,并将加密后的结果和证明返回给合约,从而实现与链外数据的交互。 关键信息: * Chainlink Functions 允许智能合约获取外部 API 的数据。 * 合约通过 Function Router 发送包含 JavaScript 代码和参数的请求。 * Chainlink 网络中的节点执行请求并验证结果。 * 节点将加密后的结果和证明提交给 Router 合约。 * Router 合约将结果回调到用户的合约。 * Chainlink 网络会对结果进行验证,确保数据的可靠性。 * 这是一个付费服务,需要扣除费用。 * 视频中提到了一个使用 AI 获取结果的实际应用案例。

242 0 0 2025-10-14 23:34
如何更安全的使用预言机

如何更安全的使用预言机

视频 AI 总结: 该视频主要讲解了在智能合约中使用预言机时需要注意的安全问题,重点对比了 Chainlink 和 Pyth 两种预言机的特性和安全考量。视频强调了避免使用易被操控的现货价格,并详细列举了使用 Chainlink 和 Pyth 时必须进行的安全性检查,例如 Chainlink 的数据有效性验证、时间戳检查,以及 Pyth 的价格更新机制和价格验证。视频旨在帮助开发者和审计人员在智能合约开发中更安全地使用预言机。 视频中提出的关键信息: * **避免使用现货价格**:现货价格容易被操纵,不应作为智能合约的数据来源。 * **Chainlink 安全检查**: * 必须使用 `latestRoundData` 而不是 `latestAnswer`。 * 考虑使用 `try-catch` 块处理 Chainlink 调用可能出现的 revert 情况。 * 验证返回数据的有效性,包括价格大于零、时间戳大于零。 * 检查数据是否过期,设置合理的 `stale feed threshold`。 * 在 Layer 2 区块链上使用 Chainlink 时,需要考虑 Sequencer 的状态。 * 不要假设稳定币的价格始终为 1 美元。 * 注意不同 Price Feed 的小数位数可能不同。 * **Pyth 安全检查**: * Pyth 是 push-based 预言机,需要用户主动更新价格。 * 使用 `getPriceNoOlderThan` 确保价格不会过时。 * 验证价格是否大于零,检查 exponent 和 confidence interval。 * **通用建议**: * 考虑使用备用预言机。 * 不要使用 RapidTobias 的原生价格源。

1129 0 0 2025-08-25 18:15
Flare 工作坊:将任何Web2数据上链

Flare 工作坊:将任何Web2数据上链

视频 AI 总结: 该视频介绍了 Flare 数据连接器 (FDC) 的工作原理,以及如何将 Web2 API 数据引入 Flare 区块链。视频讲解了用户使用 FDC 的工作流程,包括创建证明请求、提交到 FDC Hub 合约、等待验证者获取数据并写入链上哈希值,以及从数据提供者处获取数据并验证其真实性。此外,还介绍了 Flare Hardhat Starter 仓库,并演示了如何修改现有代码以适应用户自己的项目,包括定义合约、提供 URL、JQ 过滤器和 ABI 签名等。 关键信息: * FDC 允许 DApp 使用外部数据。 * 用户需要创建证明请求并提交到 FDC Hub 合约。 * Flare 验证者(数据提供者)获取数据并写入链上哈希值。 * 用户可以从数据提供者处获取数据并验证其真实性。 * Flare Hardhat Starter 仓库是一个有用的起点。 * 需要修改合约、URL、JQ 过滤器和 ABI 签名以适应用户自己的项目。 * Web2JSON 证明类型允许输入查询参数。

1467 0 0 2025-07-11 15:54