日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長提供免費收錄網(wǎng)站服務(wù),提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

本文將以時間維度介紹一些目前常見的Web驗證方法以及相關(guān)協(xié)議,帶你了解Web驗證的過去、現(xiàn)在與未來。

傳統(tǒng)身份驗證方式

WEB驗證的過去現(xiàn)在與未來

 

 

過去普遍的做法可能是這樣的

注冊

  • 前端注冊頁面填寫用戶名和密碼表單,發(fā)送給后臺服務(wù)器
  • 后臺服務(wù)器將接收到的用戶名和密碼進(jìn)行加密并插入到數(shù)據(jù)庫,然后回饋是否成功的信息給前端頁面。

登錄

  • 前端登錄頁面填寫用戶名和密碼表單,發(fā)送給后臺服務(wù)器
  • 后臺服務(wù)器將接收到的用戶名和密碼進(jìn)行加密后與數(shù)據(jù)庫儲存信息進(jìn)行對比,如果賬號密碼一致則返回給前端登錄成功信息,不一致則返回失敗信息。

這種做法存在普遍問題

  • 當(dāng)?shù)卿洯h(huán)境不安全時,輸入密碼時可能被監(jiān)控
  • 發(fā)送密碼到服務(wù)器的過程中可能被劫持
  • 密碼存儲在數(shù)據(jù)庫如果被黑客攻擊可能造成大量密碼泄露

這種做法最大的問題在于你需要輸入密碼

  • 人們通常使用一個密碼應(yīng)對所有賬號,而攻擊者獲取密碼的方式又?jǐn)?shù)不勝數(shù),一旦在某個疏于防備的瞬間泄露了一個密碼,那么該用戶所有賬號都將面臨巨大安全風(fēng)險

第三方登錄方式

WEB驗證的過去現(xiàn)在與未來

 

 

現(xiàn)在,越來越多的站點開放了第三方登錄的功能,使得賬號密碼登錄不再是唯一的身份驗證方式,在可以進(jìn)行第三方登錄的站點,人們通常選擇使用第三方登錄的方式進(jìn)行身份驗證。實現(xiàn)第三方登錄有兩種協(xié)議,分別為OpenID開放認(rèn)證協(xié)議與OAuth開放授權(quán)協(xié)議

OpenID和OAuth完全是為了兩種不同的需求而生,OpenID的目標(biāo)是為了幫助網(wǎng)站確認(rèn)一個用戶的身份 ,OAuth的目標(biāo)是為了授權(quán)第三方在可控范圍下訪問用戶資源,OAuth有兩個版本,OAuth1.0由于其實現(xiàn)較為復(fù)雜,已經(jīng)基本被OAuth2.0所取代,以下分別對兩種協(xié)議進(jìn)行講解

OpenID 開放認(rèn)證協(xié)議

 

WEB驗證的過去現(xiàn)在與未來

 

 

定義

  • OpenID是一個去中心化的網(wǎng)上身份認(rèn)證系統(tǒng)。對于支持OpenID的網(wǎng)站,用戶不需要記住像用戶名和密碼這樣的傳統(tǒng)驗證標(biāo)記。取而代之的是,他們只需要預(yù)先在一個作為OpenID身份提供者(identity provider, IdP)的網(wǎng)站上注冊,比如google。OpenID是去中心化的,任何網(wǎng)站都可以使用OpenID來作為用戶登錄的一種方式,任何網(wǎng)站也都可以作為OpenID身份提供者。OpenID既解決了問題而又不需要依賴于中心性的網(wǎng)站來確認(rèn)數(shù)字身份。
  • OpenID是專為登錄認(rèn)證而生,它使用簡單,門檻很低。一個網(wǎng)站如果想要接入OpenID認(rèn)證是非常簡單的,不需要創(chuàng)建應(yīng)用,不需要App Key,不需要Secret,只需要將用戶導(dǎo)向OpenID Provider的Entry并帶上Callback,用戶只要同意提供信息,你就可以拿到這個用戶的唯一標(biāo)識。對于站點來說只要有人使用Google OpenID授權(quán)并返回這個唯一標(biāo)識那就是我在登錄。

優(yōu)點

  • 使用門檻變低,免去注冊流程,且用戶不再需要輸入密碼,可直接使用第三方登錄,有利于產(chǎn)品的廣泛傳播
  • 由于客戶端不在需要輸入密碼,很大程度上減少了安全風(fēng)險,客戶端不接觸用戶密碼,服務(wù)器端更易于集中保護(hù)

缺點

  • 依賴開放平臺的安全防護(hù)能力,因為開放平臺本身也可能是使用賬號密碼登錄或者其他第三方平臺登錄,所以開放平臺本身也會出現(xiàn)一定的安全風(fēng)險。如果開放平臺本身出現(xiàn)安全問題,那么所有與其關(guān)聯(lián)的第三方認(rèn)證站點都將會出現(xiàn)安全問題
  • 依賴開放平臺的認(rèn)證,如果開放平臺的穩(wěn)定性不達(dá)標(biāo),會導(dǎo)致自身登錄穩(wěn)定性差。如第三方平臺暫時不可用,則自身登錄也不可用,如果開放平臺惡意不給予認(rèn)證,那么用戶將無法登錄,這個在較大的站點上是致命的。
  • 用戶流失的風(fēng)險,因為用戶只記得是用第三方登錄的,而往往不是該網(wǎng)站的帳號,弱化了自身賬號的影響力。

