由于之前使用python写的南邮校园网登录脚本速度太慢了,而且缺点众多,所以我使用C重写了船新版本.理论上只要是GET包的登录请求都可以使用这个脚本,只需要修改一下URL的数据即可.
- 快到起飞,经测试最快的版本
version2_ASM.cpp平均耗时 8.430ms - 在挂梯子的情况下也可以正常使用,原因是直接使用的是
IP地址,节省了DNS解析(南邮的DNS解析就是一坨) - 代码依赖少,没有使用任何第三方库,只依赖了
C和汇编 - 安卓直接去下
Release版本开箱即用
- 因为是
C写的代码,所以你需要编译后才能使用. - 每次更换
账户密码你都需要修改源码,然后重新编译(这样是为了硬编码账户密码到程序中加快速度) - 由于以上原因,所以本项目不可能提供
Release版本(安卓除外),只能提供源码,请自行编译. - (有可能出现的问题)由于
p.njupt.edu.cn的域名解析后的IP被硬编码在程序中,所以如果IP变了,那么程序就会完全失效.
version1_API.cpp使用windows的底层API函数实现的版本,速度慢1ms左右version2_ASM.cpp使用汇编实现的版本,速度最快version2_ASMcross.cpp和version2_ASMcross.cpp是全平台版本,可以在Windows和Linux以及MacOS上完成编译正常运行. 推荐不知道选哪个的用这个Android v1.5是安卓版本请前往Release下载
Note
version1和version2的所有版本默认都在是clang编译器下测试。不保证在msvc下能正常编译通过,如果你的电脑只安装过VS Studio,请创建一个新的项目,然后把version3_ASMall.cpp的代码复制进去编译。
| WIFI名称 | NJUPT | NJUPT-CMCC | NJUPT-CHINANET |
|---|---|---|---|
| 运营商 | 校园网 | 移动 | 电信 |
| @后缀 | 去除@ | CMCC | njxy |
- 下载Release中的apk文件
- 安装后按照提示输入账号密码\选择对应运营商
- Enjoy it!
- 需要准备:
- Windows: Clang/GCC 或者 VS Studio
- Linux: Clang/GCC
- 拉取源码:
git clone https://github.com/lux-QAQ/NJUPT_Fastlogin.git - 修改源码:
- 打开
version2_ASMcross.cpp(这里选择你需要的版本即可,推荐这个) - 按照注释修改
#define USERNAME "你的账户" - 按照注释修改
#define PASSWORD "你的密码"
- 打开
- 使用注释中对应的指令编译源码
关于 arm64 可以参考
clang++ -target aarch64-linux-gnu \
--sysroot=/usr/aarch64-linux-gnu \
-fuse-ld=/usr/bin/aarch64-linux-gnu-ld \
-O3 -march=armv8-a -mtune=cortex-a53 -fno-stack-protector -no-pie -flto -ffunction-sections -fdata-sections -fomit-frame-pointer -ffast-math -fno-exceptions -fno-rtti -U__FLOAT128__ -D__float128=double -Wl,--gc-sections -s ./Version2_asm_cross.cpp -o aarch64_login如果编译过程有问题请发Issue,我会尽快解决
如果你不会编译可以联系我QQ:1098346640仅限妹子,我有时间会尽力帮助你
- Windows 支持
- Linux 支持
- MacOS 支持
- Android 支持
- 使用配置文件
- IPv6 登录的支持
- 单线多播的支持
- 考虑适配其他学校
D:\test3\njuptnet>performance_test.exe
========== 性能测试开始 ==========
每个程序将运行 1000 次
测试 version1_API.exe...
成功运行次数: 1000/1000
测试 version2_ASM.exe...
成功运行次数: 1000/1000
========== 测试结果 ==========
version1_API.exe 总运行时间: 9.265 秒
version2_ASM.exe 总运行时间: 8.322 秒
version1_API.exe 平均运行时间: 9.265 毫秒/次
version2_ASM.exe 平均运行时间: 8.322 毫秒/次
version2_ASM.exe 比 version1_API.exe 快 1.11 倍
测试完成,按任意键退出...南邮的校园网登录实际上就是一个GET请求,携带用户名和密码. 点击登录按钮就等于直接把构造好的这个GET请求发送到服务器. 但是默认的域名为p.njupt.edu.cn,这个域名会被解析成一个IP地址,然后再发送请求. 但是这个解析过程会消耗时间,而且南邮的DNS服务器非常慢,所以我们直接把IP地址硬编码在程序中,这样就省去了DNS解析的时间. 另外,使用C语言和汇编可以最大限度地减少程序的依赖。
登录软件的行为和病毒非常相似:
- 体积小
- 不需要安装和交互
- 后台静默运行
- 会自动发送数据
由于以上原因,程序非常容易被杀毒软件误报.但是源码是开源的,有没有恶意代码,你看源码就知道了.
这里附上安全性检测结果:

- 本项目仅供学习交流使用,请勿用于非法用途.任何后果自行承担.
- 本项目的通信没有使用
SSL加密,请慎重考虑确保安全后使用,其后果自行承担. - 本项目的代码开源,请自行查看代码.
This project is licensed under the Creative Commons Attribution-NonCommercial 4.0 International License. You can view the full license here. 根据该License严禁将该项目用于任何商用目的。任何人将该项目商用所获取的任何非法利益与本项目无关。


