Chapter 2 Symmetric Encryption and Message Confidentiality

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
จำนวน สถานะ NUMBER OF STATES. ประเด็นที่ สนใจ The number of distinct states the finite state machine needs in order to recognize a language is related.
Advertisements

Rendering and 3D models การประมวลผลภาพแบบดิจิตอล Ian Thomas
Stack.
: Chapter 1: Introduction 1 Montri Karnjanadecha ac.th/~montri Image Processing.
Network Security.
Mind map (From Wikipedia, the free encyclopedia)
Electronic SECurity with PKI
Asst.Prof. Dr.Surasak Mungsing
Merchant Marine Training Centre วิชาการเป็นเลิศ เชิดชู คุณธรรม ผู้นำ.
Algorithm Efficiency There are often many approaches (algorithms) to solve a problem. How do we choose between them? At the heart of computer program.
โครงสร้างควบคุมการทำงาน
การเข้ารหัสข้อมูลและการถอดรหัสข้อมูล
Block Cipher Principles
List ADTs By Pantharee S..
การสร้าง WebPage ด้วย Java Script Wachirawut Thamviset.
Chapter 3 Simple Supervised learning
Computer Security. Computer Security กระบวนการตรวจสอบ กำหนด และป้องกันการเข้าถึง คอมพิวเตอร์โดย ไม่ได้รับอนุญาติ - software - file system - network ระบบปฏิบัติการควรจะป้องกัน.
Programming & Algorithm
Establishing a Culture of Achievement: Multiliteracies in the ELT Classroom Session #2: 27 July 2012.
ANSI/ASQ Z1.4 Acceptance Sampling Plans
ภาษาอังกฤษ อ่าน-เขียน 2
OSI 7 LAYER.
ครูรุจิรา ทับศรีนวล “Room service”. “Room service”
ภาษาอังกฤษ ชั้นมัธยมศึกษาปึที่ 4 Grammar & Reading ครูรุจิรา ทับศรีนวล.
TEST FOR 3RD GRADERS IN THAILAND: COMPARATIVE STUDY Pimlak Moonpo Valaya Alongkorn Rajabhat University under the Patronage Assoc. Prof. Dr. Maitree Inprasitha.
Timed Math Quiz. โปรแกรมสุ่มคำนวณเลขแข่งกับ เวลา.
Multimedia Systems รศ. ดร. บุญวัฒน์ อัตชู
CHAPTER 18 BJT-TRANSISTORS.
Concept and Terminology Guided media (wired) Twisted pair Coaxial cable Optical fiber Unguided media (wireless) Air Seawater Vacuum Direct link Point.
Page : Stability and Statdy-State Error Chapter 3 Design of Discrete-Time control systems Stability and Steady-State Error.
D 2 E 1 S E M N G ม. I G I T Grammar A L 4.0.
การทดสอบซอฟต์แวร์ Software Testing
Cryptography & Steganography
Cryptography & Steganography
Chapter 3 Public-Key Cryptography and Message Authentication
พื้นฐานการเขียนแบบทางวิศวกรรม
Data Structure & Algorithm Concept
1. นี่เป็นสิ่งที่พระเยซูทรงทำ พระองค์ทรงรักษาทุกคน ที่เจ็บป่วยให้หายดี
Control Charts for Count of Non-conformities
Information System Development
Wave Characteristics.
Air Carbon Arc Cutting/Gouging
Generic View of Process
Dr.Surasak Mungsing CSE 221/ICT221 การวิเคราะห์และออกแบบขั้นตอนวิธี Lecture 13: การคำนวณได้และการตัดสินใจของปัญหา ที่ยากต่อการแก้ไข.
การออกแบบระบบ System Design.
ระเบียบวิธีวิจัยพื้นฐานทางการเงิน
บทที่ 1 ความรู้เบื้องต้น เกี่ยวกับระบบสารสนเทศ
Dr.Surasak Mungsing CSE 221/ICT221 การวิเคราะห์และออกแบบขั้นตอนวิธี Lecture 04: การวิเคราะห์หาความซับซ้อนด้านเวลา ในรูป.
Multimedia Production
Review of the Literature)
Development Strategies
มิติทางสังคมและจริยธรรมสำหรับนักเทคโนโลยีสารสนเทศ
Lecture no. 1: Introduction to Computer and Programming
(การสุ่มตัวอย่างเพื่อการยอมรับ)
อัตถิภาวนิยม existentialism J.K. Stevens, instructor
ระเบียบวิธีวิจัยพื้นฐานทาง การตลาด
ที่มาและหน่วยงานกาชาดต่างๆ
การเข้าและการถอดรหัส
Dr.Surasak Mungsing CSE 221/ICT221 การวิเคราะห์และออกแบบขั้นตอนวิธี Lecture 05: การวิเคราะห์ความซับซ้อนของ ขั้นตอนวิธีการเรียงลำดับข้อมูล.
Injection.
ตอนที่ 4: เคลื่อนไปกับของประทานของท่าน Part 4: Flowing In Your Gift
Training for SPSS BY Assist. Prof. Benchamat Laksaniyanon, Phd
การวิเคราะห์และออกแบบขั้นตอนวิธี
Inventory Control Models
4.7. B-Trees โครงสร้าง tree ที่กล่าวถึงมาแล้วนั้น อยู่บนสมมติฐานที่ว่าโครงสร้างทั้งหมดสามารถจัดเก็บอยู่ในหน่วยความจำของเครื่องคอมพิวเตอร์ได้ ถ้า จำนวนข้อมูลมีปริมาณมากเกินกว่าที่จะเก็บไว้ใน.
โครงการสัมมนาเชิงปฏิบัติการบูรณาการภาครัฐและเอกชนในการจัดยุทธศาสตร์เศรษฐกิจภาคตะวันออก This template can be used as a starter file to give updates for.
ระเบียบวิธีวิจัยพื้นฐานทางธุรกิจ
กลยุทธ์การทดสอบซอฟต์แวร์ วิศวกรรมซอฟต์แวร์ (Software Engineering)
การวิเคราะห์และออกแบบขั้นตอนวิธี
สารสนเทศศาสตร์เบื้องต้น
ใบสำเนางานนำเสนอ:

