1 / 67

Cryptography & Steganography

Cryptography & Steganography. Lec. Sanchai Yeewiyom School of Information and Communication Technology University of Phayao. 235034 Security in Computer Systems and Networks. Cryptography. คือ การเข้ารหัสข้อมูลเพื่อป้องกันการดักดูข้อมูลจาก Sniffer หรือการแก้ไขข้อมูล

Download Presentation

Cryptography & Steganography

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Cryptography& Steganography Lec. Sanchai Yeewiyom School of Information and Communication Technology University of Phayao 235034 Security in Computer Systems and Networks

  2. Cryptography คือ การเข้ารหัสข้อมูลเพื่อป้องกันการดักดูข้อมูลจาก Sniffer หรือการแก้ไขข้อมูล การเข้ารหัสข้อมูลมีจุดประสงค์เพื่อรักษาความลับของข้อมูล ข้อมูลนั้นจะถูกเปิดอ่านโดยบุคคลที่ได้รับอนุญาตเท่านั้น หลักการของการเข้ารหัสข้อมูลคือแปลงข้อมูล (Encrypt) ไปอยู่ในรูปของข้อมูลที่ไม่สามารถอ่านได้โดยตรง ข้อมูลจะถูกถอดกลับด้วยกระบวนการถอดรหัส (Decryption)

  3. Cryptography

  4. Cryptography ในอดีต Caesar Cipher Ciphertext: WKH TXLFN EURZQ IRA MXPSV RYHU WKH ODCB GRJ Plaintext: the quick brown fox jumps over the lazy dog

  5. Cryptography ในอดีต Monoalphabetic Cipher Polyalphabetic Cipher กำหนดระยะห่างแต่ละช่วงให้ไม่เท่ากัน

  6. Cryptography ในอดีต One-Time Pad ใช้ Key จากการสุ่ม และมีความยาวขนาดเท่ากับ Plain Text และไม่มีการใช้ Key นั้นซ้ำอีก Key เรียกว่า Pad

  7. Cryptography ในอดีต Encrypt Decrypt

  8. Cryptography

  9. Cryptography ปัจจุบันสามารถแบ่งการเข้ารหัสข้อมูลเป็น 3 ประเภท Symmetric Key Cryptography (Secret Key Cryptography) Asymmetric Key Cryptography (Public Key Cryptography) Hash Function

  10. Symmetric Key Cryptography การเข้ารหัสและถอดรหัสโดยใช้กุญแจรหัสตัวเดียวกัน คือ ผู้ส่งและผู้รับจะต้องมีกุญแจรหัสที่เหมือนกันเพื่อใช้ในการเข้ารหัสและถอดรหัส

  11. Symmetric Key Cryptography

  12. Symmetric Key Cryptography แบ่งเป็น 2 ประเภท คือ Stream Cipher Block Cipher

  13. Stream Cipher เข้ารหัสทีละ bit, byte หรือ word มีการทำ Feedback เพื่อทำให้ Key ที่ใช้เข้ารหัสเปลี่ยนไปเรื่อยๆ

  14. Stream Cipher

  15. Block Cipher เข้ารหัสข้อมูลทีละกลุ่มของข้อมูล โดยข้อมูลจะมีขนาดเท่ากันเสมอ Exp. Electronic Codebook (ECB) Cipher Block Chaining (CBC)

  16. Electronic Codebook (ECB) Secret Key จะถูกใช้เข้ารหัส Block ของ Plain Text ผลลัพธ์ที่ได้คือ Block ของ Cipher Text ถ้าเข้ารหัส Block ของ Plain Text ที่เหมือนกันโดยใช้ Key เดียวกัน ผลลัพธ์ที่ได้คือ Block ของ Cipher Text ที่เหมือนกัน เป็นที่นิยมใช้กันทั่วไป แต่มีจุดอ่อนที่โดนโจมตีโดยใช้วิธี Brute Force ได้ง่าย

  17. Electronic Codebook (ECB)

  18. Cipher Block Chaining (CBC) เพิ่มกลไกการ Feedback เพื่อส่งข้อมูลเข้ามาเป็น Input สำหรับการเข้ารหัส นำ Plain Text มาทำการ Exclusive-OR (XOR) กับ Cipher Text ของ Block ก่อนหน้า

  19. Cipher Block Chaining (CBC)

  20. A pixel-map version of the image on the left was encrypted with ECB mode to create the center image: Original Encrypted using ECB mode Encrypted using a more secure mode, e.g. CBC

  21. Symmetric Key Cryptography Example Data Encryption Standard (DES) Triple-DES Advanced Encryption Standard (AES) Rivest Ciphers (RC) Blowfish

  22. Data Encryption Standard (DES) พัฒนาโดย IBM เข้ารหัสแบบ Block Cipher ข้อมูล Block ละ 64 bit และใช้ Key ขนาด 56 bit เป็นที่นิยมในอดีต แต่ปัจจุบันถูกถอดรหัสได้ง่ายและเร็ว เนื่องจาก Key มีขนาดเล็ก

  23. Triple-DES (3DES) ทำการเข้ารหัสแบบ DES วนซ้ำกัน 3 รอบ ขนาดของ Key คือ 112 หรือ 168 bit เป็นมาตรฐานการเข้ารหัสข้อมูลในปัจจุบัน

  24. Advanced Encryption Standard (AES) ถูกพัฒนาขึ้นมาโดย National Institute of Standards and Technology (NIST) เพื่อใช้เป็นมาตรฐานการเข้ารหัสข้อมูลของรัฐบาลสหรัฐฯ เข้ารหัสแบบ Block Cipher โดยข้อมูล Block ละ 128, 192 หรือ 256 bit และใช้ Key ขนาด 128, 192 หรือ 256 bit

  25. AES

  26. Rivest Ciphers (RC) คิดค้นโดย Ron Rivest มีหลาย Version RC4 เป็น Stream Cipher นิยมใช้อย่างแพร่หลายเช่นใน Secure Socket Layer (SSL), Wired Equivalent Privacy (WEP) ขนาดของ Key ไม่คงที่ ในปัจจุบันไม่ปลอดภัยเนื่องจากถูกถอดรหัสได้ง่ายใน WEP RC6 เป็น Block Cipher พัฒนาต่อยอดจาก RC5 ถูกนำมาใช้ใน AES โดยข้อมูล Block ละ 128 bit และใช้ Key ขนาด 128, 192 หรือ 256 bit และสามารถกำหนดจำนวนการวนรอบได้

  27. Blowfish คิดค้นโดย Bruce Schneier เป็น Block Cipher โดยข้อมูล Block ละ 64 bit และใช้ Key ขนาด 32 - 448 bit วนรอบ 16 รอบ พัฒนาเพื่อใช้กับ CPU แบบ 32 bit ที่มี Cache ขนาดใหญ่ ทำงานได้เร็วกว่า DES ไม่มีลิขสิทธิ์

  28. Asymmetric Key Cryptography Public Key Cryptography การเข้ารหัสและถอดรหัสโดยใช้กุญแจรหัสคนละตัวกัน ผู้ส่งจะมีกุญแจรหัสตัวหนึ่งในการเข้ารหัส และผู้รับก็จะมีกุญแจรหัสอีกตัวหนึ่งเพื่อใช้ในการถอดรหัส ผู้ใช้รายหนึ่งๆจึงมีกุญแจรหัส 2 ค่าเสมอคือ กุญแจสาธารณะ (Public Key) และ กุญแจส่วนตัว (Private Key) ผู้ใช้จะประกาศให้ผู้อื่นทราบถึงกุญแจสาธารณะของตนเองเพื่อให้นำไปใช้ในการเข้ารหัสและส่งข้อมูลที่เข้ารหัสแล้วมาให้ ข้อมูลที่เข้ารหัสดังกล่าวจะถูกถอดออกได้โดยกุญแจส่วนตัวที่เข้าคู่กันเท่านั้น

  29. Asymmetric Key Cryptography

  30. Asymmetric Key Cryptography ในทางปฏิบัติแล้วมักมีการใช้การเข้ารหัสทั้งสองระบบ ร่วมกัน เช่น ในระบบ PGP (Pretty Good Privacy) ซึ่งใช้ในการ เข้ารหัส E-mail จะใช้วิธีสร้าง Session Key (ซึ่งเป็นการเข้ารหัส ตามแบบ Symmetric Key) เพื่อเข้ารหัสข้อมูลจากนั้น Session Key จะถูกเข้ารหัสโดยใช้กุญแจสาธารณะของผู้รับ และถูก ส่งไปกับข้อมูลที่เข้ารหัสแล้ว

  31. Asymmetric Key Cryptography

  32. Asymmetric Key Cryptography การถอดรหัสนั้นทำในทางตรงกันข้าม ผู้รับจะใช้กุญแจ ส่วนตัวในการถอดรหัสเพื่อให้ได้ Session Key คืนมา หลังจากนั้นจึงนำ Session Key มาถอดรหัสข้อมูลอีกขั้นหนึ่ง ในองค์กรขนาดใหญ่จำเป็นต้องใช้ Public Key Infrastructure (PKI) ในการบริหารจัดการ Key

  33. Asymmetric Key Cryptography

  34. Asymmetric Key Cryptography Example RSA Digital Signature Digital Certificate

  35. RSA ถูกพัฒนาเมื่อพ.ศ. 2520 โดย รอน ริเวสต์ (Ron Rivest) อาดี ชามีร์ (Adi Shamir) และเล็น แอเดิลแมน (Len Adleman) ใช้ได้ทั้ง Encryption และ Digital Signature ใช้ใน Protocol สำหรับการค้าอิเล็กทรอนิกส์ (e-commerce) และเชื่อว่ามีความปลอดภัย เมื่อมี Key ที่ยาวพอ โดยปกติบนอินเทอร์เน็ตใช้ Key ขนาด 1,024 bit

  36. Digital Signature ใช้ในการพิสูจน์ทราบตัวตนของผู้ส่งข้อความ (Authentication) ใช้ตรวจสอบว่าข้อความนั้นถูกเปลี่ยนแปลงแก้ไขระหว่างการรับ-ส่งหรือไม่ (Data Integrity) เนื้อหาของข้อความมักเปิดเผยได้ เนื่องจากใช้หลักการตรงข้ามกับการเข้ารหัส

  37. Digital Signature (Authentication)

  38. Digital Signature(Data Integrity)

  39. Digital Certificate ใช้ในการตรวจสอบเพื่อสร้างความมั่นใจว่า Public Key ที่เราได้มาใช้ในการเข้ารหัส เป็นของคู่สนทนาที่แท้จริง ใช้ระบบแจกจ่ายคีย์ที่เรียกว่า Certificate Authority (CA) ซึ่งจะเป็นผู้รับรองว่า Public Key เป็นของใคร โดยจะออก Digital Certificate ให้ นิยมนำมาใช้ในการรับรอง Website E-commerce เพื่อสร้างความน่าเชื่อถือ บริษัทที่ให้บริการ ได้แก่ Cybertrust, VeriSign etc.

  40. ผู้ให้บริการออกใบรับรองอิเล็กทรอนิกส์ (CA) ในประเทศไทย หน่วยงานภาครัฐ ได้แก่ 1. สำนักบริการเทคโนโลยีสารสนเทศภาครัฐ 2. สำนักงานคณะกรรมการกำกับหลักทรัพย์และตลาดหลักทรัพย์ 3. สำนักงานป้องกันและปราบปรามการฟอกเงิน 4. ธนาคารแห่งประเทศไทย 5. Khonthai CA 6. กระทรวงการคลัง หน่วยงานภาคเอกชน ได้แก่ 1. บริษัท ทีโอที จำกัด (มหาชน) 2. บริษัท กสท โทรคมนาคม จำกัด (มหาชน) 3. บริษัท ไทยดิจิทัล ไอดี จำกัด 4. บริษัท Max Saving (Thailand) Co.,Ltd

  41. Digital Certificate

  42. Hash Function Hash Function บางทีเรียกว่า Oneway-encryption เป็น Algorithm ในการเข้ารหัสโดยไม่ต้องใช้ Key และค่าแฮชที่ คำนวณจาก Plaintext มีความยาวคงที่ ซึ่งไม่สามารถคำนวณหา เนื้อหาและความยาวเดิมของข้อความเดิมได้ Hash Function จะใช้สำหรับการคำนวณ Digital Fingerprint ของเนื้อหาไฟล์ หรือ Message Digest เพื่อตรวจสอบดูว่าไฟล์ นั้นมีการเปลี่ยนแปลงโดยคนอื่นหรือ Virus หรือไม่

  43. Hash Function ใช้ใน Operating System เพื่อเข้ารหัส Password ในการ Login ใช้ในการรักษาความคงสภาพของข้อมูล (Integrity) ที่นิยมใช้ได้แก่ MD5, SHA-1

  44. Hash Function Example Message Digest (MD) Secure Hash Algorithm (SHA)

  45. Message Digest (MD) Message Digest หรือเรียกสั้นๆว่า Digest แปลว่าข้อความ สรุปจากเนื้อหาข้อความตั้งต้น โดยปกติข้อความสรุปจะมีความ ยาวน้อยกว่าความยาวของข้อความตั้งต้นมากจุดประสงค์สำคัญ ของอัลกอริทึมนี้คือ การสร้างข้อความสรุปที่สามารถใช้เป็น ตัวแทนของข้อความตั้งต้นได้ โดยทั่วไปข้อความสรุป (Digest) จะมีความยาว128 บิต และจะไม่ขึ้นกับขนาดความยาว ของข้อความตั้งต้น

  46. Message Digest (MD) MD2 MD4 MD5

  47. MD2 ผู้พัฒนาคือ Ron Rivest อัลกอริทึมนี้เชื่อกันว่ามีความ แข็งแกร่งที่สุดในบรรดาอัลกอริทึมต่างๆ ที่ Rivest พัฒนาขึ้นมา ข้อเสียของอัลกอริทึมนี้คือใช้เวลามากในการคำนวณ Digest หนึ่งๆ MD2 จึงไม่ค่อยได้มีการใช้งานกันมากนัก MD2 สร้าง Digest ที่มีความยาว 128 บิต

More Related