Login | Register | Forum

เรื่องเล่าคนโรงแรม

Home > Forum > Hotelier Talk > MD5 กับเว็บ Hotelier-TH.com

MD5 กับเว็บ Hotelier-TH.com
ID: 1

Pakin
Posted: Fri, 18 Nov 2022 20:41:39 +0700
เพื่อน ๆ ทราบหรือไม่ว่า.. เว็บไซต์ส่วนใหญ่ที่มีระบบการลงทะเบียนสมาชิกนั้น จัดเก็บข้อมูลในส่วนของรหัสผ่าน (Password) เอาไว้อย่างไร และจะมั่นใจได้แค่ไหนว่ารหัสผ่านของเราจะไม่รั่วไหล ?

มาครับ! เดี๋ยววันนี้ ผมจะมาเล่าให้ฟัง ให้เข้าใจกันง่าย ๆ และผมพยายามจะไม่ใช้ศัพท์ทางเทคนิคเยอะ ๆ ถ้าไม่จำเป็น 55+ 😀

ปกติแล้ว การจัดเก็บข้อมูลสมาชิกบนเว็บไซต์ Hotelier-TH.com นั้น ถ้าเป็นข้อมูลทั่ว ๆ ไป เช่น ชื่อ-สกุล หรืออีเมล์ ผมก็จะเขียนโปรแกรมให้ระบบส่งค่าที่ได้รับ (ค่าตามจริง) ไปเก็บไว้ในฐานข้อมูลโดยตรง ส่วนข้อมูลที่เป็นรหัสผ่านนั้น ถ้าจะเก็บค่าตามจริงมันก็จะดูประเจิดประเจ้อเกินไป เพื่อความมั่นใจของสมาชิกและเพื่อความน่าเชื่อถือของเว็บไซต์ จึงจำเป็นอย่างยิ่งที่จะต้องนำข้อมูลของรหัสผ่านดังกล่าวมาผ่านการ Hash ซะก่อน เมื่อได้ผลลัพธ์ยังไง ถึงจะนำค่าที่ได้นั้นไปเก็บในฐานข้อมูล

"Hash" จะอธิบายให้เข้าใจง่าย ๆ ก็คือ การนำข้อมูลต้นฉบับที่ได้รับ มาประมวลผลด้วยกระบวนการทางคณิตศาสตร์ เพื่อให้ได้ค่าใหม่ หรือหลาย ๆ ท่านจะรู้จักกันในชื่อ "การเข้ารหัส" (Encrypt) แต่จริง ๆ Hash ไม่ใช่การเข้ารหัสนะครับ เพราะการเข้ารหัสเราสามารถเอาผลลัพธ์ที่ได้มาถอดรหัสเพื่อหาค่าเดิมได้ แต่ Hash ผลลัพธ์ที่ได้จะไม่สามารถนำมาถอดรหัสเพื่อหาค่าเดิมได้อีกต่อไป

Hash จะมีด้วยกันหลายแบบ แต่ที่จะใช้กันเยอะที่สุดก็จะเป็น md5 (ย่อมาจาก Message-Digest algorithm 5) ซึ่งถูกคิดค้นขึ้นโดย "มิสเตอร์รอน ริเวสต์" md5 นั้น จะให้ค่าผลลัพธ์เป็น 16 ไบต์ (128 Bits) ไม่ว่าข้อมูลต้นฉบับจะมีความยาวแค่ไหน เมื่อผ่านกระบวนการ Hash ในแบบ md5 แล้วก็จะให้ผลลัพธ์ที่มีความยาวแค่ 128 Bits เท่านั้น

