SDK 操作总览
同一字节协议同时提供 TypeScript 与 Go 原生操作。
种子生成
| 操作 | 函数 | 传入参数 | 输出参数 | 用途 |
|---|---|---|---|---|
| 创建种子 | createSeed | source: ByteSource, sink: AsyncByteSink, signal: AbortSignal | Promise<SeedInfo> | 按顺序读取源分块并拼接原始摘要字节。 |
种子检查
| 操作 | 函数 | 传入参数 | 输出参数 | 用途 |
|---|---|---|---|---|
| 检查或哈希种子 | inspectSeed | seed: ByteSource, signal: AbortSignal | Promise<SeedInfo> | 计算 seed hash 并检查摘要流的结构长度。 |
完整性验证
| 操作 | 函数 | 传入参数 | 输出参数 | 用途 |
|---|---|---|---|---|
| 验证种子 | verifySeed | seed: ByteSource, expected: Digest, signal: AbortSignal | Promise<SeedInfo> | 使用预期哈希验证完整的种子字节。 |
| 按源大小验证 | verifySeedForSourceSize | seed: ByteSource, expectedSeedHash: Digest, sourceSize: bigint, signal: AbortSignal | Promise<SeedInfo> | 将摘要数量绑定到可信的源大小。 |
| 验证完整源 | verifySource | source: ByteSource, seed: ByteSource, signal: AbortSignal | Promise<VerifyInfo> | 将源分块与已认证种子逐块比较。 |
分块摘要
| 操作 | 函数 | 传入参数 | 输出参数 | 用途 |
|---|---|---|---|---|
| 读取分块哈希 | readBlockHash | seed: RandomAccessSeed, seedSize: bigint, blockIndex: bigint, signal: AbortSignal | Promise<Digest> | 读 取经过索引检查的单个分块摘要。 |
| 查找摘要成员 | findBlockHash | seed: ByteSource, expectedSeedHash: Digest, sourceSize: bigint, blockHash: Digest, signal: AbortSignal | Promise<BlockMatches> | 在可信种子中扫描匹配的分块摘要。 |
文件适配
| 操作 | 函数 | 传入参数 | 输出参数 | 用途 |
|---|---|---|---|---|
| 文件创建与验证 | createSeedFile | sourcePath: string, seedPath: string, options: CreateSeedFileOptions, signal: AbortSignal | Promise<SeedInfo> | 使用路径适配器调用流式核心操作。 |
对照 SDK
能力模型保持一致,同时诚实呈现各语言的真实契约。
| 操作 | TypeScript | Go |
|---|---|---|
| 创建种子 | createSeedPromise<SeedInfo> | CreateSeed(SeedInfo, error) |
| 检查或哈希种子 | inspectSeedPromise<SeedInfo> | InspectSeed(SeedInfo, error) |
| 验证种子 | verifySeedPromise<SeedInfo> | VerifySeed(SeedInfo, error) |
| 按源大小验证 | verifySeedForSourceSizePromise<SeedInfo> | VerifySeedForSourceSize(SeedInfo, error) |
| 验证完整源 | verifySourcePromise<VerifyInfo> | VerifySource(VerifyInfo, error) |
| 读取分块哈希 | readBlockHashPromise<Digest> | ReadBlockHash(Digest, error) |
| 查找摘要成员 | findBlockHashPromise<BlockMatches> | FindBlockHash(BlockMatches, error) |
| 文件创建与验证 | createSeedFilePromise<SeedInfo> | CreateSeedFile(info SeedInfo, err error) |