为什么扫二维码就能连上WiFi
二维码本身只是一张存放文字的图。手机相机读到的文字如果以 WIFI: 开头,就会被当作WiFi连接信息,并弹出"是否连接此网络"的提示。这种格式通过Android上的ZXing条码库流行起来,目前iOS和Android的系统相机一般都能识别。本工具生成的字符串由下面几部分组成。
WIFI:表示这是WiFi信息的标记S:名称;是SSID(网络名称)T:WPA;是加密方式,取值为WPA、WEP或nopass之一。WPA2、WPA3的路由器通常也用WPA连接。P:密码;是密码,开放网络则留空。H:true;仅在隐藏网络时才加上- 末尾再加一个
;表示结束。
完整示例:WIFI:S:HomeWiFi_5G;T:WPA;P:myPassw0rd2024;;(43个字符)。本工具只是拼出这个字符串并画成二维码,结果下方会显示密码用星号遮住的同一字符串,方便与扫描结果对照。
特殊字符如何处理
字符串中 ; : , " \ 是分隔用的字符。如果名称或密码里含有它们,前面必须加反斜杠(\),表示"这是普通字符而不是分隔符"。本工具会自动处理。
| 输入的内容 | 特点 | 写入二维码的内容 |
|---|---|---|
Cafe;Free | 含分号 | Cafe\;Free |
My:Wi,Fi | 含冒号和逗号 | My\:Wi\,Fi |
pass"word | 含双引号 | pass\"word |
a\b | 含反斜杠 | a\\b |
密码前后的空格会作为密码的一部分保留,而SSID前后的空格会被视为输入失误而去掉;名称中间的空格会保留。
二维码尺寸与纠错等级
内容越长,二维码的方格(模块)越多;纠错等级越高,二维码被污损或遮挡时越容易读出,代价是图案更密。各等级可恢复的比例大约是L 7%、M 15%、Q 25%、H 30%。下表是用本页的二维码库为同样的WiFi信息生成时的尺寸(版本号和每边方格数)。
| 示例 | 字符数 | L | M | Q | H |
|---|---|---|---|---|---|
| 短名称 + 8位数字 | 30 | 2版 (25×25) | 3版 (29×29) | 3版 (29×29) | 4版 (33×33) |
| 常见家用(名称11字符,密码14字符) | 43 | 3版 (29×29) | 3版 (29×29) | 4版 (33×33) | 5版 (37×37) |
| 咖啡馆访客网络(名称23字符,密码30字符) | 71 | 4版 (33×33) | 5版 (37×37) | 6版 (41×41) | 8版 (49×49) |
| 最大长度(名称32字符,密码63字符) | 113 | 5版 (37×37) | 6版 (41×41) | 8版 (49×49) | 10版 (57×57) |
显示在屏幕上扫描,默认的M就够了。贴在路由器上或打印放在咖啡桌上,可能被折损、反光或弄脏时,请选Q或H,并因图案变密而把打印尺寸放大到边长至少3厘米,最好4~5厘米。也别裁掉周围的白边,扫描器依赖这圈空白。
计算示例:长度如何影响二维码大小
示例1:名称 HomeWiFi_5G(11个字符)加密码 myPassw0rd2024(14个字符),连同前缀和分隔符共43个字符,纠错M时为3版(29×29方格)。 示例2:32个字符的名称加63个字符的密码(路由器允许的最大长度)共113个字符,M时为6版(41×41方格)。如果以相同大小打印,后者的方格更小,所以密码越长,越应该把打印尺寸放大以便扫描。
密码长度检查标准
WPA/WPA2个人版的密码为8~63个字符(或64位十六进制),超出范围路由器不会接受,所以本工具在WPA密码少于8个字符时会提醒。WEP的密钥一般为5或13个ASCII字符(十六进制为10或26位),其他长度会提示你核对。无加密网络会忽略密码。这些提示用来帮你发现输入错误,最终仍以路由器的实际设置为准。
补充一点:SSID的长度上限是32字节而不是32个字符,中文名称每个字占多个字节,会比32个字更早达到上限。802.11规范把WPA口令定义为ASCII字符,因此密码最好使用ASCII字符。另外,ZXing的说明中提到,名称或密码看起来像十六进制(例如ABCD)时要用双引号括起来,而本工具不会自动加引号,如果只由数字和A~F组成的值连不上,可能是不同设备解释方式不同。
这些信息安全吗
你输入的WiFi名称和密码只在浏览器内转换为二维码。本页使用的是在浏览器里运行的二维码库,没有把输入内容发送到外部的处理,所以不会上传到服务器,也不会被保存。不过,生成的二维码图片本身以明文包含密码,没有加密。任何能扫描它的人都能知道密码,因此建议做到以下几点。
- 不要把主网络的二维码贴在公共场所。请单独建一个访客网络,只分享它的二维码。大多数路由器都有访客WiFi功能。
- 通过聊天软件或邮件发送图片,密码会留在记录里。只发给需要的人,供来访者使用的话要定期更换密码。
- 下载的文件名里不含SSID或密码,但图片本身就等于密码,别把它放在会自动备份的相册里。
- 更改密码后,之前生成的二维码就失效了,请重新生成并替换打印件。
扫不出来时的排查顺序
- 确认相机的二维码识别已开启。有些手机在设置里把它关掉了。
- 确认加密方式是否正确。仅WPA3(仅SAE)的设置,或使用账号密码的企业级网络,可能无法用这种格式表示,或者各设备表现不同。改成WPA2/WPA3混合模式往往能解决。
- 隐藏SSID的网络如果没勾选,连接会失败;反过来网络不隐藏却勾选,通常没问题但没必要。
- 检查特殊字符和大小写。密码区分大小写,也要留意名称里有没有看不见的空格。
- 打印质量:在明亮处距离20~30厘米扫描。如果模糊或太小,把纠错等级提到Q或H并放大打印。
- 仍然不行,就把扫描后显示的文字复制出来,与本页的"连接字符串"比较。
常见误解与局限
- "扫描后看不到密码,所以很安全"是误解。保存到设备后可能不显示,但解析二维码就是明文。
- 它不能替代已经连接的设备。扫描只是省去新设备手动输入连接信息的麻烦。
- 在公共场所扫描来历不明的二维码来连WiFi可能有风险,存在被引导连到伪造WiFi的情况,请只扫描可信的二维码。
- 如果需要的是网址或文字二维码,请用二维码生成器。
- 密码本身太弱的话,应先换密码再生成二维码。可以用密码生成器生成足够长的随机密码,用密码强度检测器检查现有密码。
生成后怎么用
家里的访客用二维码可以装框放在玄关或客厅,告诉来访者"打开相机对准这个二维码即可",就不用口头报密码了。商店可以在桌牌上连同SSID一起印出来,让无法扫码的设备也能手动输入。电视、打印机、智能音箱这类没有摄像头的设备,需要在设备屏幕上直接输入。每次更换路由器或更新密码,都重新生成并替换二维码,可以避免旧二维码带来的混乱。
常见问题
所有手机都能识别吗?
目前大多数iOS和Android的系统相机都能自动识别。部分旧设备或厂商定制的相机可能需要另装二维码扫描应用,没有摄像头的笔记本电脑、电视等则需要手动输入。
与普通二维码生成器有什么不同?
普通二维码存放网址或文字,而这里存放的是WiFi自动连接的标准格式字符串,扫描后会立刻弹出连接提示。特殊字符转义和隐藏网络标记也会自动处理。
WPA3路由器应该选哪种加密方式?
大多数WPA3路由器与WPA2混合运行,选"WPA/WPA2/WPA3"即可。不同设备对仅WPA3模式的支持不一,扫描后连不上时,可以试着把路由器改成混合模式。
修改密码后需要重新生成二维码吗?
需要。二维码里是生成时的密码,所以更改密码或名称之后要重新生成。
隐藏网络怎么设置?
勾选"隐藏网络"后,连接字符串里会加上 H:true,扫描的设备会尝试去查找不广播名称的网络并连接。
图片文件保存在哪里?
点击"下载图片"后,PNG文件(wifi-qrcode-playinfobox.png)会保存到浏览器默认的下载文件夹。图片在你的设备上生成,不经过服务器。