เมื่อเราเก็บข้อมูลรหัสผ่านในรูปแบบ md5 แล้ว เวลาจะใช้งานกันจริง ๆ ก็ไม่มีอะไรยุ่งยากครับ ในหน้า Login ของสมาชิก เมื่อมีการป้อน User Name & Password เกิดขึ้น กระบวนการทำงานคือ นำค่า Password ที่ได้รับจากหน้า Login ไปแปลงค่าเป็น md5 เมื่อได้แล้วก็นำค่าที่ได้ไปเปรียบเทียบกับ ค่าในฐานข้อมูลที่ถูกบันทึกเป็น md5 ไปตอนลงทะเบียนในครั้งแรก

เริ่มเห็นภาพกันแล้วยังครับ ว่า.. การจะแอบขโมยรหัสผ่านของเราไปใช้จากเว็บไซต์โดยตรงนั้น ไม่ใช่เรื่องง่าย สมมุติว่ามีแฮกเกอร์มือดี แอบเจาะระบบ Web Server ของเว็บ Hotelier-TH.com แล้วเข้าถึงพื้นที่ในฐานข้อมูลได้ เค้าก็จะไม่สามารถเห็นรหัสผ่านที่แท้จริงได้

ฉะนั้น ที่ใครหลาย ๆ คนเข้าใจกันว่า บัญชีเฟสบุ๊กโดนแฮกบ้าง หรือรหัสผ่านบนเฟสบุ๊กรั่วไหลบ้าง มันไม่เป็นความจริงเลยครับ ถ้าหมายถึงมีการแฮกเข้าระบบของเฟสบุ๊กโดยตรงยิ่งเป็นไปไม่ได้เลย

แล้วกรณีที่โดนแอบใช้เฟสบุ๊กล่ะ.. ไม่เรียกว่าโดนแฮกแล้วจะเรียกว่าอะไร ?

ส่วนใหญ่ที่โดนแอบใช้เฟสบุ๊กกัน สาเหตุนั้นเดี๋ยวผมจะมาไล่ให้ดูกันครับ

1. เครื่องที่ใช้งานอยู่ติดไวรัสประเภทสปายแวร์หรือไม่ ถ้าโดนตัวนี้เข้าไป ไม่ว่าคุณจะคีย์ข้อความอะไร มันจะบันทึกไว้ทั้งหมดครับ แล้วส่งข้อมูลเหล่านั้นกลับไปยังคนที่ปล่อยไวรัสมาให้คุณ แนะนำคุณควรจะหาซื้อโปรแกรมตรวจจับไวรัสแบบถูกลิขสิทธิ์มาใช้จะดีมากครับ

2. มีการตั้งรหัสผ่านเหมือน ๆ กันทุกบัญชีหรือไม่ ไม่ว่าจะอีเมล์ เฟสบุ๊ก เว็บทั่ว ๆ ไป ที่มีการลงทะเบียนสมาชิก หรือโปรแกรมใช้งานในองค์กรของคุณเอง ถ้าเป็นรหัสผ่านตัวเดียวกันทั้งหมด ในฐานะที่คุณเป็นแค่ User จะรู้ได้อย่างไรว่า การบันทึกข้อมูลแต่ละที่นั้น โดยเฉพาะข้อมูลที่เป็นรหัสผ่าน จะมีการ Hash ก่อนเก็บค่ามั้ย ถ้าไม่มี และไปเจอผู้ดูแลระบบที่ไม่ซื่อสัตย์ก็เท่ากับว่า เค้าสามารถที่จะแอบเข้าทุก ๆ อย่างที่เป็นของคุณได้ทั้งหมด แบบที่ไม่มีใครจับผิดได้

3. เบอร์มือถือของคุณที่ลงทะเบียนไว้บนเฟสบุ๊กยังเป็นเบอร์ปัจจุบันหรือไม่ ถ้าไม่ใช่ความซวยมาเยือนครับ คนที่ซื้อเบอร์เก่าของคุณ มีสิทธิ์ขอรับรหัสผ่านใหม่บนเฟสบุ๊กของคุณผ่านทาง sms ได้เลย

