05-511-305
ความมั่นคงของระบบสารสนเทศ
(Information System Security)
CHAPTER 4 ความรู้พื้นฐานเกี่ยวกับ
การเข้ารหัสข้อมูล
จุดประสงค์การเรียนรู้
อธิบายความรู้พื้นฐานเกี่ยวกับการ
เข ้ารหัสแบบสมมาตรได ้อย่างถูกต ้อง
มีทักษะในการเข ้ารหัสแบบสมมาตร
ได ้อย่างถูกต ้อง
Sender
ผู้ส่งข้อมูล
Receiver
ผู้รับข้อมูล
Tranmission Media
สื่อที่ใช้ในการส่งข้อมูล
Interceptor/Intruder (O)
ผู้ที่ต้องการข้อมูลโดยไม่มีสิทธิ์
แผนภาพคาศัพท์ที่เกี่ยวข้องในการส่งข้อมูล
4
1. Plain Text หมายถึง ข้อความหรือข้อมูลต่างๆ ที่
ยังไม่ผ่านกรรมวิธีการเข้ารหัส
ศัพท์ต่างๆ ที่เกี่ยวข้องกับการเข้าและถอดรหัส
2. Cipher Text หมายถึง ข้อความ หรือข้อมูลต่างๆที่
ผ่านการเข้ารหัสแล้ว และทาให้รูปแบบของข้อมูล
เปลี่ยนแปลงไป
3. Algorithm หมายถึง แนวความคิดหรือลาดับความ
คิดที่มีรูปแบบที่สามารถนาไปประมวลผลทางคอมพิวเตอร์
ได้โดยง่าย
5
4. การเข้ารหัส (Encryption)
หมายถึง กระบวนการหรือขั้นตอนในการเข้ารหัสข้อมูล
ที่เปลี่ยนแปลงไปจากเดิม
5. การถอดรหัส (Decryption)
หมายถึง กระบวนการหรือขั้นตอนในการถอดรหัสข้อมูล
เพื่อให้ข้อมูลที่เข้ารหัสไว้คืนสู่สภาพเดิมก่อนเข้ารหัส
6. Cryptography
หมายถึง ระบบการรักษาความปลอดภัย
ที่ประกอบด้วย Encryption และ Decryption
ศัพท์ต่างๆ ที่เกี่ยวข้องกับการเข้าและถอดรหัส
7. Cryptanalysis หมายถึง การพยายามวิเคราะห์เพื่อ
ศึกษาประเด็นต่างๆ ที่เกี่ยวข้องกับ Cryptography
กระบวนการในการเข้ารหัสและถอดรหัส
สามารถแทนด้วยสัญลักษณ์ดังนี้
C = E(P)
หมายความว่า ข้อมูลดั้งเดิมเมื่อผ่านการเข้ารหัส ก็จะได้ข้อมูลที่เข้ารหัสแล้ว
P = D(C)
หมายความว่า ข้อมูลที่ผ่านการเข้ารหัส เมื่อนามาผ่านกระบวนการถอดรหัสก็จะได้ข้อมูลดั้งเดิม
จุดประสงค์ของการเข้ารหัสและถอดรหัส
จุดประสงค์หลักของการเข ้ารหัสและถอดรหัส คือ
ผู้ที่ไม่ได ้รับอนุญาตจะไม่สามารถเข ้าถึงข ้อมูลได ้
หรือ เข ้าถึงข ้อมูลได ้ยาก
ให ้เพียงแค่บุคคลที่อนุญาตให ้เข ้าถึงข ้อมูลเข ้าถึง
ข ้อมูลได ้เท่านั้น
ผู้ที่ไม่ได ้รับอนุญาตอาจเข ้าถึงข ้อมูลได ้แต่ไม่
สามารถเข ้าใจความหมายของข ้อมูลนั้นนั้นได ้
ประเภทของการเข้ารหัส
เข ้ารหัส และ ถอดรหัส ข ้อมูลแล ้วส่งผ่านกันในระบบเน็กเวิร์ค
นั้น มี 2 แบบ คือ
 การเข ้ารหัสแบบสมมาตร (Symmetric key algorithms)
 การเข ้ารหัสแบบอสมมาตร (Asymmetric key algorithms)
การแบ่งประเภทขึ้นอยู่กับ กุญแจ กุญแจ ใช ้ร่วมกับ
อัลกอริทึม ในการ เข ้ารหัส และ ถอดรหัส
กุญแจในที่นี้ เปรียบเทียบได ้กับลูกกุญแจ ต ้องมีลูกกุญแจ
เท่านั้นจึงจะเปิดแม่กุญแจอ่านข ้อมูลได ้
การเข้ารหัสแบบสมมาตร
การเข ้ารหัสแบบสมมาตร จะใช ้กุญแจลับ
ในการติดต่อกันระหว่าง 2 คน อันเดียวกัน
ทั้งในการ เข ้ารหัส และ ถอดรหัส
ก่อนที่จะส่งข ้อมูลที่ถูกเข ้ารหัสแล ้ว ผ่าน
ระบบเน็กเวิร์ค ทั้ง 2 กลุ่ม ต ้องมี กุญแจ
และ อัลกอริทึม ที่ตกลงร่วมกัน เพื่อใช ้ใน
การ เข ้ารหัส และ ถอดรหัส
ปัญหาของการเข้ารหัสแบบสมมาตร
ปัญหาที่เกิดขึ้นในการใช ้กุญแจลับ คือ การส่ง
กุญแจ ให ้อีกกลุ่ม หนึ่ง แล ้วโดนดักลักลอบเอา
กุญแจไปโดยผู้ไม่ประสงค์ดี
ถ ้า นาย ก และ นาย ข ใช ้การส่งข ้อมูลโดยใช ้
กุญแจลับ และ นาย ค ดัก กุญแจลับระหว่างการ
ส่งกุญแจ จะทาให ้นาย ค สามารถอ่าน ข ้อมูล
ลับ ที่ส่งกันระหว่าง นาย ก กับ นาย ข
ไม่เพียงแค่นั้น นาย ค อาจจะ สามารถสร ้าง
ข ้อมูล หลอก นาย ก ว่าเป็น นาย ข ได ้
ถ ้าติดต่อกับหลายกลุ่ม ต ้องใช ้กุญแจจานวน
มาก
การเข้ารหัสแบบอสมมาตร (Asymmetric key algorithms)การเข ้ารหัสแบบอสมมาตร เป็นการแก ้ปัญหาโดยใช ้
หลักการของ กุญแจสาธารณะ และ กุญแจส่วนตัว
โดยที่ กุญแจสาธารณะ นั้นเปิดเผย ในระบบเน็กเวิร์ดได ้
ส่วนกุญแจส่วนตัว นั้นเก็บไว ้เฉพาะบุคคลเท่านั้น
การใช ้กุญแจสาธารณะ และ กุญแจส่วนตัว ในการ
เข ้ารหัสนั้นเป็นแบบตรงข ้ามกัน คือมีกุญแจเป็นคู่ 2 อันคือ
ใช ้กุญแจ อันหนึ่ง เข ้ารหัส ต ้องใช ้อีกกุญแจ เพื่อทาการ
ถอดรหัส เท่านั้น
การเข้ารหัสแบบอสมมาตร
ตัวอย่าง
นาย ข ต ้องการส่ง ข ้อมูลลับ ให ้กับ นาย ก
ในการเข ้ารหัส นาย ก มีคู่ของกุญแจ คือ กุญแจ
สาธารณะ และ กุญแจส่วนตัว
1) นาย ก ได ้ส่ง กุญแจสาธารณะ ของ นาย ก ไปให ้
นาย ข และเก็บ กุญแจส่วนตัว ไว ้กับตัวเอง
2) เมื่อ นาย ข ได ้กุญแจสาธารณะ ของ นาย ก แล ้วจึง
ทาการเข ้ารหัส ข ้อมูลด ้วย กุญแจสาธารณะ ของ นาย
ก แล ้วทาการส่งข ้อมูลลับให ้นาย ก
3) เมื่อ นาย ก ได ้รับแล ้วจึงทาการถอดรหัส ด ้วย กุญแจ
ส่วนตัว ของ นาย ก จะได ้ ข ้อมูล ที่ นาย ข ต ้องการ
ส่งให ้นาย ก
ตัวอย่างการเข้า/ถอดรหัส เพื่อรักษาความลับ
13
FE84F
กุญแจ
สาธารณะ
ของนาย ข
ซื้อ 10 ชิ้น
D125HG
ซื้อ 10 ชิ้น
D125HG
นาย ก นาย ข
3AHEF
กุญแจ
ส่วนตัว
ของ
นาย ข
นาย ก
FE84F
กุญแจ
สาธารณะ
ของนาย ข
ความแตกต่างระหว่าง การเข้ารหัสทั้งสองแบบ การเข ้ารหัสแบบสมมาตร ข ้อมูลทาการ เข ้ารหัส และ ถอดรหัส
ได ้รวดเร็ว แต่ก่อนจะต ้องมีการตกลงกุญแจกันก่อน และ มี
ปัญหาในการแลกเปลี่ยนกุญแจ ที่ไม่มีความปลอดภัย
 การเข ้ารหัสแบบอสมมาตร การแลกเปลี่ยน กุญแจนั้นไม่มีปัญหา
