งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

Network Security Chapter 3 Public-Key Cryptography and Message Authentication Slides by H. Johnson & S. Malladi- Modified & Translated by Sukchatri P.

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "Network Security Chapter 3 Public-Key Cryptography and Message Authentication Slides by H. Johnson & S. Malladi- Modified & Translated by Sukchatri P."— ใบสำเนางานนำเสนอ:

1 Network Security Chapter 3 Public-Key Cryptography and Message Authentication Slides by H. Johnson & S. Malladi- Modified & Translated by Sukchatri P.

2 Overview Message Authentication Secure Hash Functions and HMAC Public-Key Cryptography Principles Public-Key Cryptography Algoroithms Digital Signatures Key Management 11/01/ University of Phayao

3 Authentication “A message, file, document or data is said to be authentic when it is genuine and came from its alleged source.” ข้อความ, ไฟล์เอกสารหรือข้อมูลที่มี การกล่าวถึงเป็นจริงเมื่อมันเป็นของแท้และมาจาก แหล่งที่ถูกต้อง Encryption prevents against passive attacks ( eavesdropping) การเข้ารหัสป้องกันการโจมตีแบบ พาสซีฟ ( แอบฟัง ) Message Authentication prevents against active attacks or falsification. ข้อความรับรองความถูกต้อง ป้องกันการโจมตีที่ใช้งานหรือการกระทำผิด 11/01/ University of Phayao

4 Message Authentication Requirements - must be able to verify that: ( ความต้องการ – ต้องสามารถตรวจสอบได้ว่า ) 1. Message came from apparent source or author, ข้อความมาจากแหล่งข้อมูลที่ชัดเจนหรือ ผู้เขียนจริง 2. Contents have not been altered, เนื้อหาไม่ถูก แก้ไข 3. Sometimes, it was sent at a certain time or sequence. บางครั้งอาจจะถูกส่งไปกับบางช่วงเวลา หรือลำดับ Protection against active attack (falsification of data and transactions) การป้องกันการโจมตีที่ใช้งาน ( การกระทำผิดเกี่ยวกับข้อมูลและการทำธุรกรรม ) 11/01/ University of Phayao

5 Approaches to Message Authentication Authentication Using Conventional Encryption การตรวจสอบการใช้การเข้ารหัสลับแบบปกติดั้งเดิม ▫Only the sender and receiver should share a key เฉพาะ ผู้ส่งและผู้รับควรใช้คีย์ร่วมกัน Message Authentication without Message Encryption ข้อความการตรวจสอบสิทธิ์โดยปราศจาก การเข้ารหัสข้อความ ▫An authentication tag is generated and appended to each message แท็กการตรวจสอบจะถูกสร้างและผนวกเข้า กับแต่ละข้อความ Message Authentication Code การตรวจสอบรหัส ข้อความ ▫Calculate the MAC as a function of the message and the key. MAC = F(K, M) 11/01/ University of Phayao

6 Message Authentication Using Encryption ▫Assume only sender and receiver share a key สมมติผู้ส่งเท่านั้นและหุ้นรับสำคัญ ▫Then a correctly encrypted message should be from the sender จากนั้นข้อความที่เข้ารหัสได้อย่าง ถูกต้องควรจะเป็นจากผู้ส่ง Usually also contains error-detection code, sequence number and time stamp โดยปกติแล้วยัง มีรหัสข้อผิดพลาดตรวจสอบหมายเลขลำดับและการ ลงเวลา 11/01/ University of Phayao

7 11/01/ University of Phayao

8 Message Authentication Without Encryption No confidentiality is preferred when: การ รักษาความลับไม่เป็นที่ต้องการเมื่อ 1.Same message is broadcast to many destinations ข้อความเดียวกันนี้มีการถ่ายทอดไป ยังปลายทางจำนวนมาก 2.Heavy load and cannot decrypt all messages – some chosen at random ภาระ หนักและไม่สามารถถอดรหัสข้อความทั้งหมด -- บางส่วนเลือกโดยการสุ่ม 3.No danger in sending plaintext Append authentication tag to each message, ไม่มีอันตรายในการส่งข้อความ เพิ่มแท็กรับรองความ ถูกต้องกับแต่ละข้อความได้ 11/01/ University of Phayao