4. รหัสผ่านของคุณตั้งค่าตาม วัน-เดือน-ปีเกิด หรือเลขใกล้ตัว เช่น เบอร์โทรศัพท์หรือไม่ ถ้าใช่ ก็เป็นเรื่องไม่ยาก ที่จะมีการคาดเดารหัสผ่านได้ ยิ่งคุณเปิดเผย วัน-เดือน-ปีเกิด ไว้บนเฟสบุ๊กด้วยแล้ว ก็เท่ากับว่าคุณได้บอกรหัสผ่านของตัวเองให้เพื่อนของคุณได้รับรู้ไปในตัว ผมแนะนำ วิธีตั้งรหัสผ่านควรตั้งรหัสให้ไกลตัวที่ไม่มีใครรู้แล้วเรารู้คนเดียว เช่น หากคุณแอบปลื้มใคร ก็ให้เอาชื่อของเค้าและวันเดือนปีเกิดมาเป็นรหัสผ่าน แค่นี้ก็ไม่มีใครเดาได้แล้วล่ะครับ 😊

5. ระวังพวกเว็บปลอม Phishing (ฟิชชิ่ง) ทั้งหลายแหล่ มันจะมาทางอีเมล์เป็นลิงค์ให้เราหลงเชื่อและเผลอคลิกเข้าไป หน้าตาของเว็บปลอมจะดูเหมือนเป็นเว็บที่คุณคุ้นเคยเลยล่ะครับ หากคุณเผลอป้อน User Name & Password เข้าไป ก็เท่ากับว่า คุณได้บอกรหัสผ่านของคุณไปกับเว็บปลอมนั้นเป็นที่เรียบร้อยแล้ว ให้สังเกตุอย่างนึง ก่อนคลิกลิงค์ดูที่แถบสถานะว่าลิงค์นี้จะส่งค่าไปที่ URL ใด หรือถ้าเผลอคลิกไปแล้วก็ให้สังเกตุที่ Address Bar ว่า URL ถูกต้องหรือไม่

6. เมื่อเวลาคุณเข้าใช้งานเฟสบุ๊ก บนคอมพิวเตอร์ในที่ทำงานหรือตามร้านอินเตอร์เน็ตคาเฟ่ คุณเคย Logout หรือไม่ ถ้าเลี่ยงไม่ได้ที่จะใช้คอมพิวเตอร์บนเครื่องสาธารณะผมแนะนำให้คุณเปิดโปรแกรมบราวเซอร์และใช้โหมด Private ตัวนี้จะช่วยได้ระดับนึงครับ

6 ข้อนี้ เป็น 6 ข้อ เท่าที่ผมพอจะนึกได้นะครับ เพราะส่วนใหญ่ ล้วนแต่เป็นปัญหาที่หลาย ๆ คนมาปรึกษากับผม จากประสบการณ์ของคนอื่นที่เค้าเจอปัญหา อาจจะช่วยป้องกันไม่ให้คุณเจอปัญหาแบบนี้ได้ครับ

แล้วรหัสค่า md5 มีสิทธิ์โดนแฮกได้มั้ย ?

เมื่อมีการประกาศว่า md5 เป็นการประมวลผลทางเดียว (One way function) ที่ไม่สามารถคืนค่าเดิมได้ ก็เหมือนเป็นการท้าทายให้เหล่า Hacker คิดค้นหาวิธีที่จะถอดรหัสหรือหาค่าตั้งต้น ด้วยการสุ่มรหัสผ่านทีละค่า แล้วนำไป Hash หลังจากนั้นก็เอามาเปรียบเทียบข้อมูลจนกว่าจะเจอ แต่การกระทำด้วยวิธีนี้ ย่อมใช้เวลานานพอสมควร จึงจำเป็นต้องใช้ *การ์ดจอ ที่มีคุณภาพสูงมาคำนวณ ในการหาค่าตั้งต้นด้วยวิธีดังกล่าวนั้น พบว่าถ้ารหัสผ่านที่เป็นค่าเดิมมีความยาวแค่ 6 ตัวอักษรจะใช้เวลาในการถอดรหัสไม่เกิน 1 ชั่วโมง แต่ถ้ารหัสผ่านนั้นมีความยาว 8 ตัวอักษรอาจจะใช้เวลาในการถอดรหัสถึง 1 ปี