เพราะ กุญแจสาธารณะ ไม่เป็นความลับ แต่ อัลกอริทึม ในการ
เข ้ารหัส และ ถอดรหัส นั้นเสียเวลามากทาให ้ช ้า
 การเข ้ารหัสแบบสมมาตร ถ ้าต ้องการติดต่อกับ กลุ่มหลายกลุ่ม
ต ้องใช ้กุญแจลับหลายกุญแจ แต่ แบบ อสมมาตรจะใช ้แค่
กุญแจสารธารณะ และ กุญแจส่วนตัวเท่านั้น
 ระบบกุญแจสาธารณะต ้องใช ้เวลาในการคานวณการเข ้าและ
ถอดรหัส เมื่อเทียบกับระบบกุญแจสมมาตร และอาจใช ้เวลาเป็น
พันเท่าของเวลาที่ใช ้โดยระบบกุญแจสมมาตร
สรุปการเข้ารหัสทั้ง 2 แบบ
การเข ้ารหัสแบบอสมมาตร เพราะว่าใช ้กุญแจที่
แตกต่างกันในการ เข ้ารหัส และ ถอดรหัส ข ้อมูล
การเข ้ารหัสแบบอสมมาตรใช ้การคานวณที่ค่อนข ้าง
ซับซ ้อนทาให ้เสียเวลาในการเข ้ารหัส และ ถอดรหัส
ข ้อมูลมักเหมาะกับการเข ้ารหัสข ้อมูล ที่ค่อนข ้างเล็ก
เช่น กุญแจลับ ไม่ค่อยนิยม เข ้ารหัส และ ถอดรหัส ตัว
ข ้อมูลทั้งหมด เช่น Username / Password
สรุปการเข้ารหัสทั้ง 2 แบบ
จุดเริ่มต้นของการเข้ารหัส:
การวิเคราะห์รหัสลับ(Cryptanalysis)
Ex : Z+5 = E
A – 8= S
Ex : A+4 = E
Z –2 = X
การแทนตัวอักษรจะจัดเรียง
ในรูปของวงกลม
การสร้างสูตรคานวณทางคณิตศาสตร์
 การเข้ารหัสโดยการแทนที่ตัวอักษร (Substitution)
 การเข ้ารหัสชนิดซีซาร์ (The Caesar Cipher)
 การเข ้ารหัสโดยการกาหนดกุญแจคา (Keyword Cipher)
 การเข ้ารหัสโดยการจัดเรียงลาดับตัวอักษร (Rearrangement)
 การแทนที่ตัวอักษรด ้วยตัวอักษรมากกว่า 1 ตัว (Polyalphabetic
Substitution)
จุดเริ่มต้นของการเข้ารหัส:
การวิเคราะห์รหัสลับ(Cryptanalysis)
 การเข้ารหัสลับโดยการเรียงลาดับตัวอักษรใหม่
(Transposition/Permutation)
 การสลับคอลัมน์ (Columnar Transpositions)
 การสลับ 2 คอลัมน์ (Double Transposition Algorithm)
จุดเริ่มต้นของการเข้ารหัส:
การวิเคราะห์รหัสลับ(Cryptanalysis)
การเข้ารหัสแบบซีซาร์ (Caesar Cipher)
 วิธีการเข ้ารหัสแบบนี้ได ้ชื่อตามชื่อของ จูเลียต ซีซาร์ นักรบที่มีชื่อเสียงของ
จักรวรรดิโรมันในอดีต
 ซีซาร์เป็นผู้นาวิธีการเข ้ารหัสแบบนี้มาใช ้เป็นคนแรกในการรบของเขาเพื่อ
ป้องกันไม่ให ้ฝ่ ายตรงข ้ามรู้ข ้อมูลที่จาเป็นในสงครามของฝ่ ายตน
การเข้ารหัสชนิดซีซาร์ (The Caesar Cipher)
การเข้ารหัสโดยการแทนที่ตัวอักษร
(Substitution)
การเข้ารหัสแบบซีซาร์ (Caesar Cipher)
 วิธีการเข ้ารหัส (Algorithm) แบบนี้จะกาหนดหมายเลขกากับ ให ้กับตัวอักษร
แต่ละตัว ไว ้เป็นมาตรฐานชุดหนึ่งไว ้ล่วงหน้า
 เช่น กาหนดให ้อักษร A มีเลขกากับเป็นหนึ่ง เสร็จแล ้วเมื่อมี ชุดข ้อความที่
