現(xiàn)在年輕人收到最多的短信可能是驗證碼,雖然發(fā)送的平臺不盡相同,但收到的數(shù)字驗證碼要么是4位數(shù)要么是6位數(shù),怎么就不能是3位數(shù)或5位數(shù)?
數(shù)字驗證碼,更像是一種“短時間密碼”。我們的手機號通過實名認證后作為網(wǎng)絡(luò)身份標識,即賬號,通過給用戶發(fā)送短時間內(nèi)有效的數(shù)字驗證碼,就可以驗證用戶身份的真實性。
驗證碼設(shè)計的目的并非難倒用戶,需要方便用戶識別、記憶與輸入,因此驗證碼不能設(shè)置得太難。2015年,鐵路12306購票網(wǎng)站就曾因防止黃牛刷票而采用過圖片驗證碼,但因識別難度太高,許多正常旅客也難以通過驗證。
就數(shù)字驗證碼來說,數(shù)字也不能太難記。我們的大腦在短時間內(nèi)處理大量信息時,會傾向于通過給冗雜的信息分組來方便記憶與思考,這些被分好的信息單元在認知心理學(xué)中被稱為“組塊”。
偶數(shù)位的數(shù)字相比于奇數(shù)位的來說,更方便被分為數(shù)量平均的組塊,記憶起來更容易。例如,6位數(shù)字498610可被分為49-86-10,或者是498-610來快速記憶,而奇數(shù)位的數(shù)字則無法被分為均等的組塊。
8位數(shù)、10位數(shù)這樣的偶數(shù)位驗證碼不行嗎?可以,但太難記了。大腦短時記憶的容量有限,在沒有復(fù)述的情況下,短時記憶中的信息保持時間只有15~20秒,處理加工信息的數(shù)量為7±2個組塊,超過這個限度,人容易犯錯。
綜合考慮,6位數(shù)的驗證碼長度正合適。在一些對安全性要求不太高的情況下,4位驗證碼也是可以的。
數(shù)字驗證碼的長度雖然比較一致,但為什么要設(shè)置有效時間?這是安全性保障。若驗證碼有效期為5分鐘,攻擊者需在5分鐘內(nèi)完成破解,對一個6位數(shù)驗證碼來說,即使以每秒100次嘗試計算,成功概率也僅為0.06%。一般來說,使用場景風(fēng)險越大、越需要安全保護的驗證碼,有效時間越短。
(白丁儒摘自“壹讀”微信公眾號,郭德鑫圖)