Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> ระบบเครือข่าย >> ความปลอดภัยเครือข่าย

8 คำศัพท์การเข้ารหัสที่จำเป็นและความหมายของพวกมัน

เมื่อพูดถึงการเข้ารหัส (Encryption) คนส่วนใหญ่คิดว่ามันเพิ่งมีมาไม่กี่ทศวรรษ แต่จริงๆ แล้วมันรากลึกในประวัติศาสตร์ ตัวอย่าง nổiดที่สุดคือสงครามโลกครั้งที่สอง เมื่อเยอรมนใช้เครื่องชื่อ Enigma เข้ารหัสข้อความก่อนส่งไปยังกองเรือของพวกเขา

วิธีการเข้ารหัสข้อมูลแบบดั้งเดิมแน่นอนว่าแตกง่ายด้วยการวิศวกรรมย้อนกลับ (reverse engineering) แต่วิธีการเข้ารหัสสมัยใหม่ซับซ้อนมาก และต้องใช้กำลังคอมพิวเตอร์มากในการแตก

การเข้ารหัสมักใช้เพื่อทำให้ข้อมูลอ่านไม่ได้สำหรับใครที่พยายามรั้งข้อความระหว่างผู้ส่งและผู้รับ

ถ้าบุคคลที่สามอยากอ่านข้อมูล จะอยู่ในรูปแบบสับสนหรือเข้ารหัส ทำให้อ่านไม่เข้าใจ แต่เมื่อถอดรหัส (decrypt) จะกลับสู่รูปแบบเดิม

ในชีวิตประจำวันคุณเจอแพลตฟอร์ม Hyper-networking หลายอย่าง เช่น WhatsApp หรือพอร์ทัลธนาคารออนไลน์ ที่ใช้เทคนิคการเข้ารหัสสำหรับการส่งข้อมูลปลอดภัยจากโหนดหนึ่งไปอีกโหนดหนึ่ง แม้เราคุ้นเคยกับคำว่า "การเข้ารหัส" แต่ยังมีคำศัพท์เยอะมากเกี่ยวกับมาตรฐานการเข้ารหัส ที่คุณควรทราบ

โดยไม่เสียเวลา มาเจาะลึกกันเลย!

อ่านเพิ่ม: วิธีรักษาข้อมูล WhatsApp ให้ปลอดภัยด้วย Google Drive และการเข้ารหัส

คำศัพท์การเข้ารหัสที่ทุกผู้ใช้คอมพิวเตอร์ควรรู้

Plaintext (ข้อความธรรมดา)

Plaintext หรือ cleartext เป็นคำศัพท์พื้นฐานที่สุด ที่ไม่ได้เข้ารหัส และอ่านได้ทุกคน ข้อมูลที่รออยู่เพื่อนำเข้าไปในอัลกอริทึมการเข้ารหัส เรียกว่า 'plaintext'

Ciphertext (ข้อความเข้ารหัส)

8 คำศัพท์การเข้ารหัสที่จำเป็นและความหมายของพวกมัน

คือข้อมูลที่เข้ารหัสแล้วหรืออ่านไม่ได้ ซึ่งเป็นผลลัพธ์ของอัลกอริทึมการเข้ารหัส เป็นชุดตัวเลขและตัวอักษรสุ่ม ทำให้ไม่มีประโยชน์ ciphertext บางครั้งเรียกว่า Cipher แต่ Cipher มักหมายถึงอัลกอริทึมที่แปลง plaintext เป็น ciphertext

Keys (คีย์)

8 คำศัพท์การเข้ารหัสที่จำเป็นและความหมายของพวกมัน

คีย์ทฤษฎีบัณฑิต (Cryptographic keys) เป็นวิธีการเข้ารหัส/ถอดรหัสข้อมูล จำเป็นสำหรับอัลกอริทึมทฤษฎีบัณฑิตในการเข้าใจว่า plain text จะแปลงเป็น ciphertext อย่างไร คีย์กำจัดความจำเป็นต้องจดจำอัลกอริทึมการเข้ารหัสทั้งหมด และทำหน้าที่เป็นวิธีความปลอดภัยสูงสุด ความต่างระหว่างคีย์และรหัสผ่านคือ คีย์ถูกสร้างโดยอัลกอริทึม ในขณะที่รหัสผ่านถูกสร้างโดยผู้ใช้

Hashing (การแฮช)

เว็บไซต์แปลงรหัสผ่าน plaintext เป็นแฮชโดยใช้อัลกอริทึมการเข้ารหัส และกระบวนการนี้เรียกว่า Hashing ผู้ส่งส่งข้อความที่เข้ารหัสแล้วรวมถึงแฮชไปยังผู้รับ และผู้รับฝั่งตรงข้ามถอดรหัสแฮชและข้อความ ผู้รับจากนั้นสร้างแฮชและเปรียบเทียบกับแฮชที่ได้รับ หากเหมือนกัน แสดงว่าการส่งปลอดภัย

8 คำศัพท์การเข้ารหัสที่จำเป็นและความหมายของพวกมัน

Hashing เป็นโหมดการเรนเดอร์ที่เร็วกว่า เนื่องจากการจัดเรียงค่าแฮชที่สั้นกว่ามีประสิทธิภาพมากกว่าการใช้ค่าเดิม

อ่านเพิ่ม: วิธีรักษาข้อมูล Mac ให้ปลอดภัยด้วย FileVault Encryption

Salting (การเพิ่มเกลือ)