9 Message Authentication Message Authentication Code (MAC) ▫Small block of data that is appended to the message บล็อกเล็กของข้อมูลถูกต่อท้ายข้อความ ▫MAC is generated by using a secret key ; MAC จะถูกสร้างขึ้นโดยใช้รหัสลับ ▫Assumes both parties A,B share common secret key K AB ▫Code is function of message and key MAC M = F(K AB, M) ▫Message plus code are transmitted 11/01/ University of Phayao

10 Message Authentication Code If received code matches calculated code then หากรหัสตรงกับรหัสที่ได้รับการคำนวณแล้ว ▫Receiver is sure message has not been altered ผู้รับ แน่ใจว่าข้อความไม่มีการเปลี่ยนแปลงใดๆ ▫Message is from sender since only sender shares the key ผู้ส่งเท่านั้นที่ให้รหัสไปพร้อมกับการส่ง ข้อความ ▫If the message includes correct sequence number, that number could not have been altered by hacker ถ้าข้อความหมายมีลำดับที่ถูกต้องรวมถึงจำนวน ข้อความที่ไม่ได้ถูกเปลี่ยนแปลงโดยแฮกเกอร์ 11/01/ University of Phayao

11 Message Authentication Code Different from encryption ที่แตกต่างกันจากการ เข้ารหัส ▫MAC does not have to be reversible as the cipher text does in encryption ; MAC ไม่ต้องมีการย้อนกลับ และขณะที่ cipher text ทำการเข้ารหัส ▫Because of mathematical properties, it is less vulnerable to being broken than encryption เนื่องจากคุณสมบัติทางคณิตศาสตร์ จะมีช่องโหวน้อย กว่าการเข้ารหัส 16 to 32 bit code is typical โดยทั่วไปแล้วคือรหัสบิต /01/ University of Phayao

12 11/01/ University of Phayao

13 One-way HASH function Alternative to Message Authentication Code ทางเลือกในรหัสการตรวจสอบข้อความ Accepts a variable size message M as input and produces a fixed-size message digest H (M) as output ยอมรับตัวแปรขนาด M ข้อความเ ขณะที่การ เข้าและการสร้างข้อความขนาดคงที่ถูกย่อยออกเป็น H (M) 11/01/ University of Phayao

14 One-way HASH function 11/01/ University of Phayao

15 One-way HASH function Secret value is added before the hash and removed before transmission. ค่าความลับจะถูกเพิ่มก่อนที่จะถูกซอยย่อยและ ลบทิ้งก่อนส่ง 11/01/ University of Phayao

16 Secure HASH Functions Purpose of the HASH function is to produce a “fingerprint” Used in message authentication and digital signatures Properties of a HASH function H : 1.H can be applied to a block of data at any size 2.H produces a fixed length output 3.H(x) is easy to compute for any given x. 4.For any given block x, it is computationally infeasible to find x such that H(x) = h (one-way property) 5.For any given block x, it is computationally infeasible to find with H(y) = H(x). (weak collision resistance) บอบบางต่อความ ต้านทานการปะทะกัน 6.It is computationally infeasible to find any pair (x, y) such that H(x) = H(y) ( strong collsion resistance) 11/01/ University of Phayao

17 Simple Hash Function General principle ▫Input is a sequence of n-bit blocks ▫Input is processed one block at a time to produce an n-bit hash function ▫A simple example is the XOR of each block C i = b i1  b i2  …  b im C i is ith bit of hash code 1 <= i <= n m is number of n-bit block in input b ij is ith bit in jth block  Is the XOR operation 11/01/ University of Phayao

18 Simple Hash Function 11/01/ University of Phayao

19 Simple Hash Function Improved To improve- perform a one-bit circular shift on the hash value after each block is processed ▫Initally set the n-bit hash value to zero ▫Process each successive n-bit blok of data by:  Rotating current hash value to the left by 1 bit  XOR the block into the hash value 11/01/ University of Phayao

20 SHA-1 Secure Hash Function The Secure Hash Algorithm( SHA) was developed by the National Institute of Standards and Technology and published in SHA-1 is 1995 revised version. ฉบับแก้ไขเพิ่มเติม It takes as input a message with maximum length < 2 64 bits and produces a 160-bit message digest. รองรับข้อความที่เข้ามาได้ถึงความยาวสูงสุด 2 64 บิต และข้อความย่อยขาออกได้ 160 bit It is processed in 512-bit blocks. มันจะถูก ประมวลผลในบล็อก bit 11/01/ University of Phayao

21 Message Digest Generation Using SHA-1 11/01/ University of Phayao

22 SHA-1 Processing of single 512-Bit Block 11/01/ University of Phayao

