#客户端-服务器 #WoW #登录 #魔兽世界 #srp6

wow_srp

支持重新连接的世界杯 SRP6 服务器和客户端库

13 个不稳定版本 (6 个破坏性更新)

0.7.0 2024年2月12日
0.6.0 2023年5月20日
0.5.3 2022年11月4日
0.4.2 2022年6月3日
0.2.0 2021年7月5日

#174认证


wow_world_messages 中使用

MIT/Apache 和可能 LGPL-3.0+

2.5MB
4.5K SLoC

WoW_SRP

一个独立的世界杯 SRP6 风格的 Rust 库。具有客户端和服务器功能。

用法

将以下内容添加到 Cargo.toml

[dependencies]
wow_srp = "0.7.0"

或使用 cargo edit 安装

cargo add wow_srp

然后阅读 docs.rs 中的文档。

示例

wow_messages 仓库中有示例,展示了如何使用 wow_login_messageswow_vanilla_messages 库的消息定义来展示这两个 crate。

功能

可以使用两种不同的任意精度整数库,即

  • num_bigint. 无外部依赖的慢速纯 Rust 实现。默认启用,无需选择。

  • rug. 基于 GMP 库 的快速包装器,具有外部依赖,如 gmp_mpfr_sys 文档 中所述。通过启用 srp-fast-math 功能和禁用默认功能来启用。所以 代替 上面做这个

[dependencies]
wow_srp = { version = "0.7.0", default-features = false, features = ["srp-fast-math", "wrath-header"] }

srp-fast-math 功能可以将总时间减少 50%。强烈建议在生产环境中启用此功能,因为它在理论上也具有更好的安全性。

要查看您设置上的性能差异,可以为默认版本运行 cargo bench,并为 srp-fast-math 版本运行 cargo bench --features srp-fast-math --no-default-features

《wrath-header》功能门控功能及相关依赖项,请参阅wrath-header

MSRV

wow_srp 的最低支持 Rust 版本 (MSRV) 为 1.65.0。在 wow_srp 达到 1.0.0 (MAJOR.MINOR.PATCH) 之前,MSRV 可能会在 PATCH 版本中提高。

许可证

在以下任一许可证下许可:

由您选择。

贡献

除非您明确表示,否则根据 Apache-2.0 许可证定义的,您有意提交以包含在作品中的任何贡献,应如上双许可,而不附加任何额外条款或条件。

依赖项

~0.7–5MB
~102K SLoC