一个以 Go 编写的分散式 P2P 网络栈。
noise 是一个具有意见的、易于使用的 P2P 网络栈,用于分散式应用程序,以及用 Go 编写的加密协议。
通过利用少量经过严格测试的生产级依赖项,使噪音最小化,可靠,开发者友好,性能出色,安全,并在众多设备之间实现跨平台支持。
context 支持取消/超时 ping 请求,向其他节点发送消息,从其他节点接收消息,或请求其他节点发送消息。- 精细控制节点和其他节点的生命周期,以及 goroutine 和资源(同步/异步/友好地开始监听新节点,停止监听新节点,向某个节点发送消息,断开现有节点,等待节点准备就绪,等待节点断开连接)。- 通过池化连接并指定在任何给定时间允许的最大入站/出站连接数,来限制资源消耗。- 通过为空闲节点设置可配置的超时,来彻底回收资源。- 通过使用 Curve25519 实现椭圆曲线 Diffie-Hellman 手shake,建立共享密钥。- 通过使用认证加密算法与某个节点建立加密会话。暂无开放 Issues,或尚未同步最近议题。