23 Other Secure HASH functions SHA-1MD5RIPEMD-160 Digest length160 bits128 bits160 bits Basic unit of processing 512 bits Number of steps80 (4 rounds of 20) 64 (4 rounds of 16) 160 (5 paired rounds of 16) Maximum message size bits 11/01/ University of Phayao

24 HMAC Use a MAC derived from a cryptographic hash code, such as SHA-1. ใช้ MAC ที่ได้จากการเข้ารหัส ลับรหัสแฮชเช่น SHA - 1 Motivations: ▫Cryptographic hash functions executes faster in software than encryptoin algorithms such as DES ฟังก์ชันแฮช Cryptographic ประมวลผลได้เร็วกว่าใน ซอฟต์แวร์กว่าขั้นตอนวิธี encryptoin เช่น DES ▫Library code for cryptographic hash functions is widely available มีคลังรหัสสำหรับฟังก์ชันแฮชการเข้ารหัส ลับมีใช้อย่างกว้างขวาง ▫No export restrictions from the US ไม่เข้มงวดในการนำ ออกจาก US 11/01/ University of Phayao

25 HMAC Structure 11/01/ University of Phayao

26 Public-Key Cryptography Principles The use of two keys has consequences in: key distribution, confidentiality and authentication. The scheme has six ingredients (see Figure 3.7) –Plaintext –Encryption algorithm –Public and private key –Ciphertext –Decryption algorithm 11/01/ University of Phayao

27 Encryption using Public-Key system 11/01/ University of Phayao

28 Authentication using Public- Key System 11/01/ University of Phayao

29 Applications for Public-Key Cryptosystems Three categories: ▫Encryption/decryption: The sender encrypts a message with the recipient’s public key. ▫Digital signature: The sender ”signs” a message with its private key. ▫Key exchange: Two sides cooperate to exhange a session key. 11/01/ University of Phayao

30 Requirements for Public Key Cryptography 1.Computationally easy for a party B to generate a pair (public key KU b, private key KR b ) 2.Easy for sender to generate ciphertext: 3.Easy for the receiver to decrypt ciphertect using private key: 11/01/ University of Phayao

31 Requirements for Public Key Cryptography 4.Computationally infeasible to determine private key (KR b ) knowing public key (KU b ) 5.Computationally infeasible to recover message M, knowing KU b and ciphertext C 6.Either of the two keys can be used for encryption, with the other used for decryption: 11/01/ University of Phayao

32 Public Key Algorithms- RSA RSA (1977, Ron Rivest, Adi Shamir and Len Adleman), MIT Most popular and widely implemented Block cipher Plain text and cipher text are integers between 0 and (n-1) for some n C = M e mod n M = C d mod n = (M e mod n) d = (M ed mod n) 11/01/ University of Phayao

33 Public key Algorithms- RSA Both sender and receiver know n and e Only receiver knows d Public key = {e,n} Private key = {d,n} Requirements ▫Should be possible to find e, d, n such that M ed = M mod n for all M < n 11/01/ University of Phayao

34 Requirements continued… Easy to calculate M e and C d for all M < n Infeasible to determine d, given e and n First two requirements are easy. Third one is also possible if e, n are large 11/01/ University of Phayao

35 Steps Given in text book including examples ▫See figure on the next slide We also did some examples in class and in the assignment Please refer solutions for assignment 2 11/01/ University of Phayao

36 The RSA Algorithm – Key Generation 1.Select p,q p and q both prime 2.Calculate n = p x q 3.Calculate 4.Select integer e 5.Calculate d 6.Public KeyKU = {e,n} 7.Private keyKR = {d,n} 11/01/ University of Phayao

37 Example of RSA Algorithm 11/01/ University of Phayao

38 The RSA Algorithm - Encryption Plaintext:M

39 The RSA Algorithm - Decryption Ciphertext:C Plaintext:M = C d (mod n) 11/01/ University of Phayao

40 Public Key Algorithm Diffie-Hellman First introduced by Diffie-Hellman in 1976 Mathematical functions rather than simple operations on bit patterns Allows two separate keys ▫Exchange keys securely ▫Compute discrete logarithms Some misconceptions, corrected ▫NOT more secure than symmetric key ▫Does NOT Makes symmetric key obsolete ▫Central agent is needed for both 11/01/ University of Phayao

41 Diffie-Hellman basics AliceBob Pick secret, random X Pick secret, random Y g y mod p g x mod p Compute k=(g y ) x =g xy mod p Compute k=(g x ) y =g xy mod p 11/01/ University of Phayao

