.2 Quá trình thực hiện mã hóa khóa công khai

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu giải pháp tích hợp chữ ký số bảo mật ứng dụng trong hệ điều hành tác nghiệp lotus notes 04 (Trang 28 - 31)

Quá trình truyền và sử dụng mã hóa công khai đƣợc thực hiện nhƣ sau: Bên gửi yêu cầu cung cấp hoặc tự tìm khóa công khai của bên nhận trên một server chịu trách nhiệm quản lý khóa.

Sau đó hai bên thống nhất thuật toán để mã hóa dữ liệu, bên gửi sử dụng mã hóa công khai của bên nhận cùng với thuật toán đã thống nhất để mã hóa thông tin đƣợc gửi đi.

Khi nhận đƣợc thông tin đã mã hóa bên nhận sử dụng khóa bí mật của mình để giải mã và lấy đƣợc thông tin ban đầu.

Vậy là với sự ra đời của mã hóa công khai thì khóa đƣợc quản lý một cách linh hoạt và hiệu quả hơn. Ngƣời sử dụng chỉ cần bảo vệ khóa bí mật.

Một số hệ mã hóa khóa công khai phổ biến nhƣ: RSA, Elgamal, …

Mặc dù sự ra đời của hệ mật mã khóa công khai là bƣớc đột phá rất quan trọng. Tuy nhiên nó không thể thay thế hệ mật mã đối xứng.

2.3.2. Ƣu điểm và nhƣợc điểm của hệ mã hóa công khai

Ƣu điểm Nhƣợc điểm

+ Chỉ có khóa riêng cần đƣợc giữ bí mật (tuy nhiên việc xác nhận của các khóa công khai cần đƣợc đảm bảo). + Việc quản trị khóa trên mạng đòi hỏi sự tồn tại duy nhất một thành phần tin cậy.

+ Cặp khóa riêng công khai có thể đƣợc sử dụng trong thời gian dài.

+ Nhiều mô hình khóa công khai phát triển hình thành nên các kỹ thuật chữ ký số hiệu quả.

+ Trong một mạng lớn, số lƣợng các khóa cần thiết đƣợc quan tâm ít hơn nhiều so với việc dùng khóa đối xứng.

+ Tốc độ cho các phƣơng thức mã hóa công khai thì chậm hơn rất nhiều so với các mô hình khóa đối xứng.

+ Kích thƣớc khóa lớn hơn rất nhiều so với cơ chế mã hóa khóa đối xứng. + Hệ thống mã khóa công khai không có bề dày lâu đời nhƣ mã khóa đối xứng, nó chỉ đƣợc tìm ra vào khoảng giữa những năm 1970.

2.3.3. Thuật toán RSA

Thuật toán RSA có hai khóa:

- Khóa công khai: khóa công cộng đƣợc công bố rộng rãi cho mọi ngƣời và đƣợc dùng để mã hóa.

- Khóa bí mật: khóa cá nhân dùng để giải mã, những thông tin đƣợc mã hóa bằng khóa công khai chỉ có thể đƣợc giải mã bằng khóa bí mật tƣơng ứng.

Quá trình thực hiện thuật toán RSA gồm 3 quá trình: quá trình tạo khóa, quá trình mã hóa, quá trình giải mã.

Quá trình tạo khóa gồm 5 bƣớc:

1. Chọn 2 số nguyên tố lớn p và q với p ≠ q, lựa chọn ngẫu nhiên và độc lập. 2. Tính: n= pq.

3. Tính: giá trị hàm số Ơle φ(n) = (p − 1)(q − 1)

4. Chọn một số tự nhiên e sao cho 1 < e < φ(n) và là số nguyên tố cùng nhau với φ(n).

5. Tính: d sao cho de ≡ 1 (mod φ(n)). Kết quả quá trình tạo khóa:

- Khóa công khai bao gồm: {e (số mũ công khai), n} - Khóa bí mật bao gồm: {d (số mũ bí mật), n}

Quá trình Mã hóa:

- Lấy bản rõ cho trƣớc M.

- Lấy khóa công khai của bên nhận KU = {e, n} - Tính C = Me mod n là bản mã thu đƣợc.

Quá trình Giải mã:

- Sử dụng khóa riêng KR = {d, n}

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu giải pháp tích hợp chữ ký số bảo mật ứng dụng trong hệ điều hành tác nghiệp lotus notes 04 (Trang 28 - 31)

Tải bản đầy đủ (PDF)

(63 trang)