Chapter 2 Symmetric Encryption and Message Confidentiality Slides by H. Johnson & S. Malladi- Modified & Translated by Sukchatri P. ICT, University of Phayao, Thailand

Overview Conventional Encryption Principles Network Security Overview Conventional Encryption Principles Conventional Encryption Algorithms Cipher Block Modes of Operation Location of Encryption Devices Key Distribution

รูปแบบของการเข้ารหัสส่วนใหญ่เป็นแบบ : Network Security Encryption เครื่องมืออัตโนมัติที่สำคัญที่สุดสำหรับการรักษาความ ปลอดภัยเครือข่ายและการสื่อสารคือการเข้ารหัส รูปแบบของการเข้ารหัสส่วนใหญ่เป็นแบบ : conventional or symmetric encryption public-key or asymmetric encryption.

Conventional Encryption Principles Network Security Conventional Encryption Principles รูปแบบการเข้ารหัสมีด้วยกัน 5 ส่วนคือ Plain text Encryption algorithms Public and private keys Cipher text Decryption algorithm Private keys จะมีแหล่งกำเนิดที่เป็นเจ้าของ Public keys จะถูกใช้และเก็บอยู่ที่ส่วนกลาง การรักษาความปลอดภัยขึ้นอยู่กับความลับของ key ไม่ใช่ algorithm

Conventional or symmetric Encryption Network Security Conventional or symmetric Encryption Algorithm Components Plain Text- original data or input Encryption Algorithm- performs substitutions or transformations on the plaintext Public and Private Keys- also input determines the substitutions/transpositions Cipher Text- scrambled message or output Decryption Algorithm- encryption algorithm run backward, taking the cipher text and producing the plain text.

