11 个版本 (7 个重大更新)

0.8.1 2024年6月29日
0.7.0 2024年4月4日
0.6.0 2024年1月24日
0.4.0 2023年4月27日
0.1.0 2021年6月7日

#1218HTTP 服务器

Download history 513/week @ 2024-05-01 260/week @ 2024-05-08 427/week @ 2024-05-15 304/week @ 2024-05-22 642/week @ 2024-05-29 564/week @ 2024-06-05 750/week @ 2024-06-12 456/week @ 2024-06-19 493/week @ 2024-06-26 374/week @ 2024-07-03 361/week @ 2024-07-10 510/week @ 2024-07-17 455/week @ 2024-07-24 369/week @ 2024-07-31 518/week @ 2024-08-07 356/week @ 2024-08-14

每月 1,755 次下载
用于 8 个 Crates (7 个直接使用)

MIT/Apache

78KB
1.5K SLoC

欢迎使用 Trillium!

📖 指南 📖

本指南提供了架构概述以及连接 trillium Crates 的地形。

📑 Rustdocs 📑

rustdocs 是了解 trillium 的任何单个 Crates 和特定接口的最佳方式。




法律

许可以下其中之一

任选其一。

除非您明确表示,否则您根据 Apache-2.0 许可证定义的任何有意提交的工作贡献,都应按上述方式双重许可,不附加任何额外条款或条件。


lib.rs:

此 Crates 为 trillium 客户端 (RustlsConnector) 和服务器 (RustlsAcceptor) 提供了 rustls 特性实现。

Cargo 功能

此 Crates 的默认功能对大多数用户来说应该是合适的。要减少依赖项或自定义 trillium-rustls 对 rustls 的使用,请禁用默认功能,并重新启用适合您用例的功能。

serverclient 功能

此 Crates 提供了一个 server 功能和一个 client 功能。禁用默认功能可以避免为未使用的其他组件构建任何依赖项。默认情况下,都启用了 serverclient 功能。

加密后端选择

Rustls 支持可插拔的加密后端以及进程默认的加密后端。有两个内置的特制功能加密后端和其他社区提供的加密后端。

⚠️ 有三个加密后端 cargo 功能,它们的行为与 rustls 功能不同。请阅读以下章节。⚠️

trillium-rustls 尽可能避免运行时恐慌,因此如果没有有效的加密后端编译此 crate 将导致编译时错误。要选择 rustls 的默认进程默认行为,请启用以下所述的 custom-crypto-provider。启用多个加密提供者将在以下顺序中在编译时选择其中一个

aws-lc-rs

这是与 rustls 默认一致的默认加密后端。如果启用了此功能,将选择此后端。如果选择其他两个加密后端中的任何一个,trillium-rustls 将记录错误但使用 aws-lc-rs

ring

如果启用了此功能,即使启用了 custom-crypto-provider,也会选择此后端。

custom-crypto-provider

为了使用除上述两种选项之外的加密提供者,请启用 custom-crypto-provider 功能,并配置一个 trillium_rustls::rustls::ClientConfigtrillium_rustls::rustls::ServerConfig 以将等效的 trillium-rustls 类型转换为自身,或者在执行 trillium-rustls 代码之前使用 trillium_rustls::rustls::crypto::CryptoProvider::install_default 安装自定义的进程默认加密提供者。

客户端验证器

此 crate 为客户端使用提供了 platform-verifier 功能,该功能使用所选的加密后端构建 ClientConfig 并使用 rustls-platform-verifier。此功能默认启用。如果您禁用此功能,将使用 webpki_roots

依赖关系

~14–38MB
~1M SLoC