ต ้องการเข ้ารหัสก็นาตัวอักษรแต่ละตัวมาเปรียบ เทียบกับในตารางเลขกากับ
หลังจากนั้นให ้เลื่อนไปทางขวาอีก 3 ตัว ก็จะได ้ผลลัพธ์เป็นข ้อความที่ผ่านการ
เข ้ารหัสแล ้ว Algorithm นี้เขียนเป็นสูตรได ้ดังนี้
Ci= E(Pi)=Pi+3
การเข้ารหัสชนิดซีซาร์ (The Caesar Cipher)
การเข้ารหัสโดยการแทนที่ตัวอักษร
(Substitution)
ตัวอักษรปกติ จะถูกแทนที่ด ้วยตัวอักษรที่อยู่ถัดไปอีก 3
ตัว โดยตัวอักษรปกติเราจะเรียกว่า Plain ส่วนตัวอักษร
ที่จะนามาแทนที่จะเรียกว่า Cipher
Plain :
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
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 C
Cipher :
การเข้ารหัสโดยการแทนที่ตัวอักษร
(Substitution)
การเข้ารหัสชนิดซีซาร์ (The Caesar Cipher)
การเข้ารหัสของ Caesar จะใช้การเทียบตัวอักษรปกติ (Plain) กับ Cipher
ตัวอย่างเช่น ใช้สูตร 3 ในการเข้ารหัส
Plaintext: THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG
Ciphertext: WKH TXLFN EURZQ IRA MXPSV RYHU WKH ODCB GRJ
Plain :
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
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 C
Cipher :
การเข้ารหัสโดยการแทนที่ตัวอักษร
(Substitution)
การเข้ารหัสชนิดซีซาร์ (The Caesar Cipher)
และการถอดรหัสก็จะใช้การเทียบย้อนกลับระหว่าง Cipher กับ Plain
Ciphertext: WKH TXLFN EURZQ IRA MXPSV RYHU WKH ODCB GRJ
Plaintext: THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG
Cipher :
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 C
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
Plain :
การเข้ารหัสโดยการแทนที่ตัวอักษร
(Substitution)
การเข้ารหัสชนิดซีซาร์ (The Caesar Cipher)
24
ซึ่งเราสามารถกาหนดใช ้Key อื่นๆ ได ้อีก ดังรูป เช่น +
1, + 2 , +3
Substitution : Caesar cipher
25
ข ้อดีของการเข ้ารหัสแบบซีซาร์ (Caesar) นี้ก็คือ ความ
ง่ายในการเข ้ารหัส แต่ก็มีข ้อเสียคือการที่สามารถจะทา
การวิเคราะห์หาข ้อความเดิมจาก Cipher Text ได ้ง่าย
ซึ่งวิธีการเข ้ารหัสที่ดีนั้นจะต ้องหลีกเลี่ยงการถูก
วิเคราะห์โดยง่ายนี้ให ้ได ้ วิธีการที่นามาวิเคราะห์
ดังกล่าวนี้ก็คือ การหาสิ่งซ้า ๆ กันจากวิธีการเข ้ารหัสที่
เราเรียกว่าการหา Pattern ของตัวอักษร ซึ่งหากทา
การวิเคราะห์ให ้ดีจากตัวอักษรของ Cipher Text
จานวนมากพอ ก็จะเห็นได ้ง่ายว่ามีการเลื่อนลาดับของ
ตัวอักษร 3 ตัว ดังนั้นจึงไม่เป็นการยากนักที่ผู้ไม่
ประสงค์ดีจะทาการCryptanalysis ของวิธีการเข ้ารหัส
แบบซีซาร์นี้
Substitution : Caesar cipher
26
การเข้ารหัสโดยใช้กุญแจคา (Keyword cipher)
Keyword cipher เป็นการเข ้ารหัสแบบซีเคร็ทคีย์ (Secret
Key) หรือ Symmetric Key Cryptography ที่อาศัย
พื้นฐานเดียวกันกับ Caesar
หลักการของ Keyword cipher คือ จะใช ้Key ที่เป็นคามา
เรียงต่อๆ กัน แล ้วเข ้ารหัสโดยสร ้าง Caesar Cipher จาก
ตัวอักษรที่ปรากฏอยู่ใน Key
การเข้ารหัสโดยการแทนที่ตัวอักษร
(Substitution)
27
 ตัวอย่างเช่น
Keyword คือ LEMON
การเข้ารหัสโดยใช้กุญแจคา
P 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
C L E M 0 N A B C D F G H I J K P Q R S T U V W X Y Z
28
การเข้ารหัสโดยใช้กุญแจคา
ใช ้Keyword ที่เป็นคามาเรียงต่อๆ กัน แล ้วเข ้ารหัสโดย
สร ้าง Caesar Cipher จากตัวอักษรที่ปรากฏอยู่ใน Key ทา
ให ้โครงสร ้างของ Cipher ที่ใช ้ในการเข ้ารหัสซับซ ้อนยิ่งขึ้น
แต่ถ ้า Keyword ถูกขโมยไปใช ้ข ้อมูลก็จะถูกถอดรหัสได ้
ถึงไม่รู้ Keyword ก็ยังสามารถคาดเดา Keyword ได ้จาก
การทดสอบตัวอักษรที่เรียงซ้าๆ กันควบคู่กับการพิจารณา
ระยะห่าง
เป็ นการเข้ารหัสโดยการจัดเรียงตัวอักษรใหม่ เช่น การนับตัวอักษรที่
3,5,7 แล้วทาการจัดตัวอักษรตามนั้น โดยมีการใช้คณิตศาสตร์
ตัวอย่างเช่น หาค่า K โดยใช้สูตร 3
แทนค่า E(K)= (3*10) Mod 26 = 4 = E
การเข้ารหัสโดยการจัดเรียงลาดับตัวอักษร (Rearrangement)
การเข้ารหัสโดยการแทนที่ตัวอักษร
(Substitution)
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
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
30
• การสลับคอลัมน์ (Columnar Transpositions)
• การสลับ 2 คอลัมน์ (Double Transposition Algorithm)
การเข้ารหัสลับโดยการเรียงลาดับตัวอักษรใหม่
(Transposition / Permutation)
31
การสลับคอลัมน์ (Columnar Transpositions)
การแทนค่าตัวอักษรด้วยวิธีนี้มีจุดประสงค์คือการกระจาย
ความซ้ากันของตัวอักษร ซึ่งแตกต่างกันไปเพื่อทาให้เกิด
ความสับสนซับซ้อนขึ้นในข้อความ
การเข้ารหัสลับโดยการเรียงลาดับตัวอักษรใหม่
(Transposition / Permutation)
32
การสลับคอลัมน์ (Columnar Transpositions)
ตัวอย่างข้อความที่นามาเข้ารหัส ระบบการสลับแบบห้าคอลัมภ์
(Five-Column Transpositions)
THIS IS A MESSAGE FOR YOU
T H I S I
S A M E S
S A G E F
O R Y O U
ผลลัพธ์ที่ได้จากการเข้ารหัสด้วย Five-Column Transpositions
TSSO HAAR IMGY SEEO ISFU
การเข้ารหัสลับโดยการเรียงลาดับตัวอักษรใหม่
(Transposition / Permutation)
33
การเข้ารหัสข้อมูลแบบทีละตัว (Stream Cipher)
การเข้ารหัสข้อมูลแบบเป็นกลุ่ม (Group Cipher)
การเข้ารหัสแบบตัวอักษรและแบบกลุ่ม
34
การเข้ารหัสข้อมูลแบบทีละตัว (Stream Cipher)
การเข ้ารหัสแบบนี้เป็นการเปลี่ยนตัวอักษรของข ้อความไป
เป็นสัญลักษณ์ Cipher ทีละตัว เช่น การเข ้ารหัสแบบ
Caesar, Keyword, Rearrangement
การเข ้ารหัสแบบนี้จะทาการเข ้ารหัสของข ้อความทีละตัว
การเข้ารหัสแบบตัวอักษรและแบบกลุ่ม
35
ข้อดีของการเข้ารหัสทีละตัว (Stream Cipher)
 ความเร็ว (Speed of Transformation) เนื่องจากการเข ้ารหัส
แบบนี้ทาทีละตัวโดยที่ขั้นตอนในการเข ้ารหัสนั้นไม่ต ้องรอ
หรือเกี่ยวข ้องกับตัวอักษรอื่น ๆ ในข ้อความดังนั้นการเข ้ารหัส
แบบนั้นจึงรวดเร็วเมื่อเปรียบเทียบกับวิธีการอื่น
 ความผิดพลาดต่า (Low Error Propagation) การเข ้ารหัส