ทีนี้เข้าใจแล้วยังครับ ว่าทำไมเราควรจะตั้งค่ารหัสผ่านด้วยจำนวนตัวอักษร 8 ตัวขึ้นไป

ในโลกแห่งเทคโนโลยีย่อมจะมีทั้งหมวกขาวและหมวกดำ กลุ่มหมวกดำจะคอยทำลาย หาเรื่อง กลั่นแกล้ง ส่วนกลุ่มหมวกขาวก็จะหาวิธีป้องกันและแก้ปัญหา วนเวียนกันไปไม่มีที่สิ้นสุด เมื่อรุ่นเก่าเสียชีวิตไป รุ่นใหม่ก็พร้อมก่อตัวขึ้น

ถ้าโลกนี้ มีแต่คนดี ๆ ทั้ง md5, ssl, โปรแกรมตรวจจับไวรัส หรือเทคโนโลยีป้องกันภัยคุกคามทั้งหลายแหล่คงไม่เกิด เมื่อมีผู้สร้างกำแพงเพื่อป้องกันก็ย่อมจะมีคนพร้อมจะทำลายกำแพงนั้นเช่นกัน การ "พึ่งพาตนเอง" จึงจำเป็นอย่างยิ่งกับพวกเราทุกคน ที่จะใช้ชีวิตไปพร้อมกับเทคโนโลยีสมัยใหม่เหล่านี้.


* เพิ่มเติม :
เพื่อน ๆ บางท่าน อาจจะยังไม่ทราบว่า ปัจจุบันคอมพิวเตอร์แต่ละเครื่องนั้น ใช้ GPU หรือการ์ดจอในการคำนวณค่าทางคณิตศาสตร์แทน CPU เนื่องจากให้ผลลัพธ์ที่เร็วกว่า และสามารถเพิ่มขยายจำนวนการ์ดจอในเครื่องคอมพิวเตอร์ ได้สะดวกกว่าการเปลี่ยน CPU ด้วยคุณสมบัติดังกล่าวนี้ การ์ดจอแพง ๆ จึงถูกนำมาใช้ในการขุด "บิทคอยน์" กันเยอะ.


บทความโดย : ภาคิน ระฆังทอง

ผู้ดูแลเว็บไซต์ฯ
Hotelier-TH.com | ชุมชนคนโรงแรม


Re: MD5 กับเว็บ Hotelier-TH.com
No Replies found



Post a reply
Message:
Emoticons: 🙂 😀 😆 😂 🤣 😅 🙃 😇 😈 😉 😊 😋 😌 😍 😎 😏 😓 😕 😖 😗 😘 😛 😝 😟 😠 😡 😢 😦 😧 😬 😭 😮 😱 😲 😳 😴 😷 🙄 🤐 🤔 🤗 🤠 🤤 🤥 🤪 🤭 🤮 🤯 💖 💘 💔 💝 🌹 🌺 🌻 🍄 🍉 🍊 🍎 🍒 🍓 🍔 🍛 🍜 🍦 🍰 🍷 🍺 🍾 🎁 🎂 🎃 🎄 🎅 🎉 🐰 🐱 🐶 👍 👏 💯 🔞
Picture:
* Supports only JPG, GIF and PNG file formats.

ขออภัย!

พื้นที่นี้.. สำหรับสมาชิกฯ เท่านั้น
กรุณา Login หรือ สมัครสมาชิก เพื่อเข้าใช้งาน.


Home | News | Job | Website | Supplier | Travel Agent | FW Mail | Contact Us