#tls-stream #tls-api #tokio #non-blocking #async-io #native-tls #connect

tokio-tls-api

为Tokio实现的TLS/SSL流,为非阻塞I/O流提供了TLS实现

19个版本

使用旧的Rust 2015

0.2.1 2020年1月1日
0.2.0 2019年5月26日
0.1.22 2019年4月28日
0.1.20 2018年7月15日
0.1.8 2017年6月17日

#2133 in 异步

Download history 2949/week @ 2024-03-14 2794/week @ 2024-03-21 4079/week @ 2024-03-28 2618/week @ 2024-04-04 1957/week @ 2024-04-11 2595/week @ 2024-04-18 6298/week @ 2024-04-25 6220/week @ 2024-05-02 6639/week @ 2024-05-09 6169/week @ 2024-05-16 5824/week @ 2024-05-23 6539/week @ 2024-05-30 6874/week @ 2024-06-06 6348/week @ 2024-06-13 6209/week @ 2024-06-20 3990/week @ 2024-06-27

24,745 每月下载量
12 个crate中使用 (通过 lapin-futures-tls-api)

MIT/Apache

97KB
2K SLoC

tokio-tls

基于 native-tls crate 为Tokio构建TLS/SSL流的实现

Build Status Build status

文档

使用方法

首先,将以下内容添加到您的 Cargo.toml

[dependencies]
native-tls = "0.1"
tokio-tls = "0.1"

然后,将以下内容添加到您的crate中

extern crate tls_api;
extern crate tokio_tls_api;

use tokio_tls::{TlsConnectorExt, TlsAcceptorExt};

您可以在 https://tokio.rs 上找到此crate的使用示例,并附有详细说明。

此crate提供了两个扩展trait,TlsConnectorExtTlsAcceptorExt,这些扩展trait增强了 native-tls crate 提供的功能。这些扩展trait提供了异步连接流和异步接受套接字的能力。TLS参数的配置仍然通过 native-tls crate 的支持来完成。

默认情况下,native-tls crate 目前使用适用于平台的TLS实现后端。这意味着

通常情况下,这些选择意味着在使用 TLS 时,您不必担心可移植性问题,这些库通常都是默认安装的。

tokio-proto 的交互

如果您在与客户端或服务器端开始 TLS 协商的协议进行工作,则可以使用此 crate 中的 proto::Clientproto::Server 类型来执行这些任务。要这样做,您可以更新您的依赖项如下

[dependencies]
tokio-tls = { version = "0.1", features = ["tokio-proto"] }

许可证

tokio-tls 主要在 MIT 许可证和 Apache 许可证(版本 2.0)的条款下分发,部分内容受各种类似 BSD 的许可证的保护。

有关详细信息,请参阅 LICENSE-APACHE 和 LICENSE-MIT。

依赖关系

~0.5–1.8MB
~27K SLoC