Block Cipher Principles

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
ตารางค่าความจริง คือ อะไร
Advertisements

การทดลองที่ 5 วงจรนับ (Counter)
อัลกอริทึม ITS101 2/2011.
พีชคณิตบูลีน Boolean Algebra.
การประยุกต์ Logic Gates ภาค 2
Speed Increasing of Blum Blum Shub Generator
การแบ่งปันความลับเหนืออาร์เอสเอ (Secret Sharing over RSA)
Blum Blum Shub Generator การเพิ่มอัตราเร็วของแหล่งกำเนิดบลัม บลัม ชับ
COE การแบ่งปันความลับเหนืออาร์เอ็สเอ ระยะที่ 2 (Secret Sharing over RSA : Phase 2) อาจารย์ที่ปรึกษา ผศ. พิเชษฐ เชี่ยวธนะกุล อาจารย์ผู้ร่วมประเมิน.
Probabilistic Asymmetric Cryptosystem
โดย นางสาววรรณวนัช โอภาสพันธ์สิน รหัส นางสาวก้องกิดากร วรสาร รหัส
Private Key Crypto หรือ Single-key algorithm หรือ one-key algorithm
การแบ่งปันความลับเหนืออาร์เอ็สเอ (Secret Sharing over RSA)
A Known-Plaintext Attack of the LFSR Stream Cipher
Blum Blum Shub Generator การเพิ่มอัตราเร็วของแหล่งกำเนิดบลัม บลัม ชับ
การเขียนผังงาน.
เกตทางตรรกและพีชคณิตแบบบูล
วงจรดิจิตอล Digital Circuits Wadchara.
การแทนค่าข้อมูล และ Primary Storage (Memory)
CS Assembly Language Programming
Department of Informatics, Phuket Rajabhat University. THAILAND
Network Security.
NUMBER SYSTEM เลขฐานสิบ (Decimal Number) เลขฐานสอง (Binary Number)
( Code Division Multiple Access)
EEE 271 Digital Techniques
Digital Logic and Circuit Design
Number Representations
Arithmetic circuits Binary addition Binary Subtraction
PDCA คืออะไร P D C A.
Electronic SECurity with PKI
Introduction to Digital System
บทที่ 3 ตัวดำเนินการ และ นิพจน์
การทำให้ตัวอักษรบาง.
ASSIGN3-4. InstructionResult Z-FlagC-FlagP-FlagS-FlagO-Flag MOV AL,9Eh 9Eh H ????? ADDAL,9Eh 3C ADD AL,1Eh 5A
Waterfall model แบบจำลองน้ำตก
Computer Coding & Number Systems
Debug #2 โครงสร้างคอมพิวเตอร์ และภาษาแอสเซมบลี้
ระบบเลขฐาน (Radix Number)
รูปแบบคาโนนิคัล หรือรูปแบบบัญญัติ หรือรูปแบบมาตรฐาน canonical forms
แผนผังคาร์โนห์ Kanaugh Map
ความปลอดภัยของฐานข้อมูล
โครงสร้างการจัดเก็บข้อมูลเชิงกายภาพ
ความรู้เบื้องต้นเกี่ยวกับระบบฐานข้อมูล
ERROR (Data Link Layer)
ตอนที่ 4 ความรู้พื้นฐานทางดิจิตอล
การเข้ารหัสข้อมูลและการถอดรหัสข้อมูล
การแปลงเลขฐานใดๆเป็นฐานใดๆ
ค21201 คณิตศาสตร์เพิ่มเติม 1
คริพโตกราฟี (Cryptography)
1. สีสันหรือฮิว(HUE) หมายถึง สีที่ตาเรามองเห็น
Flow Chart INT1103 Computer Programming
พีชคณิตบูลีน และการออกแบบวงจรลอจิก (Boolean Algebra and Design of Logic Circuit)
Cryptography.
CS Assembly Language Programming
ระบบคอมพิวเตอร์และการประมวลผล
การเข้ารหัสและการถอดรหัส
ระบบเลขในคอมพิวเตอร์
Introduction to Computer Organization and Architecture Introduction to Computer Organization and Architecture Episode 3 Numbers Representation.
Access 2003 คืออะไร Access 2003 เป็นโปรแกรมที่ใช้ในการ จัดการกับฐานข้อมูล ซึ่งจะช่วยให้เรา จัดการกับข้อมูลปริมาณมากๆ ได้ ง่ายดาย เช่นการจัดเก็บข้อมูล,
Introduction to Digital System
ระบบเลขจำนวน ( Number System )
File แก้ไข ในบทเรียน E-Commerce ที่เกี่ยวข้องกฏหมาย
Magnetic Tape แบ่งออกเป็น 2 ประเภท
การเขียนผังงาน ผังงาน (Flowchart)
Chapter 2 Symmetric Encryption and Message Confidentiality
Cryptography & Steganography
Cryptography & Steganography
อาจารย์อภิพงศ์ ปิงยศ บทที่ 4 : Cryptography & Steganography Part1 สธ412 ความมั่นคงของระบบสารสนเทศ อาจารย์อภิพงศ์ ปิงยศ
มิติทางสังคมและจริยธรรมสำหรับนักเทคโนโลยีสารสนเทศ
การเข้าและการถอดรหัส
ใบสำเนางานนำเสนอ:

