跳至主要内容

Passkey

Passkey是什麼?

它是一種取代傳統密碼的登入技術。它的核心是**「公開金鑰加密」**,由一把「公鑰」(儲存在網站伺服器)和一把「私鑰」(儲存在你的裝置上)組成。

Passkey 如何運作?

登入時,網站會傳送一個「挑戰」(Challenge) 給你的裝置。你使用 Face ID、指紋或 PIN 碼來**「授權」**你的裝置使用「私鑰」去簽署這個挑戰,然後傳回給網站。網站用「公鑰」驗證無誤後,即登入成功。

Passkey 安全嗎?

非常安全。因為:私鑰永不離開裝置: 整個過程中,你的「私鑰」(真正的秘密)絕對不會透過網路傳輸,駭客無法在傳輸中竊取。防釣魚 (Phishing): Passkey 與網站的「網域」(domain) 綁定。即使你被騙到一個假的釣魚網站 (例如 google-login.com),你的裝置也會發現網域不符,而拒絕使用儲存於 google.com 的私鑰。

為什麼 Passkey 不會重複?

這有兩層意義,也是你最關心的問題:

A. 網站之間不重複:

你為 Google 產生的私鑰(私鑰A)和為 Microsoft 產生的私鑰(私鑰B)是完全不同的兩把鑰匙。這徹底解決了傳統密碼「一組密碼走天下」的風險。就算 PChome 的公鑰資料庫被盜,駭客也無法用它登入你的 Google 帳號。

B. 使用者之間不重複(碰撞機率為 0):

關鍵在硬體: 你的私鑰不是在工廠「製造」好的,而是由你裝置上的安全晶片(如 Apple Secure Enclave、TPM)「即時產生」的。產生方式: 晶片使用「真實亂數產生器」(TRNG),它讀取晶片內部的物理雜訊(如熱雜訊)來產生一個 256-bit 的巨大隨機數。機率問題: 這個數字的可能性有 $2^256$ 種(一個 78 位數的數字)。兩個人剛好產生同一把私鑰的機率,比在宇宙中隨機選中同一顆原子的機率還低,在現實中被視為 $0$。

  1. Face ID 或 PIN 碼扮演什麼角色?

它們不是你的 Passkey。它們是你用來**「解鎖保險箱」**的鑰匙。私鑰:被鎖在裝置的安全晶片(保險箱)裡。Face ID / PIN 碼:你用來向保險箱證明「你就是你」,並授權保險箱「使用」(而非取出)裡面的私鑰。