什么是短信验证?一次性验证码如何从应用发到手机

短信验证是一种核验方式:应用通过短信向某个手机号码发送一次性验证码,并要求您输入回去,以证明您能在该号码上接收短信。验证码从应用的服务器发出,经过短信网关,再通过移动运营商送达该号码对应的手机或收件箱。它被广泛用于注册和登录,但 NIST 等安全机构认为它的安全性不如身份验证器应用和安全密钥。
短信验证的作用
应用使用短信验证来回答一个问题:这个人现在能否在这个手机号码上接收短信?如果您能读到验证码并输入回去,应用就认为该号码已确认。
这一项核验服务于多个目标。注册时,它把账号与一个可联系的号码绑定,并提高批量创建虚假账号的成本,因为每个账号都需要一个可用的号码。登录时,它在密码之外充当第二因素。找回账号时,它为应用提供了一种在您忘记密码时联系到您的方式。
这种验证码通常称为 OTP(一次性密码),或直接叫验证码。术语表 /glossary 解释了这些术语以及 2FA、A2P 短信、发件人 ID 和短信网关等相关概念。
验证码的传递过程,逐步解析
1. 您输入手机号码。应用会检查格式,通常会把它转换为带国家代码的国际 E.164 格式,还可能对号码所属国家/地区和号码类型进行自己的检查。
2. 应用服务器生成一个随机验证码,连同过期时间一起保存,并请求短信服务商发送它。许多应用在这一步使用第三方消息服务。
3. 短信服务商(通常称为短信网关)把消息送入移动网络。应用发给个人的消息称为 A2P(应用对个人)短信,发件方可能显示为短号码、长号码或字母数字发件人 ID。
4. 消息在运营商之间传递,直到到达为目标号码提供服务的网络。该网络把消息投递到 SIM 卡上;如果号码由 SMS Hallo 这类服务托管,则投递到在线收件箱。
5. 您读取验证码并输入应用,或一键复制。应用把它与保存的验证码进行比对。如果一致且未过期,核验即通过,该验证码也不能再次使用。
整个过程通常只需几秒钟,但每一步都由不同的公司负责,这就是链条中任何环节都可能出问题的原因。
语音电话、闪信来电等其他方式
许多应用在短信失败时提供备用方式:由自动语音电话读出验证码。还有些应用使用“闪呼”(flash call),即应用拨出一个电话,从来电号码中读取验证码,您无需接听。有些即时通讯应用还可以在条件允许时,通过自身应用或其他消息服务发送验证码。
这些方式仍然依赖电话网络能够连通该号码。如果您的号码既能接收短信也能接听电话,完成核验的途径就更多。SMS Hallo 的号码两者都能接收:验证码显示在短信收件箱中,来电可以在浏览器拨号器中接听。
收不到验证码的常见原因
号码输错了。漏掉国家代码、多了一个开头的零或数字顺序颠倒,都会把验证码发到错误的地方。请务必核对应用回显给您的号码。
应用不向这类号码发送。许多应用在发送前会检查号码类型和国家/地区。有些拒绝固定电话或网络电话号码,有些会限制特定国家/地区或号段。应用可能会显示错误,也可能干脆不发送验证码。
频率限制。反复请求验证码可能导致应用或短信服务商暂停发送一段时间。请等倒计时结束后只请求一次。
运营商过滤和路由延迟。网络会过滤疑似垃圾信息的流量,国际线路也可能增加延迟。耗时几分钟的验证码可能在已经过期后才到达。
手机或收件箱问题。使用 SIM 卡时,信号差、收件箱已满、拦截了发件人或垃圾信息过滤都可能让验证码看不到。使用在线号码时,请确认号码仍处于有效状态,并且您在控制面板中查看的是正确的号码。
验证码已过期。大多数验证码只在几分钟内有效。请使用最新的验证码,如有疑问就重新获取。
短信与其他第二因素的对比
短信很方便,因为几乎每个人都有手机号码,但权威指南将其排在其他方式之后。NIST 的数字身份指南 SP 800-63B-4 将通过公共电话网络进行的身份验证列为“受限”方式,指出验证方应考虑 SIM 卡更换或携号转网等信号,要求必须提供其他类型的验证方式,并说明带外验证码不具备抗钓鱼能力。
FTC 解释了实际风险:攻击者可以通过 SIM 卡劫持(SIM swap)接管号码并接收验证码。它认为身份验证器应用更安全,安全密钥则是最强的选项。CISA 针对高风险目标人群的指南更进一步,建议完全不要把短信用作第二因素,并指出短信没有加密。
身份验证器应用依照 IETF RFC 6238 中的 TOTP 标准,使用共享密钥在您的设备上生成基于时间的验证码,整个过程不经过电话网络。安全密钥和通行密钥(passkey)使用与真实网站绑定的公钥加密技术,能阻止大多数网络钓鱼。
结论:短信验证适合在注册时确认号码,也远比没有第二因素好;但对于最重要的账号,只要服务支持,就请添加身份验证器应用或安全密钥。
稳定收到验证码的小技巧
只在准备好输入时再请求验证码,因为大多数验证码几分钟内就会过期。等待时保持应用打开,不要切换出去再重新开始。
如果应用提供选择,一次短信失败后可以尝试语音电话。电话可能会走网络中的另一条线路。
使用您会长期保留的号码。验证并不只是一次性的:同一个号码日后可能用于新设备登录和密码重置,几个月后仍能联系到的号码能省去很多麻烦。
不要把验证码告诉任何人,即使对方自称是应用的客服团队。发给您的验证码证明您掌控着这个号码,把它交出去就等于把控制权交给了别人。
保持账号信息最新。如果更换号码,请在旧号码仍可使用时,在每个应用的设置中添加新号码,这样就不会因为验证码发到一个您已不再拥有的号码而被锁在账号之外。
为什么应用在意您使用哪种号码
由于短信验证也是防止虚假账号的一道关卡,许多应用会检查号码本身。免费公共在线接收短信网站的号码由所有访客共用,因此应用经常会屏蔽它们,而且发到那里的任何验证码都可能被陌生人看到。
真实手机号码是大多数服务所期望的号码类型。SMS Hallo 出租 181 个国家/地区当地手机号格式的真实手机号码,在您租用期间只有您能看到它收到的短信。即便如此,每个应用仍会自行决定接受哪些号码,没有任何服务商能保证所有应用都接受某个号码。
请只为您有权拥有的账号进行验证。SMS Hallo 的可接受使用政策禁止虚假或重复账号、欺诈,以及利用号码跳过身份核验。
用 SMS Hallo 接收验证码
用电子邮箱和密码注册,选择国家/地区和号码并付款。收到的短信会显示在控制面板中,验证码自动识别,可直接复制。
每个 SMS Hallo 号码都包含无限接收短信、无限接听来电、每月 500 条外发短信和每月 1,000 分钟外拨通话。额度每 30 天重置一次,未用完的额度不会结转。
12 个月套餐低至每月 $1.80(按年付费 $21.60),所有国家/地区价格相同,无开通费。请通过续费或开启自动续费保留号码,因为过期的号码可能会分配给别人,对方就可能收到仍绑定该号码的账号的验证码。
每个 SMS Hallo 号码都附带三项保障。第一,7 天免费更换:7 天内您可以免费换成同一国家/地区的另一个可用号码,最多 3 次,新号码保留原套餐和到期日。第二,“可用,否则 100% 退款”:如果号码无法用于您租用它所针对的应用,例如验证码始终收不到,7 天内申请即可退还已付金额的 100%。第三,7 天退款保证:如果号码未拨打或接听过任何电话、未收发过任何短信,7 天内可无条件全额退款。
资料来源
- NIST SP 800-63B-4, Digital Identity Guidelines: Authentication and Authenticator Management
- FTC Consumer Advice, Use Two-Factor Authentication to Protect Your Accounts
- CISA and partners, Mobile Communications Best Practice Guidance (December 2024)
- IETF RFC 6238, TOTP: Time-Based One-Time Password Algorithm
常见问题
什么是短信验证码?
一种简短的一次性验证码,通常为 4 到 8 位数字,由应用通过短信发送,用来确认您能在某个手机号码上接收短信。它只在有限时间内有效,且只能使用一次。
短信验证就是双重验证吗?
不一定。注册时它只是确认您的号码。当它在登录时与密码配合使用时,才起到第二因素的作用。
短信验证安全吗?
它能增加一层保护,但由于 SIM 卡劫持、拦截和网络钓鱼等风险,NIST、FTC 和 CISA 都认为它不如身份验证器应用和安全密钥。重要账号在有条件时请使用更强的方式。
为什么我收到的是语音电话验证码?
许多应用在短信较慢或被拦截时提供电话作为备用方式。自动语音会读出验证码,您再输入即可。
为什么收不到验证码?
常见原因包括号码输错、应用不向该类号码发送、多次请求后触发频率限制、运营商过滤或延迟,以及验证码已过期。
没有 SIM 卡也能接收验证码吗?
可以。在线手机号码可以在网页控制面板中接收短信。应用仍会自行决定接受哪些号码,如果验证码始终收不到,可享受 SMS Hallo 的保障。
什么是短信网关?
应用用来把短信发送到移动网络的服务。它会把每条消息路由到为目标号码提供服务的运营商。
指南
- WhatsApp 第二个号码:无需新 SIM 卡即可获取
- 在线接收短信:验证码接收完整指南
- 身在海外,如何获得美国电话号码
- 身在海外,如何获得英国电话号码
- 第二个手机号保护隐私:为什么需要及如何获取
- 不用个人手机号使用 Telegram 的方法
- USDT/USDC 付款教程:新手分步指南
- 如何长期保留在线电话号码(续费指南)
- WhatsApp 收不到验证码?原因与解决方法
- “此手机号码不受支持”错误详解
- 什么是非 VoIP 号码?为什么应用要求使用?
- 一个手机号码能注册多个应用吗?
- 如何用自己掌控的号码验证 Google 账号
- 在印度如何获取美国号码注册 WhatsApp
- 免费在线接码网站安全吗?真实风险解析
- 验证号码该选哪个国家/地区?
- 如何接收来自其他国家/地区的短信
- 网上销售和交易平台专用的第二个手机号码
- 拥有第二个手机号码合法吗?
- 在交友应用上保护您的私人手机号码
- 数字游民手机号码:保留国内号码并添加当地号码
- 加密货币用户手机号隐私:降低 SIM 卡劫持风险
- 私人手机号码是匿名的吗?能隐藏什么,不能隐藏什么
- 如何获取海外当地企业电话号码
- AI 工具手机号验证:哪些服务需要及注意事项
- 各国 SIM 卡实名登记法规:要求与原因
- 虚拟号码为何被应用拒绝:真正原因
- WhatsApp 号码被封禁:接下来该怎么做
- Telegram 号码长期使用:保护账户安全
- Tinder 验证不用个人号码:保护隐私
- 接收银行和支付应用短信:如实说明限制
- 虚拟号码、副卡还是 eSIM:哪个适合您?
- 收不到 OTP 验证码?适用于任何应用的通用解决方法
- 我的国家用不了 Google Voice?怎么办
- 第二手机号码应用推荐:4 类方案对比
- 号码
相关阅读
接收银行和支付应用短信:如实说明限制
能用第二个号码接收银行和支付应用短信吗?为什么很多银行拒绝、我们的规则怎么说,以及验证器应用等更安全的选择。
收不到 OTP 验证码?适用于任何应用的通用解决方法
收不到 OTP 验证码?检查号码格式、等待重发倒计时、改用语音电话、排查被屏蔽的发件人和运营商拦截,并了解何时该换号。
数字游民手机号码:保留国内号码并添加当地号码
数字游民如何在海外继续接收国内验证码、在每个国家/地区添加当地号码并避免漫游费用,附银行与双重验证(2FA)的真实提醒。
更多指南
第二手机号码应用推荐:4 类方案对比
第二手机号码应用按类型对比:VoIP 应用、一次性接码服务、租用真实手机号码和 eSIM 套餐,客观分析各自优缺点。
我的国家用不了 Google Voice?怎么办
所在国家用不了 Google Voice?了解 Google 说明的可用地区、个人账户为何仅限美国,以及租用号码等如实可行的替代方案。
虚拟号码、副卡还是 eSIM:哪个适合您?
虚拟号码、副卡和 eSIM 对比:费用、手机要求、实名规则、出行、短信和通话以及长期保号,帮您选对第二个号码。
· SMS Hallo