Conventional Encryption Principles Network Security Conventional Encryption Principles

Conventional or symmetric Encryption Network Security Conventional or symmetric Encryption More rigorous definition (ข้อกำหนดที่เข้มงวดเพิ่มเติม) Five components to the algorithm A Plaintext message space, M A family of enciphering transformations, EK:M  C, where KK A key space, K A ciphertext message space, C A family of deciphering transformations, DK: C  M, where KK

Conventional or symmetric Encryption Network Security Conventional or symmetric Encryption M EK DK C EK defined by an encrypting algorithm E DK defined by an decrypting algorithm D For given K, DK is the inverse of EK, i.e., DK(EK(M))=M for every plain text message M

Cryptography (การอ่านรหัส) Network Security Cryptography (การอ่านรหัส) Classified according to three independent dimensions: The type of operations used for transforming plaintext to ciphertext (ประเภทของการทำงานสำหรับใน การเปลี่ยน plaintext ไปเป็น ciphertext) The number of keys used (จำนวนของคีย์ที่ใช้) symmetric (single key or secret- key or private-key) asymmetric (two-keys, or public-key encryption) The way in which the plaintext is processed (วิธีการที่ plaintext ถูกประมวลผล)

Network Security Cryptanalysis Process of attempting to discover the plaintext or key (ขั้นตอนความพยายามที่จะค้นพบ plaintext or key) รูปแบบการเข้ารหัสเป็น computationally Secure ซึ่งให้ ciphertext ตรงตามเกณฑ์อย่างใดอย่างหนึ่ง cost of breaking the cipher exceeds the value of the information (มีค่าใช้จ่ายในการเปิดเผยรหัสสูงกว่าค่าของข้อมูล) time requires to break the cipher exceeds the useful lifetime of the information (ต้องใช้เวลาในการ เปิดเผย ciphertext เกินอายุการใช้งานของข้อมูล)

Network Security Cryptanalysis The process of attempting to discover the plaintext or key Alan Turing broke the Enigma Code in WWII

Network Security Cryptanalysis A brute force approach involves trying every possible key until the translation is obtained. (ใช้วิธีการ brute force ในการพยายามทุกคีย์ที่เป็นไปได้จนกว่าจะพบ) Some new low cost chips have made this approach more reasonable. (chips รุ่นใหม่ราคาถูกได้บรรจุ วิธีการนี้ไว้ด้วยแล้ว) Greatest security problem is maintaining the security of the key (ปัญหาด้านความปลอดภัยมากที่สุดคือการรักษา ความปลอดภัยของคีย์) See types of attacks in Stallings pp.31-32 summarized on next slide.

Network Security Types of Attacks

Computationally Secure Network Security Computationally Secure An encryption scheme is said to be computationally secure if: (รูปแบบการเข้ารหัสจะกล่าวจะได้ว่า มันเป็น computationally Secure ถ้า) The cost of breaking the cipher exceeds the value of the encrypted information or (ค่าใช้จ่ายของการทำลาย Cipher สูงกว่าค่าของการเข้ารหัสข้อมูลหรือ) The time required to break the cipher exceeds the useful lifetime of the information. (ระยะเวลาที่ ทำลาย cipher เกินกว่าอายุการใช้งานของข้อมูล)

Average time required for exhaustive key search Network Security Average time required for exhaustive key search 2.15 milliseconds 232 = 4.3 x 109 32 5.9 x 1030 years 2168 = 3.7 x 1050 168 5.4 x 1018 years 2128 = 3.4 x 1038 128 10 hours 256 = 7.2 x 1016 56 Time required at 106 Decryption/µs Number of Alternative Keys Key Size (bits)

Network Security Enigma The Enigma was a wooden box with a keyboard and a bank of lettered lights corresponding to the keys. To encrypt a message, a plaintext character was typed in, and after scrambling, the appropriate light was turned on to give the ciphertext character. See http://www.vectorsite.net/ttcodep.html#m9