OAuth2.0 開放授權(quán)協(xié)議

 

WEB驗證的過去現(xiàn)在與未來

 

 

定義

  • 提到OAuth,可以想像這樣一幅畫面,在一個炎熱且忙碌的夏天,小明與妻子在公司不分晝夜的趕著項目,可家里又有老人需要照顧,所以小明決定請一個保姆照顧老人,但是又覺得如果保姆能在家里亂走的話很不放心,就授權(quán)給保姆一個只能打開老人房門且有效期僅為7天的臨時密碼憑證,之后一周內(nèi)保姆拿著這個臨時密碼憑證便可以不經(jīng)過小明同意隨意出入老人房間,但不能進(jìn)入小明和他妻子的房間。
  • 我們把上面的例子搬到互聯(lián)網(wǎng),就是 OAuth 的設(shè)計了,OAuth與OpenID最大的區(qū)別就是,OpenID是一種認(rèn)證協(xié)議,是開放平臺給第三方一個能夠代表用戶身份的唯一標(biāo)識,而OAuth是一種授權(quán)協(xié)議。授權(quán)允許第三方直接從開放平臺讀取用戶信息。

優(yōu)點

  • 使用門檻變低,免去注冊流程,且用戶不再需要輸入密碼,可直接使用第三方登錄,有利于產(chǎn)品的廣泛傳播
  • 由于客戶端不在需要輸入密碼,很大程度上減少了安全風(fēng)險,客戶端不接觸用戶密碼,服務(wù)器端更易于集中保護(hù)
  • 客戶可以具有不同的信任級別,級別越高,可獲取資料越多

缺點

  • 依賴開放平臺的安全防護(hù)能力,因為開放平臺本身也可能是使用賬號密碼登錄或者其他第三方平臺登錄,所以開放平臺本身也會出現(xiàn)一定的安全風(fēng)險。如果開放平臺本身出現(xiàn)安全問題,那么所有與其關(guān)聯(lián)的第三方認(rèn)證站點都將會出現(xiàn)安全問題
  • 依賴開放平臺的授權(quán),如果開放平臺的穩(wěn)定性不達(dá)標(biāo),會導(dǎo)致自身登錄穩(wěn)定性差。如開放平臺暫時不可用,則自身登錄也不可用,如果開放平臺惡意不給予授權(quán),那么用戶將無法登錄,這個在較大的站點上是致命的。
  • 用戶流失的風(fēng)險,因為用戶只記得是用第三方登錄的,而往往不是該網(wǎng)站的帳號,弱化了自身賬號的影響力。
  • 站點獲取到開放平臺用戶的臨時權(quán)限后利用這些權(quán)限來做什么完全由該站點決定,在一定程度上會帶來安全隱患

第三方登錄總結(jié)

第三方登錄簡化了注冊登錄流程,用戶在使用時大部分情況下都不需要輸入賬號密碼來進(jìn)行登錄操作,但第三方登錄依賴開放平臺,開放平臺依然需要進(jìn)行賬號密碼的儲存與管理,而且當(dāng)開放平臺出現(xiàn)安全事故時,所有通過該平臺登錄的站點都將面臨安全風(fēng)險。

2FA 雙因素認(rèn)證

什么是雙因素認(rèn)證

  • 雙因素認(rèn)證也叫二次驗證就是指同時使用兩種及以上能夠證明自己身份的方式進(jìn)行驗證,雙因素認(rèn)證就是在使用用戶名密碼登錄網(wǎng)站、應(yīng)用、賬號之后,還需要一個驗證碼才能正常登錄。
  • 其實雙因素認(rèn)證早在十幾年前就已經(jīng)開始應(yīng)用,諸如短信驗證碼、郵件驗證碼、動態(tài)令牌、RSA電子動態(tài)令牌等都屬于雙因素認(rèn)證。各大網(wǎng)銀廣泛使用的各種盾、各種 Key 其實也屬于雙因素認(rèn)證,包括短信驗證碼,它能夠讓用戶的數(shù)據(jù)多一層保護(hù)。

 

WEB驗證的過去現(xiàn)在與未來

 

 