วิธีความปลอดภัยแบบดั้งเดิมต้องการขั้นตอนเพิ่มเติมเพื่อเพิ่มความปลอดภัย Salting เพิ่มเกลือ (salt) ซึ่งเป็นข้อมูลสุ่ม ไปยังรหัสผ่านที่แฮชแล้ว กระบวนการนี้เรียกว่า Salting the passwords

มีโอกาสที่คนอาจมีรหัสผ่านเหมือนกัน ดังนั้นเพื่อให้การอนุรักษ์ดีขึ้น จึงทำ salting

ตัวอย่าง: ถ้าผู้ใช้ 2 คนมีรหัสผ่านเดียวกัน: admin@wsxdn.com

หลังแฮชแล้ว admin@wsxdn.com กลายเป็น:

f52fbd32b2b3b86ff88ef6c490628285f482af15ddcb29541f94bcf526a3f6c7

แต่ถ้าแฮกเกอร์โจมตีฐานข้อมูลและเจอแฮชนี้ บัญชีทุกบัญชีที่มีแฮชเดียวกันก็เปราะบางเท่าเทียม ดังนั้น เราเพิ่ม salt แยกต่างหากสำหรับแต่ละคนเพื่อเพิ่มความปลอดภัย

ตัวอย่าง #1: admin@wsxdn.com + tuna:

3436d420e833d662c480ff64fce63c7d27ddabfb1b6a423f2ea45caa169fb157

ตัวอย่าง #2: admin@wsxdn.com + Raisins:

728963c70b8a570e2501fa618c975509215bd0ff5cddaf405abf06234b20602c

หลังเพิ่ม salt ให้แต่ละคน เราสามารถเปรียบเทียบแฮชของรหัสผ่านเดียวกัน กับและไม่มี salting:

ไม่มี salting:

f52fbd32b2b3b86ff88ef6c490628285f482af15ddcb29541f94bcf526a3f6c7

มี salting ตัวอย่าง #1:

3436d420e833d662c480ff64fce63c7d27ddabfb1b6a423f2ea45caa169fb157

มี salting ตัวอย่าง #2:

8 คำศัพท์การเข้ารหัสที่จำเป็นและความหมายของพวกมัน

728963c70b8a570e2501fa618c975509215bd0ff5cddaf405abf06234b20602c

อัลกอริทึมสมมาตรและอสมมาตร (Symmetric and Asymmetric Algorithms)

อัลกอริทึมการเข้ารหัสสมัยใหม่ทำงาน 2 โหมด: Symmetric และ Asymmetric Algorithms Symmetric Algorithms ใช้คีย์เดียวกันสำหรับการเข้ารหัสและถอดรหัส คีย์ตกลงกันระหว่างทั้งสองฝ่ายจากความเข้าใจร่วมกัน Asymmetric Algorithms ใช้คีย์ 2 ตัวที่ต่างกัน: public key และ private key 確保การเข้ารหัสปลอดภัยโดยไม่ต้องตกลงกันล่วงหน้า

8 คำศัพท์การเข้ารหัสที่จำเป็นและความหมายของพวกมัน 8 คำศัพท์การเข้ารหัสที่จำเป็นและความหมายของพวกมัน

Public Key และ Private Key (คีย์สาธารณะและคีย์ส่วนตัว)

Public key แจกจ่ายให้ทุกคนในเครือข่าย แต่ private key จำกัดให้ผู้ใช้รายเดียวเท่านั้น Public key ใช้เข้ารหัสข้อความ ในขณะที่ผู้รับต้องการ private key ของเจ้าของเพื่อถอดรหัสและอ่านเนื้อหาทั้งหมด

8 คำศัพท์การเข้ารหัสที่จำเป็นและความหมายของพวกมัน

Digital Signature (ลายเซ็นดิจิทัล)

8 คำศัพท์การเข้ารหัสที่จำเป็นและความหมายของพวกมัน

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

อ่านเพิ่ม: วิธีรักษาข้อมูล Mac ให้ปลอดภัยด้วย FileVault Encryption

Encryption-Decryption Anomaly คืออะไร?

ในการเข้ารหัส plain text รวมกับ encryption key ถูกนำเป็น input ให้อัลกอริทึม เพื่อแปลง plain text เป็นรูปแบบสับสนหรืออ่านไม่ได้ ข้อความที่เข้ารหัสนี้ส่งไปยังฝ่ายรับซึ่งสามารถอ่านข้อความได้ด้วยคีย์

กระบวนการย้อนกลับคือ Decryption (ถอดรหัส) ข้อความที่เข้ารหัสหรือ cipher text ที่ได้รับจากผู้ส่ง รวมกับ decryption key ถูกส่งเป็น input ให้ decryption algorithm เพื่อแปลง cipher text กลับเป็น plain text หรือข้อความอ่านได้

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

สรุป:

โดยไม่มีการเข้ารหัส จะยากมากที่จะดำเนินงานสำคัญส่วนใหญ่ที่เราทำผ่านอินเทอร์เน็ต โดยเฉพาะธุรกรรมออนไลน์ เราตระหนักว่าพื้นฐานคณิตศาสตร์ที่ผูกมัดกับการเข้ารหัสเป็นงานซับซ้อนสำหรับคนทั่วไป เพราะคนส่วนใหญ่ไม่คุ้นเคยกับคำศัพท์ที่เกี่ยวข้อง เราหวังว่าบล็อกนี้เป็นของขวัญสำหรับคุณในการเข้าใจคำศัพท์การเข้ารหัสพื้นฐานและความหมาย