562 likes | 1.05k Views
ความปลอดภัยบนเครือข่าย และเทคนิคการเข้ารหัส. Network Security and Cryptography. จุดประสงค์การเรียนรู้. นำมาตรฐานความปลอดภัยขั้นพื้นฐานที่เหมาะสมไปใช้งานจริงได้ เข้าใจเทคนิคพื้นฐานการเข้ารหัส และการถอดรหัสข้อมูล บอกศัพท์เทคนิคเกี่ยวกับคริพโตกราฟีได้
E N D
ความปลอดภัยบนเครือข่ายและเทคนิคการเข้ารหัสความปลอดภัยบนเครือข่ายและเทคนิคการเข้ารหัส Network Security and Cryptography
จุดประสงค์การเรียนรู้จุดประสงค์การเรียนรู้ • นำมาตรฐานความปลอดภัยขั้นพื้นฐานที่เหมาะสมไปใช้งานจริงได้ • เข้าใจเทคนิคพื้นฐานการเข้ารหัส และการถอดรหัสข้อมูล • บอกศัพท์เทคนิคเกี่ยวกับคริพโตกราฟีได้ • นำเทคนิควิธีการเข้ารหัสต่างๆ ไปประยุกต์ใช้ด้วยการเขียนโปรแกรมเพื่อใช้งานได้ • เข้าใจหลักการเข้ารหัสกุญแจสาธารณะ ลายเซ็นดิจิตอล และ PGP • อธิบายหลักการทำงานของไฟล์วอลล์ได้
มาตรฐานความปลอดภัยขั้นพื้นฐานมาตรฐานความปลอดภัยขั้นพื้นฐาน (Basic Security Measure)
มาตรฐานความปลอดภัยขั้นพื้นฐานมาตรฐานความปลอดภัยขั้นพื้นฐาน แบ่งได้เป็น 7 ประเภทดังนี้ • ความปลอดภัยด้านภายนอก (External Security) • ความปลอดภัยด้านการปฏิบัติงาน (Operational Security) • การตรวจตราเฝ้าระวัง (Surveillance) • การใช้รหัสผ่าน และระบบแสดงตัวตน (Passwords and ID Systems) • การตรวจสอบ (Auditing) • การกำหนดสิทธิการใช้งาน (Access Rights) • การป้องกันไวรัส (Guarding Against Viruses)
ความปลอดภัยด้านภายนอก (External Security) • เป็นลักษณะการป้องกันความเสียหายทางด้านกายภาพ เน้นเพื่อสร้างความปลอดภัยกับอุปกรณ์คอมพิวเตอร์ เช่น • การยึดอุปกรณ์ไว้กับโต๊ะ เพื่อป้องกันการเคลื่อนย้ายและขโมย • การจัดวางสายเคเบิลให้ถูกสัดส่วน ไม่ระเกะระกะ • การป้องกันทางไฟฟ้าด้วยอุปกรณ์ปรับแรงดันไฟฟ้า ให้อยู่ในระดับแรงดันไฟฟ้าที่เหมาะสม
ความปลอดภัยด้านการปฏิบัติงาน (Operational Security) • เน้นที่การสร้างข้อจำกัดในการเข้าถึงระบบ เช่น • การกำหนดระดับการใช้งานของผู้ใช้ (ชื่อผู้ใช้, รหัสผ่าน, สิทธิการใช้งาน) • การกำหนดช่วงวันเวลาที่อนุญาตให้เข้าระบบ
การตรวจตราเฝ้าระวัง (Surveillance) • เน้นที่การนำกล้องโทรทัศน์วงจรปิดมาใช้งาน • เพื่อตรวจตราพฤติกรรม และเหตุการณ์เคลื่อนไหวของบุคคลต่างๆ ภายในบริเวณที่ติดตั้งกล้อง
การใช้รหัสผ่าน และระบบแสดงตัวตน (Passwords and ID Systems) • เน้นที่การยืนยันรหัสผ่านก่อนเข้าสู่ระบบ • หากรหัสผ่านไม่ถูกต้อง จะไม่สามารถเข้าสู่ระบบได้ • รวมถึงระบบการแสดงตัวตนด้วยเทคโนโลยีไบโอเมตริก ในกรณีที่ต้องการความปลอดภัยเป็นพิเศษ เช่น • การพิสูจน์บุคคลด้วยลายนิ้วมือ - ระบบแสกนลายนิ้วมือ • การพิสูจน์บุคคลด้วยเรตินา - การใช้เลนส์ม่านตา • การพิสูจน์บุคคลด้วยลายเซ็น • การพิสูจน์บุคคลด้วยอุณหภูมิ • การพิสูจน์บุคคลด้วยเสียง
การตรวจสอบ (Auditing) • เน้นที่การตรวจสอบ Transaction ต่างๆ ที่เข้ามาในระบบ • ปกติใช้ซอฟต์แวร์บันทึกTransaction ต่างๆ • โดยบันทึกใน Log File เพื่อใช้ในการตรวจสอบ และสังเกตพฤติกรรมของเจ้าของ Transaction นั้นได้
การกำหนดสิทธิการใช้งาน (Access Rights) • เน้นที่การกำหนดสิทธิการใช้งาน ในเรื่องของไฟล์ข้อมูล และอุปกรณ์ต่างๆ ในเครือข่าย โดยพิจารณาจาก 2 ปัจจัย คือ • การกำหนดสิทธิการใช้งานให้กับใคร • ผู้ที่มีสิทธิในการเข้าถึงทรัพยากรในเครือข่าย จะเข้าถึงข้อมูลได้อย่างไร เช่น • อ่านได้อย่างเดียว • แก้ไขได้ • เพิ่มข้อมูลได้ • สั่งพิมพ์ได้
การป้องกันไวรัส (Guarding Against Viruses) • เน้นที่การป้องกันไวรัสที่อาจแฝงเข้ามาผ่านระบบเครือข่าย หรือผ่านทางสื่อบันทึกข้อมูล • ปกติใช้ซอฟต์แวร์ป้องกันไวรัส และต้องอัปเดตโปรแกรมอย่างสม่ำเสมอ
เทคนิคพื้นฐานการเข้ารหัสข้อมูลและการถอดรหัสข้อมูลเทคนิคพื้นฐานการเข้ารหัสข้อมูลและการถอดรหัสข้อมูล Basic Encryption and Decryption Techniques
How are you feeling today HXEOWYLP 34ACJLKLO GDEABCQ…. Encryption Algorithm Ciphertext Plain text Key • คริพโตกราฟี (Cryptography) เป็นการรวมหลักการและกรรมวิธีของการแปลงรูปข้มูลข่าวสารต้นฉบับ ให้อยู่ในรูปแบบของข้มูลข่าวสารที่ได้ผ่านการเข้ารหัส และการนำข่าวสารนี้ไปใช้งาน จะต้องมีการแปลงรูปใหม่ เพื่อให้กลับมาเป็นข้อมูลข่าวสารเหมือนต้นฉบับเดิม • Plain text คือ ข้อมูลต้นฉบับซึ่งเป็นข้อความที่สามารถอ่านแล้วเข้าใจ • Encryption Algorithm คือ ขั้นตอนวิธีในโปรแกรมคอมพิวเตอร์ที่ใช้ในการแปลงข้อมูลต้นฉบับเป็นข้อมูลที่ได้รับการเข้ารหัส • Ciphertext คือ ข้อมูลหรือข่าวสารที่ได้รับการเข้ารหัส ทำให้อ่านไม่รู้เรื่อง • Key คือ เป็นกุญแจที่ใช้ร่วมกับ อัลกอริทึมในการเข้ารหัส และถอดรหัส
เทคนิคและแนวทางในการเข้ารหัสข้อมูลเทคนิคและแนวทางในการเข้ารหัสข้อมูล เพื่อแปลงเพลนเท็กซ์ เป็นไซเฟอร์เท็ก แบ่งได้ 2 วิธี ดังนี้ • เทคนิคการแทนที่ (Substitution Techniques) มีข้อเสียในเรื่องของการซ้ำกันของตัวอักษร ประกอบด้วย • การเข้ารหัสด้วยวิธีแทนที่แบบโมโนอัลฟาเบติค • การเข้ารหัสด้วยวิธีแทนที่แบบโพลีอัลฟาเบติค • เทคนิคการสับเปลี่ยน (Transposition Techniques) เป็นเทคนิคที่มีประสิทธิภาพดีกว่า สามารถแก้ปัญหาการซ้ำกันของตัวอักษรรวมถึงยากต่อการถอดรหัส ซึ่งประกอบด้วย • การเข้ารหัสด้วยวิธีการสับเปลี่ยนแบบเรลเฟ็นซ์ • การเข้ารหัสด้วยวิธีการสับเปลี่ยนแบบคอลัมน์
เทคนิคการแทนที่ (Substitution Techniques) • การเข้ารหัสด้วยวิธีแทนที่แบบโมโนอัลฟาเบติค (Monoalphabetic Substitution-Based Cipher) • เป็นเทคนิคการเข้ารหัสอย่างง่าย โดยทำการจับคู่ตัวอักษร ระหว่างเพลนเท็กซ์ และไซเฟอร์เท็กซ์ • มีข้อเสีย เนื่องจากทำให้เกิดการซ้ำกันของตัวอักษรและถอดรหัสได้ง่าย
เทคนิคการแทนที่ (Substitution Techniques) A B C D E F G H I J K L M N O P Q R S T U V W X Y Z B C D E F G H I J K L M N O P Q R S T U V W X Y Z A C D E F G H I J K L M N O P Q R S T U V W X Y Z A B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Z A B C D E F G H I J K L M N O P Q R S T U V W X Y • การเข้ารหัสด้วยวิธีแทนที่แบบโพลีอัลฟาเบติค (Polyalphabetic Substitution-Based Cipher) • ปรับปรุงข้อเสียของแบบโมโนอัลฟาเบติค • คล้ายคลึงกับแบบโมโนอัลฟาเบติค แต่จะมีคีย์เข้ามาเกี่ยวข้อง และใช้เมทริกซ์ร่วมด้วย
เทคนิคการสับเปลี่ยน (Transposition Techniques) • การเข้ารหัสด้วยวิธีการสับเปลี่ยนแบบเรลเฟ็นซ์ (Rail Fence Transposition Cipher) • เป็นการเข้ารหัสอย่างง่าย ใช้ลักษณะของ Row-by-Row หรือ Zigzag Plaintext : Come home tomorrow Ciphertext : Cmhmtmrooeoeoorw
เทคนิคการสับเปลี่ยน (Transposition Techniques) Column • การเข้ารหัสด้วยวิธีการสับเปลี่ยนแบบคอลัมน์ (Columnar Transposition Cipher) • เป็นวิธีที่มีประสิทธิภาพวิธีหนึ่ง จะทำให้อักษรเดียวกันเมื่อผ่านการเข้ารหัสแล้วจะไม่มีการซ้ำกัน • โดยการกำหนดคีย์ขึ้นมา เรียงลำดับคอลัมน์ตามคีย์ตัวอักษร นำ Plaintext ไปเรียงตามคอลัมน์ ทำการเข้ารหัสตามคีย์ และ คอลัมน์ที่กำหนด Key Plaintext : this is the best class I have ever taken Ciphertext : TESVTLEEIEIRHBSESSHTHAENSCVKITAA
การเข้ารหัสกุญแจสาธารณะ (Public Key Cryptography) มีด้วยกัน 2 ลักษณะ คือ • การเข้ารหัสแบบซิเมตริก (Symmetric Cryptosystems) • การเข้ารหัสแบบอะซิเมตริก (Asymmetric Cryptosystems) หรือ การเข้ารหัสกุญแจสาธารณะ
การเข้ารหัสกุญแจสาธารณะ (Public Key Cryptography) • การเข้ารหัสแบบซิเมตริก (Symmetric Cryptosystems) • เป็นการใช้อัลกอลิทึม หรือกุญแจในการเข้ารหัสดอกเดียวกัน ทั้งฝ่ายรับและฝ่ายส่ง • วิธีนี้ ทั้งผู้รับและผู้ส่งข้อความจะทราบคีย์ที่เหมือนกันทั้งสองฝ่ายในการรับหรือส่งข้อความ • ซึ่งหากมีขโมยนำกุญแจดอกนี้ไปได้ ก็สามารถถอดรหัสข้อมูลของเราได้
Symmetric Encryption คีย์ที่เป็นความลับใช้เข้ารหัส ข้อความเดิมก่อนเข้ารหัส ข้อความที่เข้ารหัสแล้ว (Cipher text) เข้ารหัสลับ Internet ข้อความที่เข้ารหัสแล้ว (Cipher text) ข้อความเดิมก่อนเข้ารหัส ถอดรหัสด้วยคีย์ลับเดิม
Symmetric Encryption • การเข้ารหัสแบบสมมาตรนี้ ก่อให้เกิดปัญหา 2 ส่วน คือ • ปัญหา Authenticationเนื่องจากผู้อื่นอาจทราบรหัสลับด้วยวิธีใดก็ตามแล้วปลอมตัวเข้ามาส่งข้อความถึงเรา • ปัญหา Non-repudiation คือ ไม่มีหลักฐานใดที่พิสูจน์ได้ว่าผู้ส่งหรือผู้รับได้กระทำรายการจริง ๆ
การเข้ารหัสกุญแจสาธารณะ (Public Key Cryptography) • การเข้ารหัสแบบอะซิเมตริก (Asymmetric Cryptosystems) • ใช้แนวคิดของการมีคีย์เป็นคู่ ๆ ที่สามารถเข้าและถอดรหัสของกันและกันเท่านั้นประกอบด้วย กุญแจ 2 ดอก คือ • กุญแจสาธารณะ (Public key)ใช้สำหรับการเข้ารหัส • กุญแจส่วนตัว(Private key ) ใช้สำหรับการถอดรหัส • ที่สำคัญกุญแจที่เข้ารหัสจะนำมาถอดรหัสไม่ได้ ซึ่ง Public key จะแจกจ่ายไปยังบุคคลต่างๆ ที่ต้องการสื่อสาร ส่วน Private Key จะเก็บไว้ส่วนตัวไม่เผยแพร่ให้ใคร
Asymmetric Encryption เข้ารหัสโดยการใช้คีย์สาธารณะ ของผู้รับ (Public Key) ข้อความเดิมก่อนเข้ารหัส ข้อความที่เข้ารหัสแล้ว (Cipher text) เข้ารหัสลับ Internet ข้อความที่เข้ารหัสแล้ว (Cipher text) ข้อความเดิมก่อนเข้ารหัส ถอดรหัสด้วยคีย์ส่วนตัว ( Private Key)
Asymmetric Encryption • ประโยชน์ของระบบการเข้ารหัสแบบไม่สมมาตร มีดังนี้ • ใช้รักษาความลับของข้อความที่จะจัดส่งไป • แก้ปัญหาการ Authenticate คือ ตรวจสอบว่าบุคคลที่ส่งข้อความเข้ามาเป็นผู้ส่งเองจริง ๆ ซึ่งทำได้โดยใช้วิธีการเข้ารหัสด้วยคีย์ส่วนตัว • ** การใช้คีย์ส่วนตัวเข้ารหัสข้อความเปรียบได้กับการเซ็นชื่อของเราบน เอกสารที่เป็นกระดาษเพื่อรับรองว่าข้อความนี้เราเป็นผู้ส่งจริง
ลายเซ็นดิจิตอล (Digital Signatures) • ใช้เพื่อเพิ่มความปลอดภัย ช่วยยืนยันตัวจดหมายว่าส่งมาจากผู้ส่งนั้นจริง • ใช้หลักการในการเปลี่ยนข้อความทั้งหมดให้เหลือเพียงข้อความสั้น ๆ เรียกว่า“Message digest” ซึ่งจะถูกสร้างขึ้นด้วยกระบวนการเข้ารหัสยอดนิยมที่เรียกว่า One-way hash function • จะใช้ message digest นี้ในการเข้ารหัสเพื่อเป็นลายเซ็นดิจิตอล(Digital Signature) โดยจะแจก Public key ไปยังผู้ที่ต้องการติดต่อ
หลักการทำงานของลายเซ็นดิจิตอลหลักการทำงานของลายเซ็นดิจิตอล Sender Recipient + Message Signature Message Signature Message + Signature Hash Function Hash Function Public key Private key ? = Digest Digest Digest
การตรวจสอบลายเซ็นดิจิตอลการตรวจสอบลายเซ็นดิจิตอล ตัวอย่าง - ทิมต้องการส่งข้อความไปให้แอน ทิมก็นำข้อความที่ต้องการส่งมาคำนวณ หา message digest ของข้อความ - ทิมนำ message digest ที่ได้มาเข้ารหัสด้วยคีย์ส่วนตัวของทิม จะได้ผลลัพธ์ออก มาเป็นลายเซ็นดิจิตอล - ทิมส่งข้อความต้นฉบับที่ไม่ได้เข้ารหัส พร้อมกับลายเซ็นดิจิตอลของตนเองไป ให้แอน
- แอนได้รับข้อความก็จะนำคีย์สาธารณะของทิมมาถอดรหัสลายเซ็นดิจิตอล ของทิม ได้ออกมาเป็น message digest ที่ทิมคำนวณไว้ - แอนมั่นใจได้ว่าข้อความที่ได้รับนั้นส่งมาโดยทิมจริง ๆ เพราะถอดรหัสลาย เซ็นของทิมได้ - แอนใช้แฮชฟังก์ชันตัวเดียวกับที่ทิมใช้ (ต้องตกลงกันไว้ก่อน) มาคำนวณหา message digest จากข้อความที่ทิมส่งมาเพื่อเปรียบเทียบกัน - ถ้า message digest ที่ได้จากการคำนวณทั้งสองตรงกัน แสดงว่า ลายเซ็นดิจิตอลเป็นของทิมจริง และไม่มีผู้ใดมาเปลี่ยนแปลงแก้ไข มันแต่อย่างใดก่อนจะมาถึงแอน
Pretty Good Privacy (PGP) • เป็นโปรแกรมที่ใช้สำหรับเข้ารหัสและถอดรหัส โดยใช้หลักของกุญแจสาธารณะมาใช้งาน • สนับสนุนอัลกอลิธึมที่ใช้สำหรับการเข้ารหัสหลายชนิด • ใช้สำหรับวิธีการเข้ารหัสแบบอะซิมเมตริกหรือแบบกุญแจสาธารณะ และการเข้ารหัสแบบซิมเมตริกด้วย • มีอัลกอลิธึมซึ่งเป็นที่นิยมอย่างแพร่หลาย ในด้านการเข้ารหัสความปลอดภัย
หลักการทำงานของ PGP + Message Signature Message Signature Hash Function Random Secret Key, K s Ks () Digest e() Recipient’s Public Key E(Ks) Private key E(Message) E(Key) PGP Encrypted Message
ไฟล์วอลล์ (Firewall) • มีวัตถุประสงค์เพื่อป้องกันบุคคลภายนอก หรือแฮกเกอร์เข้ามาเจาะระบบภายในเครือข่ายได้ • อุปกรณ์ไฟร์วอลล์ อาจเป็นเราเตอร์ เกตเวย์ หรือคอมพิวเตอร์ที่ติดตั้งขึ้นมาเพื่อวัตถุประสงค์ในการป้องกันแฮกเกอร์ • โดยทำหน้าที่ในการตรวจสอบติดตามแพ็กเก็ตที่เข้าออกระบบเพื่อป้องกันการเข้าถึงเครือข่าย • หน้าที่ของไฟร์วอลล์จะอนุญาตให้ผู้มีสิทธิหรือมีบัตรผ่านเท่านั้น ที่จะเข้าถึงเครือข่ายทั้ง 2 ฝั่ง
Firewall เป็นการติดตั้งโปรแกรมคอมพิวเตอร์บนคอมพิวเตอร์หรือเครื่องเราท์เตอร์ที่มีหน้าที่จัดการ ควบคุมการเชื่อมต่อจากภายนอกสู่ภายในองค์กร และจากภายในองค์กรสู่ภายนอกองค์กร แบ่งเป็น 2 ประเภท คือ • แพ็กเก็ตฟิลเตอร์ (Packet Filter) • พร็อกซีเซิร์ฟเวอร์หรือแอปพลิเคชันเกตเวย์ (Proxy Server/Application Gateway)
Firewall • Packet Filtering • ทำงานในระดับเน็ตเวิร์ก ปกติหมายถึงเราเตอร์ • ใช้วิธีตรวจดูหมายเลข IP หรือหมายเลขพอร์ต TCP ที่ได้รับอนุญาติเท่านั้น • มีข้อเสียในเรื่องของการหลอกลวงหมายเลข IP (Spoofing)
Firewall • Proxy Server/Application Gateway • ทำงานคลอบคลุมถึงลำดับชั้นแอปพลิเคชัน • ทุก Transaction ที่ร้องขอเข้ามาในเครือข่าย จะต้องผ่านพร็อกซี และจัดเก็บข้อมูลใน Log file เพื่อตรวจสอบได้ภายหลัง • ทำหน้าที่เป็นตัวกลางที่ใช้ติดต่อการร้องขอจากภายนอกสู่ภายในองค์กรเพื่อนำข้อมูลจากภายในส่งกลับไปให้ยังภายนอกที่ร้องขอเข้ามาซึ่งมีระดับความปลอดภัยสูงกว่าแบบแรก
นำหลักการทำงานของ Packet Filter และ Proxy Server มาใช้งานร่วมกันได้