Passkeys:什麼哎呀,為什麼?
>經常在前端社區中被忽視,但Passkey對用戶體驗的影響,尤其是在身份驗證和形式處理方面,是不可否認的。 本文探討了Passkeys和Webauthn API,對這項新興技術提供了全面的了解。 目錄的
>鍵術語
了解Passkeys
- PassKeys:密碼更換
- 加密解釋
- >訪問Passkeys
- > Passkeys vs. Webauthn
- 身份驗證過程:摘要
- 詳細介紹了Passkey實現
- 潛在的缺點
- Passkeys的未來
- 更多資源
- 鍵術語
- 瀏覽Passkeys的世界需要熟悉特定術語。 讓我們澄清一些關鍵概念:
依賴派對(服務器):
服務器處理身份驗證請求。 我們將在本文中使用“服務器”。- 客戶端:> Web瀏覽器或操作系統。 >
-
> authenticator:軟件或硬件生成和存儲公共密鑰對。
- > fido:>定義FIDO憑據的開放標準組織。
- > webauthn:
passkeys的基礎協議(也稱為fido2憑據或單位設備fido憑據)。 > passkeys: - webauthn具有云同步(多設備FIDO憑據,可發現的憑據或居民憑據)。 > 公共密鑰密碼學:
- >使用私人和公共密鑰對簽名/驗證或加密/解密的系統(非對稱加密)。 rsa: >公共密鑰加密算法。
-
>橢圓曲線密碼學(ECC):
一種現代的公共密鑰加密算法。 > - ES256:
使用ECDSA簽名算法的橢圓曲線公共密鑰,帶有SHA256哈希。 > > rs256: - 了解Passkeys 在討論Passkeys之前,我們必須了解Webauthn(FIDO2)。 PassKeys在Webauthn上構建,利用公共密鑰密碼學替換密碼。 安全設備(硬件鍵或TPM)生成私鑰和公共密鑰。
- passkeys.dev
- passkeys.io
公共密鑰公開訪問,而私鑰仍將存儲在生成設備上。 WebAuthn的關鍵限制是設備依賴性。丟失設備意味著失去訪問權限。 Passkeys通過云同步解決此問題,從而使多個設備訪問訪問。 但是,重要的是要注意,也存在單個設備憑證。
>>目前,iOS,MACOS和Android為云同伴Passkey提供了全面的支持,儘管瀏覽器兼容性仍然是一個因素。 Google密碼管理器和Apple iCloud鑰匙扣有助於同步。
PassKeys:密碼更換
>公共密鑰密碼學採用簽名。 通過簽名算法使用私鑰處理數據,然後使用公共密鑰進行驗證。 任何人都可以生成一個密鑰對,但是只有專用密鑰才能使用相應的公鑰創建簽名。 此簽名替換了密碼。 服務器存儲公鑰,身份驗證涉及通過簽署隨機挑戰來驗證私鑰的擁有。
這種方法消除了與密碼洩漏相關的風險。 如果數據庫被妥協,則僅暴露了公共密鑰,使攻擊者無用。 由於瀏覽器記住憑據,簡化了登錄過程,因此被遺忘的密碼成為過去的事。 生物識別技術或引腳可以增強安全性。加密解釋
>公共密鑰密碼學利用私人和公共密鑰對。 加密使用收件人的公鑰,確保只有收件人的私鑰才能解密。這提供了保密性
。 通過簽名和驗證來確保真實性。 發件人的私鑰符號帶有消息哈希,只能使用發件人的公鑰進行驗證。 > >訪問Passkeys
>訪問需要密鑰生成和存儲,通常由 authenticator
(硬件或軟件)促進。 軟件身份驗證器可能會使用TPM或安全的飛地,而硬件身份驗證器則包括Yubikeys等設備。 客戶端到身份驗證器協議(CTAP)提供了一個接口,用於通過各種方法(NFC,USB,藍牙)訪問身份驗證器。 一個獨特的功能是使用手機(通過藍牙)作為缺乏本機Passkey支持的設備的身份驗證器。
> Passkeys vs. Webauthn在存儲和登錄過程中,
passkeys(多設備)與WebAuthn鍵(單個設備)不同。 WebAuthn需要一個用戶句柄和一個允許的列表,而Passkeys則利用服務器的域名識別關聯密鑰,從而簡化了登錄過程。 在密碼學上,它們本質上是相同的。>身份驗證過程:摘要
WebAuthn和Passkey生成都涉及接收服務器挑戰並使用navigator.credentials.create
>簽署新挑戰,然後由服務器驗證。 navigator.credentials.get
詳細介紹了Passkey實現
passkey的用法涉及
證明(註冊)和
響應包括公共密鑰和navigator.credentials.create
(包含
// ... (code snippet for PublicKeyCredentialCreationOptions) ...
)。 服務器驗證此數據並存儲公共密鑰,ID,以及(可選)clientDataJSON
和cose算法。 type
斷言challenge
origin
attestationObject
>處理斷言。
響應包括簽名和
(包含原點哈希和navigator.credentials.get
)。 該服務器驗證簽名,
// ... (code snippet for PublicKeyCredentialRequestOptions) ...
>
authenticatorData
潛在的缺點signCount
clientDataJSON
>當前限制包括有限的操作系統支持(尤其是Windows和Linux)以及Google和Apple的Passkey平台之間的互操作性。 signCount
>
廣泛的操作系統採用將推動使用增加。 密碼管理人員將集成PassKey支持,而Android和iOS上的本機支持將進一步鞏固其位置。 Passkeys承諾未來無密碼的未來,增強安全性和用戶體驗。
更多資源
>實時演示
演示github存儲庫
> Yubikey文檔
以上是Passkeys:什麼哎呀,為什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

在本週的平台新聞綜述中,Chrome引入了一個用於加載的新屬性,Web開發人員的可訪問性規範以及BBC Move

有很多分析平台可幫助您跟踪網站上的訪問者和使用數據。也許最著名的是Google Analytics(廣泛使用)
