只靠簡訊的問題
簡訊 OTP 有真實的弱點:它易受 SIM 換卡攻擊與攔截、依賴盡力而為的電信業者送達,而且每次傳送都要花錢,成本隨規模增長。對低風險的便利場景它沒問題;對高價值帳號或高量級,唯獨依賴它就是一種負債。
現代的答案不是「永不用簡訊」,而是「為每個流程用對因素」,常常把簡訊當作降級而非主因素。
- 安全:SIM 換卡與攔截能擊敗簡訊 OTP。
- 可靠性:送達是盡力而為的,且因國而異。
- 成本:每次傳送都計費,並隨使用者增長。
通行密鑰(WebAuthn/FIDO2)
通行密鑰用一對綁定到使用者裝置、由生物辨識或 PIN 解鎖的密碼學金鑰,取代密碼與 OTP。它們在設計上抗釣魚、每次驗證零成本,如今在主流瀏覽器與平台上均受支援並可雲端同步。對新的消費級產品,通行密鑰正日益成為推薦的主因素。
- 強項:抗釣魚、無每次使用成本、設定後體驗極佳。
- 弱項:帳號復原與跨生態同步需要謹慎設計。
- 在新流程中作為主因素使用,並為復原留一個降級。
TOTP 驗證器應用程式
TOTP(以時間為基礎的一次性密碼)在 Google Authenticator 或 Authy 這類應用程式中,由一個共享密鑰產生輪轉的 6 位驗證碼。它沒有送達依賴、沒有每次使用成本,且比簡訊更能抵抗攔截。代價是設定摩擦,以及裝置遺失時的復原。
- 強項:無送達風險、無每次使用成本、抵抗 SIM 換卡。
- 弱項:註冊有摩擦;裝置遺失需要復原碼。
- 作為面向安全敏感使用者的升級因素很出色。
魔法連結
魔法連結給使用者傳一封含一次性登入 URL 的電子郵件,為以電子郵件為中心的產品徹底移除密碼。它簡單又熟悉,但依賴電子郵件送達、承接了電子郵件的釣魚面,且當連結在與登入不同的瀏覽器中開啟時表現不佳。
- 強項:無密碼、熟悉、無需手機號碼。
- 弱項:電子郵件送達與跨瀏覽器連結處理;釣魚面。
- 適合低風險、以電子郵件為先的產品;對敏感操作搭配裝置檢查。
比較各選項
沒有單一贏家——讓因素匹配風險與受眾。一個常見的現代模式是:通行密鑰為主、TOTP 為升級,簡訊僅作為面向別無他選使用者的最後手段降級保留。
| 方式 | 安全性 | 每次使用成本 | 最適合 |
|---|---|---|---|
| 簡訊 OTP | 中(有 SIM 換卡風險) | 依則訊息 | 廣泛觸達、低風險降級 |
| 通行密鑰 | 高(抗釣魚) | 無 | 新產品的主因素 |
| TOTP 應用程式 | 高 | 無 | 面向安全敏感使用者的升級 |
| 魔法連結 | 中 | 僅電子郵件成本 | 以電子郵件為先、低風險的流程 |
如何在不影響使用者的前提下遷移
不要一夜之間把簡訊拔掉。先把一個更強因素作為選項加入、鼓勵註冊,然後才把簡訊降級為降級手段。為每種方式保留一條復原路徑,讓裝置或管道遺失永不把使用者鎖在門外。
- 1
增加,而非替換
在保持簡訊可用的同時,把通行密鑰或 TOTP 作為額外選項引入。
- 2
推動註冊
在自然時機——比如某次敏感操作之後——提示使用者設定更強因素。
- 3
把簡訊降級為降級手段
一旦採用率健康,就讓簡訊成為復原/最後手段管道,而非預設。
- 4
保證復原
提供復原碼或備用因素,讓任何單一裝置的遺失都不會把任何人鎖死。