Block Cipher Principles boonrit@feu.ac.th

Stream Ciphers and Block Ciphers A symmetric encryption algorithm in which ciphertext output is produced bit-by-bit or byte-by- byte from a stream of plaintext input. block cipher A symmetric encryption algorithm in which a block of plaintext bits (typically 64 or 128) is transformed as a whole into a ciphertext block of the same length.

Stream cipher เป็นวิธีการเข้ารหัสที่ละตัว Key This is a Message Encryption EWRKLIH……..

Stream cipher ข้อดีของ stream cipher ข้อเสียของ stream cipher ความเร็วในการเข้ารหัสและถอดรหัส ความผิดพลาดต่ำ ข้อเสียของ stream cipher เกิดการซ้ำกันของตัวอักษร ง่ายต่อการวิเคราะห์ ง่ายต่อการเปลี่ยนแปลงแก้ไขข้อมูล เช่นจำนวนเงิน

Block cipher เป็นการเข้ารหัสแบบกลุ่ม Key This is a Message Encryption EWRKLIH…….. This is a Me sage

Block cipher ข้อดีของ Block cipher ข้อเสียของ Block cipher การกระจายความซ้ำกันของตัวอักษร ต่อต้านการดัดแปลงต่อเติมข้อมูลใด้ ข้อเสียของ Block cipher ใช้เวลาในการเข้ารหัสนานกว่า มีการเกิดความผิดพลาดต่อเนื่อง

Characteristics of good Cipher ความปลอดภัยของการเข้ารหัสแปรผันตรงกับความยากของการ เข้ารหัส ไม่ควรมีข้อจำกัดของการเลือกใช้กุญแจเข้ารหัส กระบวนการนำวิธีการเข้ารหัสไปใช้ต้องสะดวกและง่าย ความผิดพลาดที่จุดใดจุดหนึ่งต้องไม่ขยายไปสู่ส่วนอื่นๆ Cipher text ต้องมีขนาดไม่ใหญ่กว่า Plaintext

Secret key Encryption การเข้ารหัสที่ใช้กุญแจเข้ารหัสและกุญแจถอดรหัสตัวเดียวกัน KeyA KeyB Ciphertext Plaintext Plaintext Encryption Decryption KeyA=KeyB

Secret key Encryption DES(Data Encryption Standard) เข้ารหัสแบบ Block Cipher พัฒนาโดย US Federa Standard Key size >58 Bit ความเร็วในการเข้าและถอดรหัส

Secret key Encryption Triple DES AES(Advanced Encryption Standard) Keyขนาดมากกว่า DES AES(Advanced Encryption Standard) มีความปลอดภัยในการเข้าและถอดรหัสมากกว่า DES

Secret key Encryption ข้อดีของ Secret key ข้อเสียของ Secret key การเข้ารหัสและถอดรหัสทำได้เร็ว วิธีการพัฒนาการเข้ารหัสและถอดรหัสทำให้ง่าย ข้อเสียของ Secret key การกระจายกุญแจทำได้ยาก มีโอกาสที่จะถูกขโมยกุญแจในการขั้นตอนการส่งกุญแจ

Public key Encryption การเข้ารหัสที่ใช้กุญแจเข้ารหัสและกุญแจถอดรหัสคนละตัวเดียวกัน KeyA KeyB Ciphertext Plaintext Plaintext Encryption Decryption KeyA<>KeyB

