【聚焦密碼】寺尾哲也/我與我的密碼
▋如何創造一組夠強力的密碼
人是怎麼記得自己的密碼的呢?
母親從來記不得密碼。她有五個以上的Facebook帳號,因爲她每一次創建完,就依賴着手機或平板上的「保持登入狀態」功能,直到某一次登入狀態到期,要重新登入的時候,她就會萬分困惑地問我:「爲什麼它要我輸入密碼?」她早就忘了密碼。至於那些「忘記密碼」的備援措施,也完全沒用,因爲就算把重設密碼的信寄到她gmail信箱,她也記不得gmail信箱的密碼。(是的,所以她有非常多個gmail信箱,每次被登出就重辦一個。)
可以說,她是百分之百的反密碼人士,從頭到尾靠着非密碼的認證措施(人臉辨識、指紋辨認)在數位世界走跳。
看到她這樣的行徑,常常讓我感到又好氣又好笑,但轉念一想,這恐怕纔是大多數長輩面對密碼的通常反應。
人怎麼能夠記得起一長串英數混合大寫小寫外加特殊符號的十二位以上字元?更何況,所有容易記憶的標的物,諸如出生年月日、名字、連續的數字等等都被列爲太容易猜到而被禁止的項目。必須得要憑空鍛造一堆亂碼,一堆沒有意義的字元。那麼到最後,記不得也是萬分合理的事情。
關於如何創造一組可記憶又夠強力的密碼,坊間流傳着一代又一代的「最佳策略」。記得在我剛進公司的時候,那時流行的方法是,先想好一串有意義的字句,再把其中一些字母替換掉,改變大小寫,改成符號或數字。比如「S」可以替換成「$」,「For」替換成「4」,「A」替換成「@」之類。重點是長度一定要夠長,至少十五字元以上。
當時還有一個身心靈上的說法:密碼作爲一個人日常生活中最常得要輸入的字串,具有強大的精神暗示潛力。因此,我們應當以自己的心願作爲密碼的字句。比如,想要減肥的人,可以用「loseweightasap」當作密碼的一個原始片段,再經過加工轉換,變成「l0$ewEIg.ht!AS@p」之類。這樣,每天就會有數十次對自己暗示「快快減重快快減重」的機會。等到減重成功,有了下一個心願時,就是換新密碼的時候了。這樣不僅僅可以依靠大宇宙的力量達成心願,還可以無痛更換新密碼。多棒!
只可惜,這一套創建密碼策略,後來被認爲是不夠安全的。「最佳密碼創建策略」這檔事,就跟時裝流行一樣,後浪推前浪,前浪死在沙灘上。
▋失去密碼如同「被反鎖在家門外」
密碼的存在是爲了認證,認證一個人真的是如他所宣稱般的身分。CAPTCHA或許可以視爲一種變形的密碼。全名是Completely Automated Public Turing test to tell Computers and Humans Apart,這個機制的目的是判斷用戶是否爲人類。我常常覺得這一類型的驗證已經到了走火入魔的程度了──辨識歪曲扭八的文字,選出所有含有汽車的方格,圖片裡有貓嗎,移動拼圖至正確的缺空位置……當個人類好睏難,而且隨着AI技術的演進,還越來越困難。我想像總有一天,這種測驗會變成「回答錯的纔是人類」,因爲題目太困難了,人類根本無法答對。然而,這樣的逆向辨別恐怕也撐不了兩刻鐘,AI很快就會學會模仿人類答錯了。
失去密碼意味着失去帳號的主控權,陷入一種「被反鎖在家門外」的窘境。這時候大概得要打客服電話,經歷冗長的電子音樂等候時間,接通後,開啓一連串的身分認證。密碼是最簡便的一種身分認證,而當我們失去了這個選項後,就會陷入更冗長、更繁瑣的認證地獄。我時常覺得許多網站的那些「忘記密碼備援問題」非常荒謬:你爸媽在哪個城市相遇、你讀的國小是哪一間、你的第一個僱主、你的第一輛車的型號、你母親婚前的姓氏……這些問題試圖用一個公版去套在每一個人身上,卻往往搔不到癢處,要不過於簡單易猜,要不過於繁瑣難記。
我曾經在某一次類似的情境中,被銀行信用卡客服問到:上個月某日,你在哪裡消費了什麼?天哪,我連昨天午餐吃了什麼都不一定記得了,怎麼可能記得上個月的某一筆消費?我簡直想要跪(不存在的)地求饒。我不太記得後來是怎麼解決的,但那種無法證明自己是自己的窘境,經歷過一次就好。千萬不要發生第二次。
經歷此事之後,我逐漸能明白母親每次都因忘記密碼被鎖在家門外的感受。我曾經要她把密碼寫在一本實體筆記本上──儘管這違反了一千條資安原則──但即使如此,她還是有辦法忘記密碼,比如根本不認得自己的手寫字跡之類,筆記本不見之類。每一次,她總是毫不留戀,直接創辦一個新的帳號──無法證明自己是自己,那就再創造一個新的自己。我無法像她那樣豁達,遂只能繼續玩着這些「證明我是我自己」的遊戲。