常見的雙因素認(rèn)證方法

  • 第一種是短信驗證,也是目前較為常用的,每一次認(rèn)證時會生成短信驗證碼發(fā)送到指定手機上,輸入的內(nèi)容與發(fā)送的內(nèi)容一致則完成認(rèn)證。
  • 第二種是認(rèn)證APP,基于TOTP的加密算法,利用應(yīng)用與認(rèn)證APP共同持有的種子密鑰,每隔30秒生成一個新的6位驗證碼,應(yīng)用與APP之間的驗證碼一致則完成驗證,通常在公司內(nèi)部使用的VPN就是采用這種方式來進(jìn)行身份驗證。
  • 第三種是登錄確認(rèn)的方式,這種方式不需要輸入驗證碼,而是通過登錄確認(rèn)點擊的方式來完成雙因素認(rèn)證的過程,這種方式是通過公鑰加密算法來確認(rèn)你的身份,應(yīng)用會生成一個密鑰對,私鑰存儲在本地,公鑰發(fā)送給服務(wù)端作為用戶信息存儲,當(dāng)用戶進(jìn)行登錄操作時,服務(wù)端會用公鑰加密一段信息發(fā)送到你的設(shè)備上,只有擁有正確私鑰的設(shè)備才能解密并完成二次認(rèn)證。

優(yōu)點

  • 必須通過兩種及以上的驗證才能確認(rèn)身份,安全性較高

 

缺點

  • 使用門檻變高,登錄多了一步,費時且麻煩,不有利于產(chǎn)品的廣泛傳播
  • 2FA 不意味著賬戶的絕對安全,入侵者依然可以通過克隆SIM卡、盜取cookie或token等方式進(jìn)行攻擊
  • 一旦忘記密碼或者遺失手機,想要恢復(fù)登錄,勢必就要繞過雙因素認(rèn)證,這就形成了一個安全漏洞。除非準(zhǔn)備兩套雙因素認(rèn)證,一套用來登錄,另一套用來恢復(fù)賬戶。

Web驗證的未來 WebAuthn

 

WebAuthn是什么?

  • WebAuthn是由W3C萬維網(wǎng)聯(lián)盟發(fā)布的 Web 標(biāo)準(zhǔn)。WebAuthn 是FIDO聯(lián)盟指導(dǎo)下的FIDO2項目的核心組成部分。WebAuthn的目標(biāo)就是提供一系列標(biāo)準(zhǔn)化的協(xié)議,讓用戶告別過去繁瑣且不安全的賬號密碼登錄方式,以實現(xiàn)安全的無密登錄體驗為目的。
  • WebAuthn 徹底拋棄了傳統(tǒng)的賬號密碼登錄方式,它允許用戶直接使用設(shè)備的指紋識別面部識別虹膜識別聲音識別實體密鑰(USB連接、藍(lán)牙連接、NFC連接)等方式來進(jìn)行登錄驗證。

體驗WebAuthn

https://demo.yubico.com/webauthn-technical/registration
  • windows 10 用戶可以購買型號為yubikey 5 NFC版密鑰,插入設(shè)備的USB接口后訪問以上網(wǎng)址體驗WebAuthn。
  • 有touch bar功能的macbook可以直接訪問以上網(wǎng)址體驗WebAuthn。
  • iphone 用戶可以購買型號為yubikey 5 NFC版密鑰,打開以上網(wǎng)址后將密鑰放在手機背后通過密鑰NFC的驗證功能體驗WebAuthn。
  • Android/ target=_blank class=infotextkey>安卓用戶可以在手機開啟GMS服務(wù)并升級Google Play為最新版后訪問以上網(wǎng)址體驗WebAuthn。

 

WEB驗證的過去現(xiàn)在與未來

 

 

優(yōu)點

  • 使用WebAuthn進(jìn)行賬號登錄的安全性非常高
  • 即不需要輸入密碼,又不需要征求第三方授權(quán),直接利用設(shè)備的生物識別功能,登錄流程非常簡單快速,有利于產(chǎn)品的廣泛傳播

缺點

  • 目前還不成熟,國內(nèi)大部分站點都不支持使用WebAuthn登錄

 

WebAuthn學(xué)習(xí)資料

1. 想要快速了解WebAuthn可以參考我的PPT,并結(jié)合Demo源碼來學(xué)習(xí)

PPT:https://ppt.baomitu.com/d/129a784a
Demo源碼:https://github.com/hanyonggang/WebAuthnDemo

2. 有關(guān)WebAuthn詳細(xì)用法,可以查閱W3C或MDN的官方文檔。

總結(jié)

WebAuthn的無密登錄體驗無論在安全性方面還是在易用性方面都是未來更好的選擇,預(yù)計在不久的將來有望成為主流的Web驗證方式。也希望我們能夠早日使用上這樣的無密登錄體驗吧!

希望本文能幫助到您!

點贊+轉(zhuǎn)發(fā),讓更多的人也能看到這篇內(nèi)容(收藏不點贊,都是耍流氓-_-)

關(guān)注 {我},享受文章首發(fā)體驗!

每周重點攻克一個前端技術(shù)難點。更多精彩前端內(nèi)容私信 我 回復(fù)“教程”

原文鏈接:https://mp.weixin.qq.com/s/-PlSYKTgu9h-bYMknTKNkw

作者:韓永剛

分享到:
標(biāo)簽:驗證 WEB
用戶無頭像

網(wǎng)友整理

注冊時間:

網(wǎng)站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨大挑戰(zhàn)2018-06-03

數(shù)獨一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學(xué)四六

運動步數(shù)有氧達(dá)人2018-06-03

記錄運動步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績評定2018-06-03

通用課目體育訓(xùn)練成績評定