Public key Encryption RSA พัฒนาโดย Rivest,Shamir,Adleman Key>1028 Bit กุญแจเข้ารหัสและถอดรหัสคนละตัว

Public key Encryption ข้อดีของ Public key ข้อเสียของ Public key การกระจายกุญแจทำได้ง่าย การขโมยกุญแจในการขั้นตอนการส่งกุญแจไม่มีผลต่อการถอดรหัส ข้อเสียของ Public key การเข้ารหัสและถอดรหัสทำได้ช้า ไม่เหมาะในการเข้ารหัสที่มีข้อมูลที่มีขนาดใหญ่

DES(Data Encryption Standard)

DES เบื้องต้น 10 bit key P10 8 bit plaintext 8 bit plaintext Shift IP-1 IP P8 fk fK Shift SW SW P8 fK fk IP IP-1 8 bit ciphertext 8 bit ciphertext

DES เบื้องต้น S-DES Key Generation ประกอบด้วย P10 Shift P8

DES เบื้องต้น P10(Permutation) ทำหน้าที่ สลับและเปลี่ยนตำแหน่งบิท P10(k1,k2,k3,k4,k5,k6,k7,k8,k9,k10)=(k3,k5,k2,k7,k4,k10,k1,k9,k8,k6) P10 3 5 2 7 4 10 1 9 8 6 P10 1101101001 0111111000

DES เบื้องต้น Shift ทำการเลื่อนบิทไปทางซ้าย 5 bit 5 bit LeftShift 1 10000 01100 00001 11000

DES เบื้องต้น P8(Permutation) ทำหน้าที่ สลับและเปลี่ยนตำแหน่งบิทและลดขนาดของ บิท ลงเหลือ 8 บิท P8 6 3 7 4 8 5 10 9 00100 00011 P8 01000011

The Function fK fK(L,R)=(LF(R,SK),R)

E/P(Expansion/permutation) ทำหน้าที่ ขยายบิทและสลับตำแหน่งบิทใหม่ 4 1 2 3 2 3 4 1 1001 E/P 11000011

S-box ลดขนาดบิท x x x x P0 P1 P2 P3 0111 P0=0,P1=1,P2=1,P3=1

S-box P0,3 P0,3 0 1 2 3 0 1 0 3 2 1 3 2 1 0 2 0 2 1 3 3 3 1 3 2 0 1 2 3 0 0 1 2 3 1 2 0 1 3 2 3 0 1 0 3 2 1 0 3 P1,2 P1,2 S0= S1= S0 0100 11

ทำหน้าที่ สลับและเปลี่ยนตำแหน่งบิท P4(Permutation) ทำหน้าที่ สลับและเปลี่ยนตำแหน่งบิท P4 2 4 3 1 1001 P4 0101

ทำหน้าที่สลับ 4Bit บน กับ 4 Bit ล่าง The switch Function ทำหน้าที่สลับ 4Bit บน กับ 4 Bit ล่าง switch 01101001 10010110

IP(Initial Permutation) เป็นการเอาข้อมูลมาสลับบิทก่อน IP(x) IP 2 6 3 1 4 8 5 7 00110011 IP 00101101

IP-1 (Inverse Permutation) สลับบิทข้อมูลกลับ IP-1(IP(X))=X IP-1 4 1 3 5 7 2 8 6 00101101 IP-1 01100110

General n-bit-n-bit Block Substitution (shown with n = 4) Plaintext Ciphertext 0000 1110 0001 0100 0010 1101 0011 0001 0100 0010 0101 1111 0110 1011 0111 1000 1000 0011 1001 1010 1010 0110 1011 1100 1100 0101 1101 1001 1110 0000 1111 0111

The Data Encryption Standard DES Encryption

DES Encryption

Single Round of DES Algorithm

Permutation Tables for DES

Calculation of F(R, K)

S โดยการสลับ และแปลงข้อมูล 6 บิทเหลือ 4 บิท Bit 1,6 เลือก Row 1 2 3 4 5 6 S Bit 1,6 เลือก Row Bit 2,3,4,5 เลือก Column

ข้อมูล 110010 เข้า S1 10 = Row 2 1001=Column 9 เปิดตาราง S1 110010 S1 1100 (12)

แปลง key 64 Bit เป็นขนาด 56 Bit

แปลง key 56 Bit เป็นขนาด 48 Bit

brute-force attack ค้นหา key