1. Trang chủ
  2. » Tất cả

Slide Bài giảng An toàn thông tin Các giải thuật mã hóa KHÓA BẤT ĐỐI XỨNG

24 9 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 24
Dung lượng 1,04 MB

Nội dung

▪ Hệ mật mã khóa đối xứng không đáp ứng được 2 mục tiêu an toàn • Xác thực Alice và Bob trao đổi thông tin bí mật Alice cần phải biết thông tin chắc chắn đến từ Bob, và ngược lại • Chống phủ nhận Alice và Bob trao đổi thông tin bí mật Nếu Alice đã gửi thông tin nào đó cho Bob thì Alice không thể chối bỏ thông tin đó là của mình ▪ Quản lý khóa đối xứng là một vấn đề nan giải • Trong các hệ khóa đối xứng, mỗi cặp người dùng phải có khóa riêng • N người dùng cần N (N1)2 khóa • Việc quản lý khóa trở nên phức tạp khi số lượng người dùng tăng

TRƯỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH KHOA CÔNG NGHỆ THÔNG TIN Giảng Viên: ThS.Dương Minh Tuấn dmtuan@ntt.edu.vn Chương V Các giải thuật mã hóa KHĨA BẤT ĐỐI XỨNG Tổng quan Lý thuyết tản hệ mật mã cơng khai Các giải thuật mã hóa khóa bất đối xứng RSA Tổng quan ▪ Hệ mật mã khóa đối xứng khơng đáp ứng mục tiêu an tồn • Xác thực - Alice Bob trao đổi thơng tin bí mật - Alice cần phải biết thông tin chắn đến từ Bob, ngược lại • Chống phủ nhận - Alice Bob trao đổi thơng tin bí mật - Nếu Alice gửi thơng tin cho Bob Alice khơng thể chối bỏ thơng tin ▪ Quản lý khóa đối xứng vấn đề nan giải • Trong hệ khóa đối xứng, cặp người dùng phải có khóa riêng • N người dùng cần N * (N-1)/2 khóa • Việc quản lý khóa trở nên phức tạp số lượng người dùng tăng Tổng quan Khái niệm  Mỗi người dùng có khóa riêng khóa cơng khai • Khóa riêng bí mật • Khóa cơng khai chia sẻ  Quản lý khóa • N người dùng cần N khóa cơng khai xác thực • Hạ tầng khóa cơng khai PKI Tổng quan Khái niệm  Mã hóa dùng khóa cơng khai k • C = E(k,M)  Giải mã dùng khóa riêng K • M = D(K,C) Tổng quan Khái niệm ▪ Mã hóa dùng khóa riêng K • C = E(K,M) ▪ Giải mã dùng khóa cơng khai k • M = D(k,C) Tổng quan Khóa bí mật & khóa cơng khai Lý thuyết tản Hệ mật mã khóa cơng khai Độ phức tạp  Độ phức tạp tính tốn (thời gian) •Vấn đề “dễ”: lớp P •Vấn đề “khó”: lớp NP  Giải vấn đề P •Số trường hợp phải xét đến hàm đa thức  Giải vấn đề NP •Số trường hợp phải xét đến hàm lũy thừa “Các hệ mật mã khóa cơng khai dựa độ khó/phức tạp giải thuật bẻ khóa” Lý thuyết tản Hệ mật mã khóa cơng khai Số học đồng dư • a mod n • a op b mod n • op = +, -, *, /, ^  Ví dụ: • 40 mod = • + mod = • – mod = • * mod = • 4/2 mod = • 2^4 mod =  a mod n • Số dư a chia n  a + b mod n • Số dư a + b chia n  a - b mod n • Số dư a - b chia n  a * b mod n • Số dư a * b chia n  a ^ b mod n • Thủ tục bình phương  a / b mod n • Giải thuật Euclide mở rộng Lý thuyết tản Hệ mật mã khóa cơng khai Thủ tục bình phương  Dựa vào tính chất • a*b mod n = ((a mod n)*(b mod n)) mod n  Tính a^25 • a^25 = a^(11001) • a^(11001) = a^(10000+1000+1) • a^(10000+1000+1) = a^10000 * a^1000 * a^1 • a^10000 * a^1000 * a^1 = a^16 * a^8 * a^1  Độ phức tạp (O(logb*(logs)^2))  Hiệu phương pháp tính lũy thừa phép nhân đồng dư (O(b*(logs)^2)) 10 Lý thuyết tản Hệ mật mã khóa cơng khai Thủ tục bình phương  ModExp1(a,b, s)  Vào: • số nguyên dương a,b,s cho a < s • bn-1 ···b1b0 biểu diễn nhị phân b, n = [logb]  Ra: a^b mod s 11 Lý thuyết tản Hệ mật mã khóa cơng khai Ví dụ:  Tính 6^73 mod 100 • 73 = 2^0 + 2^3 + 2^6 • 6^73 = * 6^(2^3)*6^(2^6) • = mod 100 • 6^(2^3) = 16 mod 100 • 6^(2^6) = -4 mod 100 • 6^73 = * (16) * (-4) = 16 mod 100 12 3.Các giải thuật mã hóa khóa bất đối xứng ❖Các giải thuật mã hóa khóa bất đối xứng (asymmetric key encryption) ▪ Còn gọi mã hóa khóa cơng khai (public key encryption): ▪ Sử dụng cặp khóa (key pair): • khóa (public key) cho mã hóa • khóa (private key) cho giải mã 13 Các giải thuật mã hóa khóa bất đối xứng ❖Đặc điểm: Kích thước khóa lớn (1024 – 3072 bít) Tốc độ chậm ▪ ▪ • Phần lớn khóa có kích thước lớn Độ an tồn cao Thuận lợi quản lý phân phối khóa: ▪ ▪ • Do khóa mã hóa cơng khai trao đổi dễ dàng ❖ Các giải thuật mã hóa khóa bất đối xứng điển hình: ▪ ▪ ▪ ▪ ▪ RSA Rabin ElGamal McEliece Knapsack 14 Giải thuật mã hóa khóa bất đối xứng RSA ❖ Giải thuật mã hóa RSA nhà khoa học Ronald Rivest, Adi Shamir Leonard Adleman phát minh năm 1977; ▪ Tên giải thuật RSA lấy theo chữ đầu tên ơng ❖ Độ an tồn RSA dựa tính khó việc phân tích số nguyên lớn: ▪ Khóa RSA số nguyên lớn có hàng trăm chữ số thập phân ❖ RSA sử dụng cặp khóa: ▪ Khóa cơng khai (Public key) dùng để mã hóa; ▪ Khóa riêng (Private key) dùng để giải mã ▪ Chỉ khóa riêng cần giữ bí mật Khóa cơng khai cơng bố rộng rãi 15 Giải thuật mã hóa khóa bất đối xứng RSA ❖ Kích thước khóa RSA: ▪ Khóa < 1024 bít khơng an tồn ▪ Khuyến nghị dùng khóa >= 2048 bít với ứng dụng mật mã dân ▪ Tương lai nên dùng khóa >=3072 bít ❖Thủ tục sinh khóa RSA: Tạo số nguyên tố p q; Tính n = p x q Tính (n) = (p-1) x (q-1) Chọn số nguyên tố e cho < e < (n) gcd(e, (n)) = 1, hay e, (n) số nguyên tố ▪ Chọn số d cho d  e-1 mod (n), (d x e) mod (n) = (d molulo nghịch đảo e) ▪ ▪ ▪ ▪ ❖Ta có (n, e) khóa cơng khai, (n, d) khóa riêng 16 Giải thuật mã hóa khóa bất đối xứng RSA ❖Thủ tục mã hóa RSA: ▪ Thơng điệp m chuyển thành số, m

Ngày đăng: 16/02/2023, 14:52

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN