#stream-cipher #salsa20 #crypto #async-io

ciph

对称加密层,用于异步读写连接

1个不稳定版本

0.1.0 2021年1月4日

#4 in #salsa20

MIT许可证

52KB
1K SLoC

对称加密层

为实现了tokioAsyncReadAsyncWrite类型的对称加密包装器。

目前仅支持Salsa20加密。包含在"hyper"特性中的hyper连接助手。

请查看示例以了解如何使用。


lib.rs:

对称加密层

这个库旨在使用相同类型的两个对称加密对双向流进行加密。

目前可用的唯一加密是Salsa20

#
#
      let psk = Psk::from_str(PSK_B64)?;
      let addr = spawn_server(psk.clone(), Randomness::Entropy).await?;
      let connector = Connector::new(psk, Randomness::Entropy);
      let tcp_stream = TcpStream::connect(addr).await?;
      let connect = connector.connect(tcp_stream);
      let mut encrypted_stream = connect.await?;

使用Unix时间戳作为初始握手加密的nonce。这是从Psk中的密钥产生的加密。客户端和服务器必须具有同步的时钟。允许60秒的差异。

依赖项

~7–20MB
~205K SLoC