ถ้าคุณสร้างบัญชีไป 1-2 ปีที่แล้ว คุณน่าจะสังเกตว่าเว็บหลายแห่งดูดร้อนเพราะคุณใช้รหัสผ่านที่มันถือว่า "ไม่ปลอดภัย" ภายใต้เงื่อนไขบางอย่าง บางครั้งยังไม่ได้กด "Register" ก็เจอข้อความข้างช่องรหัสผ่านว่าคุณใช้รหัสผ่านอ่อนแอ
แม้บางเว็บจะบังคับไม่ให้สมัครด้วยรหัสผ่านที่มันถือว่าอ่อนแอ ส่วนอื่นแค่เตือนและปล่อยให้คุณทำต่อไปตามใจชอบ ไม่ว่าจะอย่างไร เว็บเหล่านี้ (ส่วนใหญ่) มีสิ่งร่วมกัน: เกณฑ์ "รหัสผ่านปลอดภัย" ของพวกเขา ไม่ได้ทำให้คุณปลอดภัยจริง
การสร้างนิสัยไม่ดี

สิ่งแรกที่สังเกตบนเว็บส่วนใหญ่คือ พวกเขามีเกณฑ์คล้ายกันสำหรับ "รหัสผ่านแข็งแกร่ง" บนเว็บส่วนใหญ่ เกณฑ์คือ:
- ขั้นต่ำ 6 หรือ 8 ตัวอักษร
- ขั้นต่ำ 1 ตัวเลข และ 1 ตัวอักษร
- บางครั้ง ต้องมีตัวพิมพ์ใหญ่อย่างน้อย 1 ตัว
ในกรณีนี้ รหัสผ่านอย่าง "Ironclad1" ผ่านเกณฑ์ของเว็บนั้นได้เพรียว เพราะเว็บส่วนใหญ่มีแค่เกณฑ์เหล่านี้ คนอาจคุ้นเคยว่า "Ironclad1", "Sallyepstein4", "Michael1985" เป็นรหัสผ่านดี ทุกคนที่อ่านหน้าแรก 3 หน้าของหนังสือไซเบอร์เซキュริตี้ รู้ว่านี้ไม่ปลอดภัยเลย แต่ถูกสร้างให้เป็นมาตรฐานโดยเงียบๆ โดยล้านเว็บที่ความปลอดภัยเป็นเรื่องรอง ค่าเพียง 5 บรรทัดโค้ด
แฮกเกอร์ใช้ Dictionary Attack (โจมตีแบบพจนานุกรม) กระแทกรหัสผ่านคุณได้ง่าย จบเลย
บางบริการเว็บ (อย่าง Google) ก็ต้องการสัญลักษณ์ (อย่าง "!" หรือ "$") ด้วย แต่นี่แค่ทำให้ "$allyepstein4" กลายเป็นรหัสผ่านที่ถูกต้อง และ Dictionary Attack พัฒนาถลกขึ้นเรื่อยๆ
นิสัยรหัสผ่านที่ดีคืออย่างไร?

มีการอภิปรายมากมายว่าอะไรทำให้รหัสผ่านดี แทนที่จะ geek out อธิบายรายละเอียดหมด เราจะดูสิ่งที่ทุกคนตกลงกันทั่วไป รหัสผ่านที่ดี:
- มีความหลากหลาย alphanumeric มาก เช่น ตัวพิมพ์ใหญ่ ตัวเลข ตัวพิมพ์เล็ก
- มีสัญลักษณ์ในตำแหน่งที่คาดเดาไม่ได้ ("@shley" ไม่ปลอดภัยเท่า "@$_hley" เพราะมี underscore กลางคำ ที่ dictionary attack ปกติสแกน "@" แทน "a" และ "$" แทน "s")
- มีช่องว่าง (อย่าง "I @te a S4nDw1ch")
- ยาวถึงขีดจำกัดที่สมเหตุสมผล ("I l0v3 LuC#Y" ไม่ปลอดภัยเท่า "Th1S p4ssword sH_oulD b3 h@rd to cr@ck")
- สะกดคำแบบไม่ธรรมดา (เช่น "schuld" แทน "should", "beffe" แทน "beef", "inszteda" แทน "instead", "mektekezier" แทน "maketecheasier")
โดยปกติ รหัสผ่านที่ดีที่สุดไม่ง่ายที่จะจดจำ (เช่น: "ifjecBucE083$&&8c ociefjC*#&$6c iof0e0($*#") สังเกตตัวอย่างใช้กฎทั้งหมด รวมถึงช่องว่าง นี้ unconventional มาก สำหรับ dictionary attack ที่ซับซ้อนที่สุด ถ้าฐานข้อมูลที่เก็บแฮชรหัสผ่านปลอดภัย และจัดการคีย์เข้ารหัสถูกต้อง จะทำให้บัญชีไม่อาจคุ้มค่าที่แฮกเกอร์จะแคร็ก
แน่นอน ไม่ทุกเซิร์ฟเวอร์ปลอดภัย บริการหนึ่งที่คุณใช้อาจโดนแฮกكشفรหัสผ่าน ดังนั้น สำคัญมากที่จะใช้รหัสผ่านต่างกันสำหรับแต่ละบริการ
แตคุณจดจำรหัสผ่าน 15 ชุดไม่ได้ เลยรหัสผ่านตัวอย่าง "หนึ่งในรหัสผ่านที่ดีที่สุด" เพื่อแก้ไข ใช้บริการ Single Sign-On (หรือ "Identity Management") ที่ปลอดภัยมาก เก็บรหัสผ่านให้ คุณไม่ต้องจดจำ แม้จะมีมาหลายปี แตคอนเซปต์ยังเป็นดินแดนไม่รู้จัก (ในมุมมองมืออาชีพของผม) เลยควรระวัง ค้นคว้าด้วยตัวเอง และ google ชื่อบริการตามด้วยคำว่า "breach" ดูว่าถูกแฮกมั้ย
วิธีแก้ปัญหา

ปัญหาที่เราแก้คือ ทำให้คนจำนวนมากที่สร้างบัญชีบนเว็บ เข้าใจ best practices สำหรับการสร้างรหัสผ่าน 聽起來ยักษ์ใหญ่ไหม?
จริงๆ แล้วง่ายเท่าการให้ข้อมูลที่นั่น Google ทำได้ดีกับ guidelines ของตัวเอง แต่ยังไม่พอ
แม้จะชมชอบ ผมคิดว่าควรใส่ลิงก์ไปยัง guidelines เหล่านี้ ข้างช่องรหัสผ่าน ให้ผู้ใช้เข้าถึงง่ายตอนสมัคร ถ้าใครเพิกเฉย ก็สิทธิ์ของเขา แตไม่มีใครบอกได้ว่าพวกเขาไม่ได้โอกาสอ่านข้อมูลการศึกษาเรื่องนี้
ส่วนยากคือ โคนล้านเว็บที่มีฐานข้อมูลบัญชี ให้ทำอย่างนี้ แต่เว็บส่วนใหญ่ใช้ซอฟต์แวร์กล่องใหญ่ (อย่าง WordPress หรือ Drupal) ดังนั้น ดีกว่าที่จะไปหาผู้พัฒนาซอฟต์แวร์เหล่านี้ ให้เพิ่มสิ่งนี้ในอัปเดตอนหน้า พอเว็บอัปเดตซอฟต์แวร์ พวกเขาจะได้ guidelines บนหน้าสมัครอัตโนมัติ!
คิดว่ายังทำอะไรได้อีกบ้าง เพื่อเผยแพร่ความตระหนักรหัสผ่านที่ดี? มาคุยกันในความคิดเห็น!