Network Security Classical ciphers (is an algorithm for performing encryption or decryption) Substitution- “units” of plain text are replaced with cipher text (" units "ของ plain text จะถูกแทนที่ด้วย ciphertext) Polyalphabetic substitution- different for each character Transposition- “unit” of plaintext are rearranged, usually in complex order (" units "ของ plain text จะถูกจัดเรียงใหม่ โดยปกติแล้วจะอยู่ในรูปแบบที่ซับซ้อน) See (http://en.wikipedia.org/wiki/Cipher)

Caesar Cipher plain: abcdefghijklmnopqrstuvwxyz Network Security Caesar Cipher plain: abcdefghijklmnopqrstuvwxyz key: defghijklmnopqrstuvwxyzabc cipher: PHHW PH DIWHU WKH WRJD SDUWB plain: MEET ME AFTER THE TOGA PARTY

“Rail-Fence” Cipher DISGRUNTLED EMPLOYEE DRLEOIGUTE MLYESNDPE Network Security “Rail-Fence” Cipher DISGRUNTLED EMPLOYEE D R L E O I G U T E M L Y E S N D P E DRLEOIGUTE MLYESNDPE

Simple Cipher Examples Network Security Simple Cipher Examples Substitution ciphers - Caesar (การแทนที่) http://starbase.trincoll.edu/~crypto/historical/caesar.html Transposition ciphers – Rail Fence (การเปลี่ยนย้ายตำแหน่ง) http://starbase.trincoll.edu/~crypto/historical/railfence.ht ml Codes and Ciphers Primer http://www.vectorsite.net/ttcodep.html

Feistel Cipher Structure Network Security Feistel Cipher Structure Virtually all conventional block encryption algorithms, including DES have a structure first described by Horst Feistel of IBM in 1973 The realization of a Feistel Network depends on the choice of the following parameters and design features: (see next slide)

Feistel Cipher Structure Network Security Feistel Cipher Structure Block size: larger block sizes mean greater security (ขนาดของบล็อกที่ใหญ่หมายถึงการรักษาความปลอดภัยที่มากขึ้น) Key Size: larger key size means greater security Number of rounds: multiple rounds offer increasing security Subkey generation algorithm: greater complexity will lead to greater difficulty of cryptanalysis. (ความซับซ้อนมากขึ้นจะนำไปสู่ความยากลำบากมากขึ้น cryptanalysis) Fast software encryption/decryption: the speed of execution of the algorithm becomes a concern (ความเร็วของการทำงานของ algorithm จะกลายเป็นความกังวล)

Network Security Feistel Cipher The plain text block is divided into two halves Lo and Ro (บล็อกข้อความธรรมดาแบ่งออกเป็นครึ่งออกเป็นสองส่วน Ro และ Lo) The two halves pass through n rounds of processing and then combine to produce the cipher text block. (แบ่งเป็นสองส่วนเท่า ๆ กันผ่านการประมวลผล n รอบ แล้วนำมารวมกันเป็นบล็อกข้อความ cipher) At each round a substitution is performed on the left half of the data by applying a round function F to the right half of the data and then XORing it with the left half (ในแต่ละรอบการแทนที่จะถูกทำในครึ่งซ้ายของข้อมูลโดยการใช้รอบฟังก์ชั่น F ไปยัง ครึ่งขวาของข้อมูลแล้ว XOR (exclusive-OR) กับครึ่งซ้าย)

Network Security

Conventional Symmetric Encryption Algorithms Network Security Conventional Symmetric Encryption Algorithms Data Encryption Standard (DES) The most widely used encryption scheme The algorithm is reffered to the Data Encryption Algorithm (DEA) DES is a block cipher The plaintext is processed in 64-bit blocks The key is 56-bits in length No longer used for government transmissions

Network Security

Network Security

Data Encrytion Standard (DES) Network Security Data Encrytion Standard (DES) The overall processing at each iteration: Li = Ri-1 Ri = Li-1 F(Ri-1, Ki) Concerns about: The algorithm and the key length (56-bits)

Time to break a code (106 decryptions/µs) Network Security Time to break a code (106 decryptions/µs)

Network Security Triple DEA Use three keys and three executions of the DES algorithm (encrypt-decrypt-encrypt) C = ciphertext P = Plaintext EK[X] = encryption of X using key K DK[Y] = decryption of Y using key K Effective key length of 168 bits C = EK3[DK2[EK1[P]]]

Network Security Triple DEA

Other Symmetric Block Ciphers Network Security Other Symmetric Block Ciphers International Data Encryption Algorithm (IDEA) 128-bit key Used in PGP Blowfish Easy to implement High execution speed Run in less than 5K of memory

Other Symmetric Block Ciphers Network Security Other Symmetric Block Ciphers RC5 (algorithm) (is a block cipher notable for its simplicity. Designed by Ronald Rivest in 1994) Suitable for hardware and software Fast, simple Adaptable to processors of different word lengths Variable number of rounds Variable-length key Low memory requirement High security Data-dependent rotations Cast-128 (by Carlisle Adams and Stafford Tavares in1996) Key size from 40 to 128 bits The round function differs from round to round

Cipher Block Modes of Operation Network Security Cipher Block Modes of Operation Cipher Block Chaining Mode (CBC) The input to the encryption algorithm is the XOR of the current plaintext block and the preceding ciphertext block. (ป้อนข้อมูลเข้าสู่ encryption algorithm เป็น XOR ของ current plaintext block และ ciphertext block ก่อนหน้านี้) Repeating pattern of 64-bits are not exposed (รูปแบบ การทำซ้ำของ 64 บิต แต่จะไม่มีการเปิดเผย)

Network Security

Location of Encryption Device Network Security Location of Encryption Device Link encryption: A lot of encryption devices High level of security Decrypt each packet at every switch End-to-end encryption The source encrypt and the receiver decrypts Payload encrypted (สามารถจุรหัสได้มาก) Header in the clear (มีส่วนหัวที่ชัดเจน) High Security: Both link and end-to-end encryption are needed

Network Security

Network Security Key Distribution A key could be selected by A and physically delivered to B. (Key ถูกเลือกโดย A และส่งมอบถึง B โดยตรง) A third party could select the key and physically deliver it to A and B. (บุคคลที่สามสามารถเลือก key และส่งไปยัง A และ Bได้) If A and B have previously used a key, one party could transmit the new key to the other, encrypted using the old key. (ถ้า A และ B ได้ใช้ key ก่อนหน้านี้แล้ว หนึ่งในนั้น ต้องส่ง key ใหม่ให้กับบุคคลอื่นต่อไปโดยใช้การเข้ารหัสจากคีย์เดิม) If A and B each have an encrypted connection to a third party C, C could deliver a key on the encrypted links to A and B. (ถ้า A และ B มีการเชื่อมต่อที่เข้ารหัสแต่ละชนิดกัน ถึง บุคคลที่สาม C, C ก็สามารถส่งกุญแจในการเข้ารหัสลับการเชื่อมโยงไปยัง A และ Bได้)

Key Distribution (See Figure 2.10) Network Security Key Distribution (See Figure 2.10) Session key: (is a single-use symmetric key used for encrypting all messages in one communication session or traffic encryption key or TEK) Data encrypted with a one-time session key. At the conclusion of the session the key is destroyed (ข้อมูล ที่เข้ารหัสด้วยคีย์เซสชั่นแล้วครั้งเดียว ในที่สุดก็จะถูกทำลาย) Permanent key: Used between entities for the purpose of distributing session keys (การใช้ระหว่างหน่วยงานก้เพื่อ วัตถุประสงค์ในการกระจาย กุญแจเซสชั่น)

Network Security

Network Security Recommended Reading Stallings, W. Cryptography and Network Security: Principles and Practice, 2nd edition. Prentice Hall, 1999 Scneier, B. Applied Cryptography, New York: Wiley, 1996 Mel, H.X. Baker, D. Cryptography Decrypted. Addison Wesley, 2001