#tcp #net #networking

simpletcp

用于简单且安全的 TCP 通信的 crate

12 个版本 (4 个稳定版)

1.2.1 2020 年 9 月 15 日
1.1.0 2020 年 9 月 10 日
0.5.1 2020 年 9 月 8 日
0.4.1 2020 年 9 月 1 日
0.1.0 2020 年 8 月 21 日

#88 in #net

每月下载量 43
sfshr 使用

MIT 许可证

61KB
1.5K SLoC

simpletcp

用于简单且安全的 TCP 通信的 crate

加密

所有流量都使用 256 位 AES-CBC 加密

初始化

  1. 服务器生成 RSA 密钥并将其发送给客户端
  2. 客户端生成 AES 密钥,使用服务器密钥对其进行加密并发送给服务器
  3. 从现在起,所有通信都使用 256 位 AES 在 CBC 模式下加密

使用方法

//Connect
let mut client = TcpStream::connect("127.0.0.1:4234").unwrap();

//Wait until connection is initialized
client.wait_until_ready().unwrap();

//Build message
let mut msg = Message::new();
msg.write_f64(1.23455);
msg.write_buffer(&[3, 1, 4, 56]);

//Send message
client.write(&msg).unwrap();

查看 examples

依赖项

~2.3–5MB
~102K SLoC