แบบนี้จะให ้ความผิดพลาดต่าเมื่อเปรียบเทียบกับวิธีอื่น ๆ
เนื่องจากความผิดพลาดที่เกิดขึ้นกับตัวอักษรตัวใดตัวหนึ่งใน
ระหว่างการทาการเข ้ารหัสนั้นจะไม่มีผลต่อกระบวนการ
เข ้ารหัสของตัวอักษรอื่น ๆ เลย
36
ข้อเสียของการเข้ารหัสทีละตัว (Stream Cipher)
 มีความสามารถต่าในการกระจายความซ้ากันของตัวอักษร
(Low-Diffusion) เนื่องจากการเข ้ารหัสแบบนี้ทาทีละตัวโดย
ไม่คานึงถึงตัวอักษรอื่น ดังนั้นการกระจายความซ้ากันจึงไม่
อาจทาได ้และก่อให ้เกิดสิ่งที่เรียกว่า Pattern ของตัวอักษร
ขึ้นซึ่งจะทาให ้ง่ายต่อการวิเคราะห์ของนักเจาะรหัส
37
ข้อเสียของการเข้ารหัสทีละตัว (Stream Cipher)
 ง่ายต่อการดัดแปลงแก ้ไข (susceptibility to malicious
insertion and modifications) เพราะว่าการเข ้ารหัสแบบนั้นไม่
ต ้องอาศัยความถูกต ้องในการเข ้ารหัสของตัวอักษรอื่นๆ เลย
ดังนั้นความเป็นไปได ้ประการหนึ่งก็คือหากมีผู้เจาะรหัสที่สามารถ
ล ้วงความลับของข ้อมูลได ้แล ้วก็อาจทาการเปลี่ยนแปลงแก ้ไข
ข ้อมูลนั้นๆ หรือทาการใส่ข ้อความเพิ่มเติมเข ้าไปได ้โดยที่ผู้ทา
การถอดรหัสไม่อาจล่วงรู้ได ้ว่ามีการทุจริตกับข ้อความที่ได ้รับมา
เช่น การขโมยข ้อมูลที่เกี่ยวกับจานวนเงินในบัญชีธนาคารที่ถูก
ส่งผ่านระบบเครือข่าย แล ้วเอาไปปลอมแปลงจานวนเงินที่มีอยู่
พร ้อมทั้งโอนย ้ายจานวนเงินดังกล่าวไปสู่บัญชีของตน เป็นต ้น
38
การเข้ารหัสข้อมูลแบบเป็ นกลุ่ม
(Group Cipher or Block Cipher)
การเข้ารหัสข้อมูลแบบนี้จะทาเป็นกลุ่ม (Group) หรือเป็น Block ข้อมูล
แทนที่จะทาการเข้ารหัสทีละตัว เช่น การเข้ารหัสแบบ Transposition
การเข้ารหัสแบบนี้มีข้อดีหลายประการที่เหนือกว่าการเข้ารหัสแบบทีละตัว
การเข้ารหัสแบบตัวอักษรและแบบกลุ่ม
39
ข้อดีของการเข้ารหัสแบบ Group Cipher
 การกระจายความซ้ากันของตัวอักษร (Diffusion) การทา
การเข ้ารหัสแบบนี้จะทาให ้ตัวอักษรของข ้อความที่อ่านได ้
(Plain Text) แต่ละตัวนั้นถูกแทนค่าด ้วยตัวอักษรหลาย
ตัวในข ้อความที่เข ้ารหัสแล ้ว (Cipher Text) ดังนั้นการ
วิเคราะห์หาข ้อความเดิมจึงทาได ้ยากกว่า
40
ข้อดีของการเข้ารหัสแบบ Group Cipher
 สามารถต่อต ้านการดัดแปลงต่อเติมข ้อมูลได ้(Insertion
Resistant) เนื่องจากวิธีนี้ข ้อมูลจะถูกเข ้ารหัสทีละกลุ่ม
ดังนั้นการขโมยข ้อมูลนี้ไปต่อเติม จะไม่สามารถทาได ้
เนื่องจากว่าความยาวของข ้อมูลใน Block จะเปลี่ยนไป
ทาให ้ไม่สามารถทาการถอดรหัสได ้อย่างถูกต ้อง
41
ข้อเสียของการเข้ารหัสแบบ Group Cipher
 ใช ้เวลานาน (Slowness of Encryption) การเข ้ารหัสแบบนี้
ไม่สามารถที่จะทาได ้หากข ้อมูลที่จะทาการเข ้ารหัสไม่ครบ
หรือไม่เต็ม Block ดังนั้นก่อนที่จะทาการเข ้ารหัสจาเป็นต ้อง
รอข ้อมูลให ้เต็มเสียก่อน และการรอนี้จะทาให ้เกิดความล่าช ้า
ที่เรียกว่า Delay Time ด ้วยเหตุนี้จึงทาให ้การเข ้ารหัสแบบนี้
ช ้าเมื่อเทียบกับการเข ้ารหัสทีละตัว เพราะในการเข ้ารหัสทีละ
ตัวสามารถจะทาได ้เลยกับตัวอักษรแต่ละตัวที่มีอยู่
42
ข้อเสียของการเข้ารหัสแบบ Group Cipher
 มีความผิดพลาดต่อเนื่อง (Error Propagation) การเข ้ารหัส
แบบนี้ก่อให ้เกิดความผิดพลาดของตัวอักษรที่สามารถส่งต่อ
ความผิดพลาดไปยังตัวอักษรอื่นๆ ได ้ดังนั้นหากเกิดความ
ผิดพลาดตัวใดตัวหนึ่งขึ้นมาซึ่งอาจเกิดขึ้นได ้ในระหว่างการส่ง
ข ้อความ ก็อาจทาได ้ทั้ง Block ของข ้อมูลเกิดความผิดพลาด
ได ้ซึ่งหากเปรียบเทียบกับการเข ้ารหัสแบบทีละตัว หากเกิด
ความผิดพลาดขึ้นกับตัวอักษรตัวใดตัวหนึ่งก็จะไม่มีผลต่อเนื่อง
เกิดขึ้นกับตัวอักษรตัวอื่นๆ เลย
43
ลักษณะของการเข้ารหัสข้อมูลที่ดี (สาคัญทุกข้อ)
(Characteristics of Good Ciphers)
วิธีการเข ้ารหัสลับที่ดีต ้องมีลักษณะที่เรียกว่า
Confusion และ Diffusion
 ความสับสน (Confusion)
 ทาให้ผู้ที่จะถอดรหัสข้อมูลมีความสับสน
 ไม่สามารถคาดเดาได้
44
ลักษณะของการเข้ารหัสข้อมูลที่ดี (สาคัญทุกข้อ)
(Characteristics of Good Ciphers)
วิธีการเข ้ารหัสลับที่ดีต ้องมีลักษณะที่เรียกว่า
Confusion และ Diffusion
 การกระจาย (Diffusion)
 ต้องทาให้ข้อมูลจริงกระจัดกระจายทั้งเอกสาร
 ป้ องกันไม่ให้ผู้ที่ได้รับข้อมูลไปถอดรหัสได้
 และไม่สามารถคาดเดาได้ว่าข้อมูลที่ได้รับมานั้น