42 Diffie-Hellman Key Echange 11/01/ University of Phayao

43 Diffie-Hellman Key exchange algorithm using public and private values Based on the discrete logarithm problem To understand the discrete logarithm problem ▫Define the primitive root of p to be one whose powers generate all the integers from 1 to (p-1) from some prime number p 11/01/ University of Phayao

44 DH details i.e. if a is a primitive root of prime p, a mod p, a 2 mod p, …,a p-1 mod p are distinct and contain 1 through (p-1) in some order For b less than p and a, find unique exponent i such that b = a i mod p 0 <= i <= (p-1) 11/01/ University of Phayao

45 DH details continued… i is the discrete logarithm Denoted ind a,p (b) It is hard to calculate it given a i mod p 11/01/ University of Phayao

46 Other Public-Key Cryptographic Algorithms Digital Signature Standard (DSS) –Makes use of the SHA-1 –Not for encryption or key echange Elliptic-Curve Cryptography (ECC) –Good for smaller bit size –Low confidence level, compared with RSA –Very complex 11/01/ University of Phayao

47 Digital signatures A digital signature is an encryption of a document with the creator’s private key It is attached to a document that validates the creator of the document Any one can validate it by decrypting the signature with the claimed creator’s public key 11/01/ University of Phayao

48 Digital signatures on hashes A more efficient way for a digital signature is by creating an authenticator of the document first (a hash) Then sign the hash (i.e. encrypt the hash using private key) If M is the message (or document), Hash(M) = H sig PV(A) (H) represents sigining H i.e. encrypting H with A’s private key 11/01/ University of Phayao

49 Digital Signatures: The basic idea ? private key public key AliceBob 11/01/ University of Phayao

50 Key management Distribution of public keys ▫Well, what’s the issue? ▫Can’t we just trust Mallory if she claims a key as her public key? ? private key public key AliceBob Mallory 11/01/ University of Phayao

51 Public keys to exchange secret keys Using public-keys to exchange secret keys ▫why exchange secret keys? ▫aren’t public keys sufficient? 11/01/ University of Phayao

52 Authenticity of public keys ? Problem: How does Alice know that the public key she received is really Bob’s public key? private key Alice Bob public key Bob’s key 11/01/ University of Phayao

53 Public-key certificates Anyone can forge public-keys Therefore, use public-key certificates A public-key certificate is a public-key that was signed by a trusted third party (called a certificate authority or CA) See figure on next slide 11/01/ University of Phayao

54 Key Management Public-Key Certificate Use 11/01/ University of Phayao

55 Public-key distribution of secret keys How to establish a secret symmetric key between two strangers? Shall we use Diffie-Hellman ▫Does Diffie-Hellman have authentication before values are exchanged How about Stallings’ idea? 11/01/ University of Phayao

56 Stallings idea continued… ▫Prepare a message ▫Encrypt that message using conventional encryption with a one- time conventional session key ▫Encrypt the session key using public-key encryption with Alice’s public key ▫Attach the encrypted session key to the message and send it to Alice Stallings thinks this is secure Do you think so? Do I think so? Yes Do I think it is meaningful? No 11/01/ University of Phayao

57 Why? Well it is secure but it serves no purpose There is no authentication message How does Alice know from whom it came from? Anyone can prepare that message What is the point of a “secure” and secret message if I can’t trust the person who sent it? Would you let your kid accept a gift box that is highly secure (locked etc.) from a stranger and walk home with it after school? 11/01/ University of Phayao

58 Other problems with public keys fresh random challenge C Alice Bob PRIVATE KEY PUBLIC KEY “I am Alice” sig Alice (C) Verify Alice’s signature on c Potential problem: Alice will sign anything 11/01/ University of Phayao

59 Mafia-in-the-Middle Attack (from Anderson’s book) customer XXX Adult entertainment Over 21 only! Mafia porn site Picture 143! Bank Buy 10 gold coins Sign ‘X’ Prove your age by signing ‘X’ sig K (x) PRIVATE KEY K sig K (x) 11/01/ University of Phayao

60 11/01/ University of Phayao Merci


ดาวน์โหลด ppt Network Security Chapter 3 Public-Key Cryptography and Message Authentication Slides by H. Johnson & S. Malladi- Modified & Translated by Sukchatri P.

งานนำเสนอที่คล้ายกัน


Ads by Google