13个版本 (重大变更)
0.15.0 | 2024年4月29日 |
---|---|
0.13.0 | 2024年3月25日 |
0.12.0 | 2023年12月20日 |
0.11.0 | 2023年11月17日 |
0.5.0 | 2023年7月18日 |
#1248 in 算法
每月223次下载
用于 iroh主线内容发现...
1MB
22K SLoC
iroh-bytes
此crate为iroh提供blob和集合传输支持。它实现了一个基于blake3验证流的简单请求-响应协议。
请求使用blake3哈希和字节范围来描述数据。可以请求blob或blob的范围,以及集合。
请求方打开到提供方的quic流并发送请求。提供方以编码为blake3验证流的数据回答请求,这些数据在同一quic流上。
此crate通常与iroh-net一起使用,但也可以与正常的quinn连接一起使用。连接建立留给用户或更高级别的API,如iroh CLI。
概念
-
blob:任意大小的字节序列,没有元数据。
-
链接:blob的32字节blake3哈希。
-
集合:包含链接的任何blob。最简单的集合只是一个32字节blake3哈希数组。
-
提供方:提供数据和响应请求的一方。提供方等待来自请求的传入请求。
-
请求方:请求数据的一方。它向一个或多个提供方发起请求。
示例
使用iroh-bytes
的示例可以在iroh
crate中找到。iroh crate将iroh_bytes
发布为iroh::bytes
。
许可证
此项目根据以下任一项许可证发布
- Apache License, Version 2.0, (LICENSE-APACHE 或 https://apache.ac.cn/licenses/LICENSE-2.0)
- MIT许可证(《LICENSE-MIT》或http://opensource.org/licenses/MIT)
由您自行选择。
贡献
除非您明确声明,否则根据Apache-2.0许可证定义的,您有意向提交以包含在本项目中的任何贡献,均应如上所述双重许可,无需任何额外条款或条件。
依赖项
~11–52MB
~836K SLoC