Bài giảng Phân tích và Thiết kế giải thuật nâng cao: Chương 6 PGS.TS. Trần Cao Đệ

25 601 0
Bài giảng Phân tích và Thiết kế giải thuật nâng cao: Chương 6  PGS.TS. Trần Cao Đệ

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

10.1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chương 6 Mã hóa Cryptography 10.2 Objectives  Phân biệt mã hóa đối xứng và mã hóa bất đối xứng  Giới thiệu về hàm một chiều trong mã hóa bất đối xứng  Mã hóa RSA Chapter 10 10.3 10-1 INTRODUCTION 10-1 INTRODUCTION Mã hóa đối xứng và mã hóa bất đối xứng là hai cách Mã hóa đối xứng và mã hóa bất đối xứng là hai cách tiếp cận cùng tồn tại song song trong lĩnh vực mã hóa tiếp cận cùng tồn tại song song trong lĩnh vực mã hóa • Mã hóa đối xứng Mã hóa đối xứng : cùng chia sẻ bí mật : cùng chia sẻ bí mật ví dụ mật mã Caesar k=3 ví dụ mật mã Caesar k=3 ABCDEF…Z ABCDEF…Z DEFGHI…C DEFGHI…C • Mã hóa bất đối xứng Mã hóa bất đối xứng : bí mật cá nhân : bí mật cá nhân • Mã hóa: khóa công khai Mã hóa: khóa công khai • Giải mã: khóa bí mật Giải mã: khóa bí mật 10.4 Mã hóa bất đối xứng dùng hai khóa: • Một khóa công khai (public key) • Một khóa bí mật (private key) 10.1.1 Keys Figure 10.1 khóa và mở khóa trong hệ mã bất đối xứng 10.5 10.1.2 General Idea Figure 10.2 ý tưởng chính của hệ mã bất đối xứng 10.6 Bản rõ và bản mã (Plaintext/Ciphertext) Bản rõ (P) là bản chưa mã hóa Bản mã (C) là bản đã mã hóa 10.1.2 Continued C = f (K public , P) P = g(K private , C) Mã hóa và giải mã (Encryption/Decryption) trong hệ mã bất đối xứng dùng hai hàm và hai khóa riêng biệt 10.7 Hệ mã bất đối xứng dùng hàm bẫy một chiều (trapdoor one-way function). 10.1.4 Trapdoor One-Way Function Hàm Figure 10.3 hàm là một qui tắc ánh xạ một miền xác định vào một miền giá trị 10.8 Hàm bẫy một chiều (Trapdoor One-Way Function (TOWF)) 10.1.4 Continued Hàm một chiều (One-Way Function (OWF)) 1. f dễ dàng tính được. 2. f −1 tính cực kỳ khó (không thể tính được). 3. Cho y và một cái bẫy thì x tính được dễ dàng 10.9 10.1.4 Continued Ví dụ 10. 1 Ví dụ 10. 2 Khi n đủ lớn, n = p × q là hàm một chiều. Cho p và q , tính n dễ dàng; Cho n, rất khó để tính được p và q. Khi n đủ lớn, y = x k mod n là một hàm bẫy 1 chiều. Cho x, k và n, dễ dàng tính y. Cho y, k và n, rất khó tính x. Tuy nhiên nếu biết cái bẫy k′ sao cho k × k ′ = 1 mod φ(n) Ta tính được x dễ dàng x = y k′ mod n. 10.10 10-2 RSA CRYPTOSYSTEM 10-2 RSA CRYPTOSYSTEM Hệ mã RSA Hệ mã RSA RSA lấy tên của những người phát minh (Rivest, RSA lấy tên của những người phát minh (Rivest, Shamir, and Adleman). Shamir, and Adleman). 10.2.1 Introduction 10.2.2 Procedure 10.2.3 Some Trivial Examples 10.2.4 Attacks on RSA 10.2.5 Recommendations 10.2.6 Optimal Asymmetric Encryption Padding (OAEP) 10.2.7 Applications Topics discussed in this section: Topics discussed in this section: [...]... phức tạp trong thuật toán RSA 10.11 10.2.2 Qui trình Figure 10 .6 mã hóa, giải mã và sinh khóa trong RSA 10.12 10.2.2 Sinh khóa RSA 10.13 10.2.2 Continued Mã hóa (Encryption) 10.14 10.2.2 Continued Giải mã (Decryption) 10.15 10.2.2 Continued Proof of RSA 10. 16 10.2.3 ví dụ đơn giản Ví dụ 10 5 Bob chọn p=7 và q=11, tính được n = pxq = 77 Tính φ(n) = (7 − 1)(11 − 1) = 60 Bob chọn e và d trong Z60∗ sao cho... Figure 10.7 mã hóa và giải mã trong ví dụ 10.20 10.2 .6 ví dụ áp dụng thuật Example 10 8 Giả sử ta chọn p và q là hai số 512-bit Tính n và φ (n), Chọn e và kiểm tra nguyên tố cùng nhau với φ (n) Tính d Dùng khóa công khai (e,n) để mã hóa Dùng khóa bí mật (d,n) để giải mã 10.21 10.2 .6 ví dụ áp dụng thật (tt) Ví dụ 10 8 (tt) n = p × q, n có 309 số φ (n) = (p − 1)(q − 1) có 309 số 10.22 10.2 .6 ví dụ áp dụng... dụ (tt) Bob chọn e = 35535 và kiểm tra tính nguyên tố cùng nhau với φ (n) Tính d 10.23 10.2 .6 ví dụ áp dụng thật (tt) Ví dụ 10 8 (tt) Alice muốn gởi “THIS IS A TEST”, và đổi thành số với bảng mã 00− 26 Alice mã hóa C = Pe, đó là: 10.24 10.2 .6 ví dụ áp dụng thật (tt) Ví dụ 10 8 (tt) Bob nhận được C và giải mã P = Cd, đó là Đổi ngược lại thành “THIS IS A TEST” với bảng mã 00- 26 tương ứng với A Z http://cisnet.baruch.cuny.edu/holowczak/classes/... 1 mod 60 (ví dụ e = 13, d = 37) Bob công bố khóa công khai (13,77) giữ bí mật d = 37 Alice muốn gởi P= 5 tới Bob Cô ta dùng e=13 để mã hóa 5 Bob nhận C= 26 từ Alice Bob dùng d = 37 để giải mã: http://www.strangeattractor.ca/RSAdemo.html 10.17 10.2.3 ví dụ đơn giản (tt) Ví dụ 10 6 Giả sử John muốn gởi nội dung P =63 cho Bob John dùng khóa công khai của Bob đã công bố (13,77) Bob nhận được C = 28 và dùng... nội dung P =63 cho Bob John dùng khóa công khai của Bob đã công bố (13,77) Bob nhận được C = 28 và dùng khóa bí mật d = 37 để giải mã: 10.18 10.2.3 ví dụ cách áp dụng Example 10 7 Jennifer chọn p = 397 và q = 401 Cô ta tính được n = 159197 và φ(n) = 158400 Cô ta chọn e = 343 và tính d = 12007 Jennifer công bố (343,159197) là khóa công khai Giữ bí mật d=12007 Ted muốn gởi thông báo “NO” cho Jennifer . trình Figure 10 .6 mã hóa, giải mã và sinh khóa trong RSA 10.13 10.2.2 Sinh khóa RSA 10.14 Mã hóa (Encryption) 10.2.2 Continued 10.15 Giải mã (Decryption) 10.2.2 Continued 10. 16 Proof of RSA 10.2.2. dụ đơn giản Ví dụ 10. 5 Bob chọn p=7 và q=11, tính được n = pxq = 77. Tính φ(n) = (7 − 1)(11 − 1) = 60 . Bob chọn e và d trong Z 60 sao cho ed = 1 mod 60 .∗ (ví dụ e = 13, d = 37) Bob công. nhận C= 26 từ Alice Bob dùng d = 37 để giải mã: http://www.strangeattractor.ca/RSAdemo.html 10.18 10.2.3 ví dụ đơn giản (tt) Ví dụ 10. 6 Bob nhận được C = 28 và dùng khóa bí mật d = 37 để giải mã: Giả

Ngày đăng: 17/04/2015, 15:24

Từ khóa liên quan

Mục lục

  • Slide 1

  • Slide 2

  • Slide 3

  • Slide 4

  • Slide 5

  • Slide 6

  • Slide 7

  • Slide 8

  • Slide 9

  • Slide 10

  • Slide 11

  • Slide 12

  • Slide 13

  • Slide 14

  • Slide 15

  • Slide 16

  • Slide 17

  • Slide 18

  • Slide 19

  • Slide 20

Tài liệu cùng người dùng

Tài liệu liên quan