基礎功能理解:登錄注冊里的驗證
編輯導語:在很多時候我們都會遇到登錄的情景,不同的產(chǎn)品也會使用不同的登錄驗證方式,比如常見的短信驗證、拖動滑塊驗證等等,這些功能的設計也是為了保障使用者的安全;本文作者分享了關于基礎功能中的登錄注冊驗證,我們一起來了解一下。
登錄注冊功能是大多數(shù)產(chǎn)品設計師(產(chǎn)品經(jīng)理)入行第一步學習認知的功能模塊,不管是APP的登錄注冊、H5的登錄注冊又或是PC端的登錄注冊;同時登錄注冊模塊是整個產(chǎn)品體系中的核心模塊,因為有登錄注冊模塊我們在做產(chǎn)品設計和業(yè)務梳理的時候才知道我們是圍繞著誰(用)在進行。
注意:有細心的看官可以發(fā)現(xiàn),我常喜歡在文中說產(chǎn)品設計師們而非產(chǎn)品經(jīng)理,這是因為我感覺初期產(chǎn)品經(jīng)理更多精力是在設計功能和流程設計上,急需我們自己認知了解各自行業(yè)的業(yè)務流程以及解決方案的應用方式;在沒有涉及商業(yè)化、戰(zhàn)略等較為宏大認知的情況下,對于講解系統(tǒng)設計和流程理解我都將稱呼為產(chǎn)品設計師。(人人都是產(chǎn)品經(jīng)理or人人都是產(chǎn)品設計師)
01 認知登錄注冊
登錄注冊是整個用戶體系下基礎模塊,幾乎95%的產(chǎn)品都需要登錄注冊進行支撐,同時我們在理解的時候需要看成登錄、注冊兩個功能模塊;注冊模塊的核心在于邊界的加入集體,登錄模塊的核心在安全的進入集體。
由此,這兩個功能模塊看起來似乎十分的簡單,只要能讓用戶能夠加入、進入集體就行,但是事以愿違想要設計好這兩個功能模塊,做到便捷和安全其實還有很多細節(jié)需要研討。
下面是通過的注冊流程,大家參考即可:
02 登錄注冊的演變
注冊是讓用戶加入集體的第一步,同時注冊的方式五花八門,主流的有手機號、郵件、自定義用戶名、第三方關聯(lián)等注冊方式;可能大家沒考慮過為什么會有這么多不同的注冊方式,其實這些方式都是互聯(lián)網(wǎng)時代演變的產(chǎn)物。
- 互聯(lián)網(wǎng)初期:是撥號上網(wǎng)。手機號不普及只有bb機、座機等,面臨一個撥號多人使用的局面,自定義用戶名注冊合適的。
- 互聯(lián)網(wǎng)中期:低寬帶上網(wǎng),移動電話開始普及,但是基礎建設不健全,面臨短信費用貴等問題;同時電子郵件開始興盛,產(chǎn)品為了更好聯(lián)系溝通用戶,開始關聯(lián)郵件注冊,但是互聯(lián)網(wǎng)黑色產(chǎn)業(yè)開始孵化。
- 互聯(lián)網(wǎng)后期:4G蓬發(fā),移動電話普及80%以上,在一線城市基本95%以上。為了更好的了解、聯(lián)系觸達用戶,同時為了打擊互聯(lián)網(wǎng)黑色產(chǎn)業(yè)開始實施手機號在注冊。(QQ注冊是最明顯的)
- 互聯(lián)網(wǎng)現(xiàn)在:生態(tài)成熟。大家開始追求用戶體驗讓用戶更便捷,更快速加入集體,開始啟用授權關聯(lián)等方式進行注冊
03 登錄注冊的方式
在外人看來,登錄注冊的邏輯十分的簡單,不外乎設置賬號-設置密碼,輸入賬號-輸入密碼就完了,其實里面門門道道很多;不管是游戲、網(wǎng)頁還是應用,只要有涉及用戶功能或業(yè)務流程,99%都有登錄注冊功能。
對于登錄注冊,我們可分為有感知和無感知。有感知是指用戶明顯參與到登錄注冊流程中,無感知是用戶輕度參與到流程中完成登錄注冊;例如,有感知的流程是賬號,密碼還有驗證碼的登錄注冊。無感知的手機號靜默登錄,第三方授權注冊等。
在選擇登錄注冊方式上,我們要根據(jù)我們業(yè)務需求進行合理選擇那種驗證方式作為驗證用戶真實性的依據(jù);畢竟我們所需要的是真實存在用戶,而不是在數(shù)據(jù)庫中那虛擬的用戶賬號。因此才會有登錄注冊的驗證手段,例如,手機的短信驗證,郵箱的驗證碼和鏈接驗證等。
在選擇登錄注冊方式的時候,我們通過成本、用戶體驗和實際需求出發(fā)去選擇。
1)成本
不管是短信驗證碼,還是郵件驗證都需要購置相應的服務,作為產(chǎn)品設計師,我們只需簡單了解下就行,最終評估還是由項目經(jīng)理確認。
短信以阿里云為例,一條驗證碼的基礎成本(不含人力調(diào)試)在0.035-0.045左右。語音驗證碼在0.085-0.1左右。
2)實際需求
越是迫切需要大量的用戶入場,那么相對應注冊門檻就不能太高,甚至是把用戶驗證延后到使用后,但相對于需要承擔用戶真實性的問題;這個比較靈活,看自身公司的環(huán)境進行選擇(想用什么用什么,什么好用就用什么,沒那么多個規(guī)矩流程要走)。
3)用戶體驗
選擇用戶接受度高的方式。
04 密碼和驗證內(nèi)容
驗證內(nèi)容是指驗證用戶身份信息的內(nèi)容,如密碼驗證、短信驗證、郵件驗證或防機器人驗證等,其中驗證碼和驗證鏈接兩種。
從功能目的上出發(fā),兩者是相同的,都是為了確認登陸者和注冊者是否一致。而另外一種滑動塊,輸入驗證圖片等這類功能驗證,是為了判斷是否為真人。
1. 密碼驗證
密碼是最常見的驗證碼方式,從簡單的數(shù)字密碼到復雜的復合密碼我們都能看見;但是什么情況下用純數(shù)字密碼,什么情況下用復合密碼,這是我們設計的時候需要考慮的。
我們可以從以下幾個環(huán)節(jié)進行選擇:
- 面向群體:需要考慮受眾群體的階級,是年輕人還是老年人、一線城市還是三四線城市、文化教育程度是這樣的等等。
- 賬戶的安全級別:這也是產(chǎn)品對于用戶的重要性。像支付寶、微信、銀行APP這類十分重要的產(chǎn)品應用,我們就需要考慮提升密碼的復雜程度。以防止密碼被他人“跑”出來。(重要的產(chǎn)品應用還有對應的風控策略)
- 公司內(nèi)部規(guī)范:不同人公司內(nèi)部規(guī)范不同。作為打工人,第一步要學習的就是跟著公司的規(guī)范要求做產(chǎn)品,而不是一來就按照自己的想法我想怎么做。
提升復雜性我們可以從長度、復雜性、弱口令等幾個方面入手:
- 長度:要求密碼長度不能短于多少位字符,例如:不少于15個字符。但是字符限制越長用戶就越記不住。(字符:一個字母、數(shù)字、符號算一個字符,一個漢字算兩個字符)
- 復雜性:要求密碼不能單一,必須包含數(shù)字、字母和符號。同時字母還要區(qū)分大小寫以及密碼內(nèi)容不能是連續(xù)使用,例如,123、ABC、qwe、asd。
- 弱口令:禁止出現(xiàn)123、12345、abcde這類出現(xiàn)頻率高且十分簡單的密碼;同時密碼里面不能包含工號、手機號、身份證號、名字縮寫等內(nèi)容。(弱口令:指十分容易被猜到的密碼)
這里需要注意,我們其實不需要造輪子。有很多app都有成熟的設計,我們直接“借鑒”即可;但是這里寫明需要考慮的東西,是為了讓我們理解為什么會這樣設計;務必不要工作中造輪子費時費力,除非你是在學習。
推薦使用:6-18位字符,區(qū)分大小寫,不強制要求包含兩種字符。
2. 郵件、短信驗證碼
驗證碼的設計我們可以通過時效性、復雜性以及用戶體驗三方面入手。調(diào)整時效性,我們可以讓原本30分鐘內(nèi)有效的驗證碼變成只有1分鐘內(nèi)有效,這樣增加了驗證碼傳播難度。調(diào)整復雜性,我們將4位驗證碼增加到8位驗證碼,從純數(shù)字驗證碼變成字母驗證碼或是數(shù)字+字母。
同理為了提升用戶體驗,我們可以將驗證碼變短同時包含順序,以求方便用戶記憶;而且我們也可以將驗證環(huán)節(jié)進行延后,甚至是采用新技術在用戶環(huán)節(jié)取消驗證(三網(wǎng)的手機號一鍵登錄,通過識別你手機4g信號來直接驗證)。
ps:圖片來源互聯(lián)網(wǎng):手機號一鍵登錄
推薦使用:4-8位數(shù)字作為驗證碼即可。
3. 郵件鏈接驗證
比較驗證碼驗證和鏈接驗證,他們兩個的安全性相似,唯一差異較大的地方就是操作方式的不同。鏈接驗證的方式主要是國外PC瀏覽器上使用較多,主要是在用戶注冊完成后,將鏈接發(fā)到用戶注冊郵箱上,用戶通過點擊鏈接進行驗證。
因為國內(nèi)互聯(lián)網(wǎng)發(fā)展快,還有大規(guī)模養(yǎng)成電子郵件的習慣就直接進入移動互聯(lián)網(wǎng),所有在國內(nèi)不太流行;如果確實需要通過郵件進行驗證,那需要和使用短信驗證一樣去聯(lián)系郵件服務商,購買相應的服務能力。
4. 防機器人驗證
防機器人驗證(我自己隨意稱呼為了好區(qū)分其他驗證)的作用是防止人為使用機器人進行大規(guī)模模擬用戶操作,從而造成產(chǎn)品損失;我們主要是在登錄注冊的時候遇見,比如在接受驗證碼的時候需要拖拽方塊,或是根據(jù)圖片內(nèi)容輸入數(shù)字等。
發(fā)送短信前進行驗證,一方面這種是為了避免用戶惡意申請注冊短信的發(fā)送,造成短信成本耗損;另一方面防止不法分子利用我們的注冊登錄短信進行短信轟炸,所以加一個小小的驗證就可基本杜絕絕大部分這種情況。
我們在設計這類驗證碼的時候需要注意OCR(圖像識別技術)。如果我們的驗證圖片過于簡單清晰,那么可以輕而易舉的被OCR識別,這樣非法人員一樣可以達到使用機器人請求;但這都是建立在自家產(chǎn)品對于這類技術人員有利可圖的情況下,一般大牛沒心思去搞你,所以做一個簡單的就行~
常見的防機器人驗證方式有滑塊、按需點圖和看圖輸字三種:
也有比較特立獨行的,比如知乎點擊圖片中倒立的漢字。
這些驗證方式看似花樣奇多,但他們都只有一個目的,都是為了篩選攔截機器人。因此,我們可以根據(jù)自己產(chǎn)品來設計驗證,例如我是車類產(chǎn)品,那么我們驗證碼可以是讓用戶找出圖片內(nèi)指定汽車標示。又或者我是游戲類產(chǎn)品,那我驗證碼可以是讓用戶選擇指定英雄技能,等等。
所以這里我們自已選擇合適自己的驗證方式即可。
05 最后
這篇文章并沒有十分詳細的說明登錄注冊每一步該如何設計,因為我覺得太過于常見反倒是寫不好,同時也是因為很多大佬已經(jīng)寫過。
所以,我也就簡單的說說登錄注冊中選擇手機、郵箱作為驗證方式的原因,再簡單的說下驗證方式我們需要注意的地方就沒了。
這里埋個坑關于基礎功能理解的坑,后續(xù)慢慢填。
作者:wcof,在努力做產(chǎn)品不做產(chǎn)品經(jīng)理的人;微信公眾號:Wcof(ID:wcofPM)
本文由 @Wcof 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)作者許可,禁止轉(zhuǎn)載
題圖來自Unsplash,基于CC0協(xié)議。
1.非常贊同你的產(chǎn)品設計師觀點
2.“我們其實不需要造輪子。有很多app都有成熟的設計,我們直接“借鑒”即可;但是這里寫明需要考慮的東西,是為了讓我們理解為什么會這樣設計;務必不要工作中造輪子費時費力,除非你是在學習”
請問這句話怎么理解呢 實際工作中怎么樣不造輪子?