แทนความหมายของข้อมูลใด
 QUESTION
 Assignment แบบฝึกหัดท้ายบทที่ 4
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
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
Program สูตร 3
P = 15 = 3*15 = 45 / 26 = 19 (T)
R = 17 = 3*17 = 51 / 26 = 25 (Z)
O = 14 = 3*14 = 42 / 26 = 16 (Q)
G = 6 = 3*6 = 18 / 26 = 18 (S)
R = 17 = 3*17 = 51 / 26 = 25 (Z)
A = 0 = 3*0 = 0 / 26 = 0 (A)
M = 12 = 3*12 = 36 / 26 = 10 (K)
ผลลัพธ์ที่ได้คือ TZQSZAK

ความรู้พื้นฐานเกี่ยวกับการเข้ารหัสข้อมูล

  • 1.
    05-511-305 ความมั่นคงของระบบสารสนเทศ (Information System Security) CHAPTER4 ความรู้พื้นฐานเกี่ยวกับ การเข้ารหัสข้อมูล
  • 2.
  • 3.
  • 4.
    4 1. Plain Textหมายถึง ข้อความหรือข้อมูลต่างๆ ที่ ยังไม่ผ่านกรรมวิธีการเข้ารหัส ศัพท์ต่างๆ ที่เกี่ยวข้องกับการเข้าและถอดรหัส 2. Cipher Text หมายถึง ข้อความ หรือข้อมูลต่างๆที่ ผ่านการเข้ารหัสแล้ว และทาให้รูปแบบของข้อมูล เปลี่ยนแปลงไป 3. Algorithm หมายถึง แนวความคิดหรือลาดับความ คิดที่มีรูปแบบที่สามารถนาไปประมวลผลทางคอมพิวเตอร์ ได้โดยง่าย
  • 5.
    5 4. การเข้ารหัส (Encryption) หมายถึงกระบวนการหรือขั้นตอนในการเข้ารหัสข้อมูล ที่เปลี่ยนแปลงไปจากเดิม 5. การถอดรหัส (Decryption) หมายถึง กระบวนการหรือขั้นตอนในการถอดรหัสข้อมูล เพื่อให้ข้อมูลที่เข้ารหัสไว้คืนสู่สภาพเดิมก่อนเข้ารหัส 6. Cryptography หมายถึง ระบบการรักษาความปลอดภัย ที่ประกอบด้วย Encryption และ Decryption ศัพท์ต่างๆ ที่เกี่ยวข้องกับการเข้าและถอดรหัส 7. Cryptanalysis หมายถึง การพยายามวิเคราะห์เพื่อ ศึกษาประเด็นต่างๆ ที่เกี่ยวข้องกับ Cryptography
  • 6.
    กระบวนการในการเข้ารหัสและถอดรหัส สามารถแทนด้วยสัญลักษณ์ดังนี้ C = E(P) หมายความว่าข้อมูลดั้งเดิมเมื่อผ่านการเข้ารหัส ก็จะได้ข้อมูลที่เข้ารหัสแล้ว P = D(C) หมายความว่า ข้อมูลที่ผ่านการเข้ารหัส เมื่อนามาผ่านกระบวนการถอดรหัสก็จะได้ข้อมูลดั้งเดิม
  • 7.
    จุดประสงค์ของการเข้ารหัสและถอดรหัส จุดประสงค์หลักของการเข ้ารหัสและถอดรหัส คือ ผู้ที่ไม่ได้รับอนุญาตจะไม่สามารถเข ้าถึงข ้อมูลได ้ หรือ เข ้าถึงข ้อมูลได ้ยาก ให ้เพียงแค่บุคคลที่อนุญาตให ้เข ้าถึงข ้อมูลเข ้าถึง ข ้อมูลได ้เท่านั้น ผู้ที่ไม่ได ้รับอนุญาตอาจเข ้าถึงข ้อมูลได ้แต่ไม่ สามารถเข ้าใจความหมายของข ้อมูลนั้นนั้นได ้
  • 8.
    ประเภทของการเข้ารหัส เข ้ารหัส และถอดรหัส ข ้อมูลแล ้วส่งผ่านกันในระบบเน็กเวิร์ค นั้น มี 2 แบบ คือ  การเข ้ารหัสแบบสมมาตร (Symmetric key algorithms)  การเข ้ารหัสแบบอสมมาตร (Asymmetric key algorithms) การแบ่งประเภทขึ้นอยู่กับ กุญแจ กุญแจ ใช ้ร่วมกับ อัลกอริทึม ในการ เข ้ารหัส และ ถอดรหัส กุญแจในที่นี้ เปรียบเทียบได ้กับลูกกุญแจ ต ้องมีลูกกุญแจ เท่านั้นจึงจะเปิดแม่กุญแจอ่านข ้อมูลได ้
  • 9.
    การเข้ารหัสแบบสมมาตร การเข ้ารหัสแบบสมมาตร จะใช้กุญแจลับ ในการติดต่อกันระหว่าง 2 คน อันเดียวกัน ทั้งในการ เข ้ารหัส และ ถอดรหัส ก่อนที่จะส่งข ้อมูลที่ถูกเข ้ารหัสแล ้ว ผ่าน ระบบเน็กเวิร์ค ทั้ง 2 กลุ่ม ต ้องมี กุญแจ และ อัลกอริทึม ที่ตกลงร่วมกัน เพื่อใช ้ใน การ เข ้ารหัส และ ถอดรหัส
  • 10.
    ปัญหาของการเข้ารหัสแบบสมมาตร ปัญหาที่เกิดขึ้นในการใช ้กุญแจลับ คือการส่ง กุญแจ ให ้อีกกลุ่ม หนึ่ง แล ้วโดนดักลักลอบเอา กุญแจไปโดยผู้ไม่ประสงค์ดี ถ ้า นาย ก และ นาย ข ใช ้การส่งข ้อมูลโดยใช ้ กุญแจลับ และ นาย ค ดัก กุญแจลับระหว่างการ ส่งกุญแจ จะทาให ้นาย ค สามารถอ่าน ข ้อมูล ลับ ที่ส่งกันระหว่าง นาย ก กับ นาย ข ไม่เพียงแค่นั้น นาย ค อาจจะ สามารถสร ้าง ข ้อมูล หลอก นาย ก ว่าเป็น นาย ข ได ้ ถ ้าติดต่อกับหลายกลุ่ม ต ้องใช ้กุญแจจานวน มาก
  • 11.
    การเข้ารหัสแบบอสมมาตร (Asymmetric keyalgorithms)การเข ้ารหัสแบบอสมมาตร เป็นการแก ้ปัญหาโดยใช ้ หลักการของ กุญแจสาธารณะ และ กุญแจส่วนตัว โดยที่ กุญแจสาธารณะ นั้นเปิดเผย ในระบบเน็กเวิร์ดได ้ ส่วนกุญแจส่วนตัว นั้นเก็บไว ้เฉพาะบุคคลเท่านั้น การใช ้กุญแจสาธารณะ และ กุญแจส่วนตัว ในการ เข ้ารหัสนั้นเป็นแบบตรงข ้ามกัน คือมีกุญแจเป็นคู่ 2 อันคือ ใช ้กุญแจ อันหนึ่ง เข ้ารหัส ต ้องใช ้อีกกุญแจ เพื่อทาการ ถอดรหัส เท่านั้น การเข้ารหัสแบบอสมมาตร
  • 12.
    ตัวอย่าง นาย ข ต้องการส่ง ข ้อมูลลับ ให ้กับ นาย ก ในการเข ้ารหัส นาย ก มีคู่ของกุญแจ คือ กุญแจ สาธารณะ และ กุญแจส่วนตัว 1) นาย ก ได ้ส่ง กุญแจสาธารณะ ของ นาย ก ไปให ้ นาย ข และเก็บ กุญแจส่วนตัว ไว ้กับตัวเอง 2) เมื่อ นาย ข ได ้กุญแจสาธารณะ ของ นาย ก แล ้วจึง ทาการเข ้ารหัส ข ้อมูลด ้วย กุญแจสาธารณะ ของ นาย ก แล ้วทาการส่งข ้อมูลลับให ้นาย ก 3) เมื่อ นาย ก ได ้รับแล ้วจึงทาการถอดรหัส ด ้วย กุญแจ ส่วนตัว ของ นาย ก จะได ้ ข ้อมูล ที่ นาย ข ต ้องการ ส่งให ้นาย ก
  • 13.
    ตัวอย่างการเข้า/ถอดรหัส เพื่อรักษาความลับ 13 FE84F กุญแจ สาธารณะ ของนาย ข ซื้อ10 ชิ้น D125HG ซื้อ 10 ชิ้น D125HG นาย ก นาย ข 3AHEF กุญแจ ส่วนตัว ของ นาย ข นาย ก FE84F กุญแจ สาธารณะ ของนาย ข
  • 14.
    ความแตกต่างระหว่าง การเข้ารหัสทั้งสองแบบ การเข้ารหัสแบบสมมาตร ข ้อมูลทาการ เข ้ารหัส และ ถอดรหัส ได ้รวดเร็ว แต่ก่อนจะต ้องมีการตกลงกุญแจกันก่อน และ มี ปัญหาในการแลกเปลี่ยนกุญแจ ที่ไม่มีความปลอดภัย  การเข ้ารหัสแบบอสมมาตร การแลกเปลี่ยน กุญแจนั้นไม่มีปัญหา เพราะ กุญแจสาธารณะ ไม่เป็นความลับ แต่ อัลกอริทึม ในการ เข ้ารหัส และ ถอดรหัส นั้นเสียเวลามากทาให ้ช ้า  การเข ้ารหัสแบบสมมาตร ถ ้าต ้องการติดต่อกับ กลุ่มหลายกลุ่ม ต ้องใช ้กุญแจลับหลายกุญแจ แต่ แบบ อสมมาตรจะใช ้แค่ กุญแจสารธารณะ และ กุญแจส่วนตัวเท่านั้น  ระบบกุญแจสาธารณะต ้องใช ้เวลาในการคานวณการเข ้าและ ถอดรหัส เมื่อเทียบกับระบบกุญแจสมมาตร และอาจใช ้เวลาเป็น พันเท่าของเวลาที่ใช ้โดยระบบกุญแจสมมาตร สรุปการเข้ารหัสทั้ง 2 แบบ
  • 15.
    การเข ้ารหัสแบบอสมมาตร เพราะว่าใช้กุญแจที่ แตกต่างกันในการ เข ้ารหัส และ ถอดรหัส ข ้อมูล การเข ้ารหัสแบบอสมมาตรใช ้การคานวณที่ค่อนข ้าง ซับซ ้อนทาให ้เสียเวลาในการเข ้ารหัส และ ถอดรหัส ข ้อมูลมักเหมาะกับการเข ้ารหัสข ้อมูล ที่ค่อนข ้างเล็ก เช่น กุญแจลับ ไม่ค่อยนิยม เข ้ารหัส และ ถอดรหัส ตัว ข ้อมูลทั้งหมด เช่น Username / Password สรุปการเข้ารหัสทั้ง 2 แบบ
  • 16.
    จุดเริ่มต้นของการเข้ารหัส: การวิเคราะห์รหัสลับ(Cryptanalysis) Ex : Z+5= E A – 8= S Ex : A+4 = E Z –2 = X การแทนตัวอักษรจะจัดเรียง ในรูปของวงกลม การสร้างสูตรคานวณทางคณิตศาสตร์
  • 17.
     การเข้ารหัสโดยการแทนที่ตัวอักษร (Substitution) การเข ้ารหัสชนิดซีซาร์ (The Caesar Cipher)  การเข ้ารหัสโดยการกาหนดกุญแจคา (Keyword Cipher)  การเข ้ารหัสโดยการจัดเรียงลาดับตัวอักษร (Rearrangement)  การแทนที่ตัวอักษรด ้วยตัวอักษรมากกว่า 1 ตัว (Polyalphabetic Substitution) จุดเริ่มต้นของการเข้ารหัส: การวิเคราะห์รหัสลับ(Cryptanalysis)
  • 18.
     การเข้ารหัสลับโดยการเรียงลาดับตัวอักษรใหม่ (Transposition/Permutation)  การสลับคอลัมน์(Columnar Transpositions)  การสลับ 2 คอลัมน์ (Double Transposition Algorithm) จุดเริ่มต้นของการเข้ารหัส: การวิเคราะห์รหัสลับ(Cryptanalysis)
  • 19.
    การเข้ารหัสแบบซีซาร์ (Caesar Cipher) วิธีการเข ้ารหัสแบบนี้ได ้ชื่อตามชื่อของ จูเลียต ซีซาร์ นักรบที่มีชื่อเสียงของ จักรวรรดิโรมันในอดีต  ซีซาร์เป็นผู้นาวิธีการเข ้ารหัสแบบนี้มาใช ้เป็นคนแรกในการรบของเขาเพื่อ ป้องกันไม่ให ้ฝ่ ายตรงข ้ามรู้ข ้อมูลที่จาเป็นในสงครามของฝ่ ายตน การเข้ารหัสชนิดซีซาร์ (The Caesar Cipher) การเข้ารหัสโดยการแทนที่ตัวอักษร (Substitution)
  • 20.
    การเข้ารหัสแบบซีซาร์ (Caesar Cipher) วิธีการเข ้ารหัส (Algorithm) แบบนี้จะกาหนดหมายเลขกากับ ให ้กับตัวอักษร แต่ละตัว ไว ้เป็นมาตรฐานชุดหนึ่งไว ้ล่วงหน้า  เช่น กาหนดให ้อักษร A มีเลขกากับเป็นหนึ่ง เสร็จแล ้วเมื่อมี ชุดข ้อความที่ ต ้องการเข ้ารหัสก็นาตัวอักษรแต่ละตัวมาเปรียบ เทียบกับในตารางเลขกากับ หลังจากนั้นให ้เลื่อนไปทางขวาอีก 3 ตัว ก็จะได ้ผลลัพธ์เป็นข ้อความที่ผ่านการ เข ้ารหัสแล ้ว Algorithm นี้เขียนเป็นสูตรได ้ดังนี้ Ci= E(Pi)=Pi+3 การเข้ารหัสชนิดซีซาร์ (The Caesar Cipher) การเข้ารหัสโดยการแทนที่ตัวอักษร (Substitution)
  • 21.
    ตัวอักษรปกติ จะถูกแทนที่ด ้วยตัวอักษรที่อยู่ถัดไปอีก3 ตัว โดยตัวอักษรปกติเราจะเรียกว่า Plain ส่วนตัวอักษร ที่จะนามาแทนที่จะเรียกว่า Cipher Plain : 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 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 C Cipher : การเข้ารหัสโดยการแทนที่ตัวอักษร (Substitution) การเข้ารหัสชนิดซีซาร์ (The Caesar Cipher)
  • 22.
    การเข้ารหัสของ Caesar จะใช้การเทียบตัวอักษรปกติ(Plain) กับ Cipher ตัวอย่างเช่น ใช้สูตร 3 ในการเข้ารหัส Plaintext: THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG Ciphertext: WKH TXLFN EURZQ IRA MXPSV RYHU WKH ODCB GRJ Plain : 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 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 C Cipher : การเข้ารหัสโดยการแทนที่ตัวอักษร (Substitution) การเข้ารหัสชนิดซีซาร์ (The Caesar Cipher)
  • 23.
    และการถอดรหัสก็จะใช้การเทียบย้อนกลับระหว่าง Cipher กับPlain Ciphertext: WKH TXLFN EURZQ IRA MXPSV RYHU WKH ODCB GRJ Plaintext: THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG Cipher : 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 C 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 Plain : การเข้ารหัสโดยการแทนที่ตัวอักษร (Substitution) การเข้ารหัสชนิดซีซาร์ (The Caesar Cipher)
  • 24.
    24 ซึ่งเราสามารถกาหนดใช ้Key อื่นๆได ้อีก ดังรูป เช่น + 1, + 2 , +3 Substitution : Caesar cipher
  • 25.
    25 ข ้อดีของการเข ้ารหัสแบบซีซาร์(Caesar) นี้ก็คือ ความ ง่ายในการเข ้ารหัส แต่ก็มีข ้อเสียคือการที่สามารถจะทา การวิเคราะห์หาข ้อความเดิมจาก Cipher Text ได ้ง่าย ซึ่งวิธีการเข ้ารหัสที่ดีนั้นจะต ้องหลีกเลี่ยงการถูก วิเคราะห์โดยง่ายนี้ให ้ได ้ วิธีการที่นามาวิเคราะห์ ดังกล่าวนี้ก็คือ การหาสิ่งซ้า ๆ กันจากวิธีการเข ้ารหัสที่ เราเรียกว่าการหา Pattern ของตัวอักษร ซึ่งหากทา การวิเคราะห์ให ้ดีจากตัวอักษรของ Cipher Text จานวนมากพอ ก็จะเห็นได ้ง่ายว่ามีการเลื่อนลาดับของ ตัวอักษร 3 ตัว ดังนั้นจึงไม่เป็นการยากนักที่ผู้ไม่ ประสงค์ดีจะทาการCryptanalysis ของวิธีการเข ้ารหัส แบบซีซาร์นี้ Substitution : Caesar cipher
  • 26.
    26 การเข้ารหัสโดยใช้กุญแจคา (Keyword cipher) Keywordcipher เป็นการเข ้ารหัสแบบซีเคร็ทคีย์ (Secret Key) หรือ Symmetric Key Cryptography ที่อาศัย พื้นฐานเดียวกันกับ Caesar หลักการของ Keyword cipher คือ จะใช ้Key ที่เป็นคามา เรียงต่อๆ กัน แล ้วเข ้ารหัสโดยสร ้าง Caesar Cipher จาก ตัวอักษรที่ปรากฏอยู่ใน Key การเข้ารหัสโดยการแทนที่ตัวอักษร (Substitution)
  • 27.
    27  ตัวอย่างเช่น Keyword คือLEMON การเข้ารหัสโดยใช้กุญแจคา P 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 C L E M 0 N A B C D F G H I J K P Q R S T U V W X Y Z
  • 28.
    28 การเข้ารหัสโดยใช้กุญแจคา ใช ้Keyword ที่เป็นคามาเรียงต่อๆกัน แล ้วเข ้ารหัสโดย สร ้าง Caesar Cipher จากตัวอักษรที่ปรากฏอยู่ใน Key ทา ให ้โครงสร ้างของ Cipher ที่ใช ้ในการเข ้ารหัสซับซ ้อนยิ่งขึ้น แต่ถ ้า Keyword ถูกขโมยไปใช ้ข ้อมูลก็จะถูกถอดรหัสได ้ ถึงไม่รู้ Keyword ก็ยังสามารถคาดเดา Keyword ได ้จาก การทดสอบตัวอักษรที่เรียงซ้าๆ กันควบคู่กับการพิจารณา ระยะห่าง
  • 29.
    เป็ นการเข้ารหัสโดยการจัดเรียงตัวอักษรใหม่ เช่นการนับตัวอักษรที่ 3,5,7 แล้วทาการจัดตัวอักษรตามนั้น โดยมีการใช้คณิตศาสตร์ ตัวอย่างเช่น หาค่า K โดยใช้สูตร 3 แทนค่า E(K)= (3*10) Mod 26 = 4 = E การเข้ารหัสโดยการจัดเรียงลาดับตัวอักษร (Rearrangement) การเข้ารหัสโดยการแทนที่ตัวอักษร (Substitution) 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 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
  • 30.
    30 • การสลับคอลัมน์ (ColumnarTranspositions) • การสลับ 2 คอลัมน์ (Double Transposition Algorithm) การเข้ารหัสลับโดยการเรียงลาดับตัวอักษรใหม่ (Transposition / Permutation)
  • 31.
    31 การสลับคอลัมน์ (Columnar Transpositions) การแทนค่าตัวอักษรด้วยวิธีนี้มีจุดประสงค์คือการกระจาย ความซ้ากันของตัวอักษรซึ่งแตกต่างกันไปเพื่อทาให้เกิด ความสับสนซับซ้อนขึ้นในข้อความ การเข้ารหัสลับโดยการเรียงลาดับตัวอักษรใหม่ (Transposition / Permutation)
  • 32.
    32 การสลับคอลัมน์ (Columnar Transpositions) ตัวอย่างข้อความที่นามาเข้ารหัสระบบการสลับแบบห้าคอลัมภ์ (Five-Column Transpositions) THIS IS A MESSAGE FOR YOU T H I S I S A M E S S A G E F O R Y O U ผลลัพธ์ที่ได้จากการเข้ารหัสด้วย Five-Column Transpositions TSSO HAAR IMGY SEEO ISFU การเข้ารหัสลับโดยการเรียงลาดับตัวอักษรใหม่ (Transposition / Permutation)
  • 33.
  • 34.
    34 การเข้ารหัสข้อมูลแบบทีละตัว (Stream Cipher) การเข้ารหัสแบบนี้เป็นการเปลี่ยนตัวอักษรของข ้อความไป เป็นสัญลักษณ์ Cipher ทีละตัว เช่น การเข ้ารหัสแบบ Caesar, Keyword, Rearrangement การเข ้ารหัสแบบนี้จะทาการเข ้ารหัสของข ้อความทีละตัว การเข้ารหัสแบบตัวอักษรและแบบกลุ่ม
  • 35.
    35 ข้อดีของการเข้ารหัสทีละตัว (Stream Cipher) ความเร็ว (Speed of Transformation) เนื่องจากการเข ้ารหัส แบบนี้ทาทีละตัวโดยที่ขั้นตอนในการเข ้ารหัสนั้นไม่ต ้องรอ หรือเกี่ยวข ้องกับตัวอักษรอื่น ๆ ในข ้อความดังนั้นการเข ้ารหัส แบบนั้นจึงรวดเร็วเมื่อเปรียบเทียบกับวิธีการอื่น  ความผิดพลาดต่า (Low Error Propagation) การเข ้ารหัส แบบนี้จะให ้ความผิดพลาดต่าเมื่อเปรียบเทียบกับวิธีอื่น ๆ เนื่องจากความผิดพลาดที่เกิดขึ้นกับตัวอักษรตัวใดตัวหนึ่งใน ระหว่างการทาการเข ้ารหัสนั้นจะไม่มีผลต่อกระบวนการ เข ้ารหัสของตัวอักษรอื่น ๆ เลย
  • 36.
    36 ข้อเสียของการเข้ารหัสทีละตัว (Stream Cipher) มีความสามารถต่าในการกระจายความซ้ากันของตัวอักษร (Low-Diffusion) เนื่องจากการเข ้ารหัสแบบนี้ทาทีละตัวโดย ไม่คานึงถึงตัวอักษรอื่น ดังนั้นการกระจายความซ้ากันจึงไม่ อาจทาได ้และก่อให ้เกิดสิ่งที่เรียกว่า Pattern ของตัวอักษร ขึ้นซึ่งจะทาให ้ง่ายต่อการวิเคราะห์ของนักเจาะรหัส
  • 37.
    37 ข้อเสียของการเข้ารหัสทีละตัว (Stream Cipher) ง่ายต่อการดัดแปลงแก ้ไข (susceptibility to malicious insertion and modifications) เพราะว่าการเข ้ารหัสแบบนั้นไม่ ต ้องอาศัยความถูกต ้องในการเข ้ารหัสของตัวอักษรอื่นๆ เลย ดังนั้นความเป็นไปได ้ประการหนึ่งก็คือหากมีผู้เจาะรหัสที่สามารถ ล ้วงความลับของข ้อมูลได ้แล ้วก็อาจทาการเปลี่ยนแปลงแก ้ไข ข ้อมูลนั้นๆ หรือทาการใส่ข ้อความเพิ่มเติมเข ้าไปได ้โดยที่ผู้ทา การถอดรหัสไม่อาจล่วงรู้ได ้ว่ามีการทุจริตกับข ้อความที่ได ้รับมา เช่น การขโมยข ้อมูลที่เกี่ยวกับจานวนเงินในบัญชีธนาคารที่ถูก ส่งผ่านระบบเครือข่าย แล ้วเอาไปปลอมแปลงจานวนเงินที่มีอยู่ พร ้อมทั้งโอนย ้ายจานวนเงินดังกล่าวไปสู่บัญชีของตน เป็นต ้น
  • 38.
    38 การเข้ารหัสข้อมูลแบบเป็ นกลุ่ม (Group Cipheror Block Cipher) การเข้ารหัสข้อมูลแบบนี้จะทาเป็นกลุ่ม (Group) หรือเป็น Block ข้อมูล แทนที่จะทาการเข้ารหัสทีละตัว เช่น การเข้ารหัสแบบ Transposition การเข้ารหัสแบบนี้มีข้อดีหลายประการที่เหนือกว่าการเข้ารหัสแบบทีละตัว การเข้ารหัสแบบตัวอักษรและแบบกลุ่ม
  • 39.
    39 ข้อดีของการเข้ารหัสแบบ Group Cipher การกระจายความซ้ากันของตัวอักษร (Diffusion) การทา การเข ้ารหัสแบบนี้จะทาให ้ตัวอักษรของข ้อความที่อ่านได ้ (Plain Text) แต่ละตัวนั้นถูกแทนค่าด ้วยตัวอักษรหลาย ตัวในข ้อความที่เข ้ารหัสแล ้ว (Cipher Text) ดังนั้นการ วิเคราะห์หาข ้อความเดิมจึงทาได ้ยากกว่า
  • 40.
    40 ข้อดีของการเข้ารหัสแบบ Group Cipher สามารถต่อต ้านการดัดแปลงต่อเติมข ้อมูลได ้(Insertion Resistant) เนื่องจากวิธีนี้ข ้อมูลจะถูกเข ้ารหัสทีละกลุ่ม ดังนั้นการขโมยข ้อมูลนี้ไปต่อเติม จะไม่สามารถทาได ้ เนื่องจากว่าความยาวของข ้อมูลใน Block จะเปลี่ยนไป ทาให ้ไม่สามารถทาการถอดรหัสได ้อย่างถูกต ้อง
  • 41.
    41 ข้อเสียของการเข้ารหัสแบบ Group Cipher ใช ้เวลานาน (Slowness of Encryption) การเข ้ารหัสแบบนี้ ไม่สามารถที่จะทาได ้หากข ้อมูลที่จะทาการเข ้ารหัสไม่ครบ หรือไม่เต็ม Block ดังนั้นก่อนที่จะทาการเข ้ารหัสจาเป็นต ้อง รอข ้อมูลให ้เต็มเสียก่อน และการรอนี้จะทาให ้เกิดความล่าช ้า ที่เรียกว่า Delay Time ด ้วยเหตุนี้จึงทาให ้การเข ้ารหัสแบบนี้ ช ้าเมื่อเทียบกับการเข ้ารหัสทีละตัว เพราะในการเข ้ารหัสทีละ ตัวสามารถจะทาได ้เลยกับตัวอักษรแต่ละตัวที่มีอยู่
  • 42.
    42 ข้อเสียของการเข้ารหัสแบบ Group Cipher มีความผิดพลาดต่อเนื่อง (Error Propagation) การเข ้ารหัส แบบนี้ก่อให ้เกิดความผิดพลาดของตัวอักษรที่สามารถส่งต่อ ความผิดพลาดไปยังตัวอักษรอื่นๆ ได ้ดังนั้นหากเกิดความ ผิดพลาดตัวใดตัวหนึ่งขึ้นมาซึ่งอาจเกิดขึ้นได ้ในระหว่างการส่ง ข ้อความ ก็อาจทาได ้ทั้ง Block ของข ้อมูลเกิดความผิดพลาด ได ้ซึ่งหากเปรียบเทียบกับการเข ้ารหัสแบบทีละตัว หากเกิด ความผิดพลาดขึ้นกับตัวอักษรตัวใดตัวหนึ่งก็จะไม่มีผลต่อเนื่อง เกิดขึ้นกับตัวอักษรตัวอื่นๆ เลย
  • 43.
    43 ลักษณะของการเข้ารหัสข้อมูลที่ดี (สาคัญทุกข้อ) (Characteristics ofGood Ciphers) วิธีการเข ้ารหัสลับที่ดีต ้องมีลักษณะที่เรียกว่า Confusion และ Diffusion  ความสับสน (Confusion)  ทาให้ผู้ที่จะถอดรหัสข้อมูลมีความสับสน  ไม่สามารถคาดเดาได้
  • 44.
    44 ลักษณะของการเข้ารหัสข้อมูลที่ดี (สาคัญทุกข้อ) (Characteristics ofGood Ciphers) วิธีการเข ้ารหัสลับที่ดีต ้องมีลักษณะที่เรียกว่า Confusion และ Diffusion  การกระจาย (Diffusion)  ต้องทาให้ข้อมูลจริงกระจัดกระจายทั้งเอกสาร  ป้ องกันไม่ให้ผู้ที่ได้รับข้อมูลไปถอดรหัสได้  และไม่สามารถคาดเดาได้ว่าข้อมูลที่ได้รับมานั้น แทนความหมายของข้อมูลใด
  • 45.
     QUESTION  Assignmentแบบฝึกหัดท้ายบทที่ 4
  • 46.
    A B CD E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 Program สูตร 3 P = 15 = 3*15 = 45 / 26 = 19 (T) R = 17 = 3*17 = 51 / 26 = 25 (Z) O = 14 = 3*14 = 42 / 26 = 16 (Q) G = 6 = 3*6 = 18 / 26 = 18 (S) R = 17 = 3*17 = 51 / 26 = 25 (Z) A = 0 = 3*0 = 0 / 26 = 0 (A) M = 12 = 3*12 = 36 / 26 = 10 (K) ผลลัพธ์ที่ได้คือ TZQSZAK