TRƯỜNG ĐẠI HỌC HÀNG HẢI VIỆT NAM
TRƯỜNG ĐẠI HỌC HÀNG HẢI VIỆT NAM
KHOA CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ THÔNG TIN
ĐỀ TÀI
MÃ HÓA VĂN BẢN THEO GIẢI THUẬT
KẾT HỢP RC2 VÀ RSA
Giáo viên hướng dẫn : Ths. Phạm Tuấn Đạt
Giáo viên phản biện : Ths. Nguyễn Thế Cường
Sinh viên thực hiện : Nguyễn Quang Hiệp
Lớp : CNT45ĐH
NỘI DUNG BÁO CÁO
NỘI DUNG BÁO CÁO
Giới thiệu chung về mã hóa
Giới thiệu chung về mã hóa
Thuật toán mã hóa RC2
Thuật toán mã hóa RC2
Thuật toán mã hóa RSA
Thuật toán mã hóa RSA
Giới thiệu các thư viện về mật mã trong .NET
Giới thiệu các thư viện về mật mã trong .NET
Giới thiệu chương trình
Giới thiệu chương trình
Kết luận
Kết luận
GIỚI THIỆU CHUNG VỀ MÃ HÓA
GIỚI THIỆU CHUNG VỀ MÃ HÓA
Mã hóa là làm cho dữ liệu không thể đọc bởi
Mã hóa là làm cho dữ liệu không thể đọc bởi
bất cứ ai, ngoại trừ người được phép đọc
bất cứ ai, ngoại trừ người được phép đọc
Có 2 lớp của phương thức mã hóa
Có 2 lớp của phương thức mã hóa
Mã hóa đối xứng
Mã hóa đối xứng
Mã hóa bất đối xứng
Mã hóa bất đối xứng
GIỚI THIỆU CHUNG VỀ MÃ HÓA
GIỚI THIỆU CHUNG VỀ MÃ HÓA
Mã hóa đối xứng
Mã hóa đối xứng
Mã hóa đối xứng chia thành 2 dạng
Mã hóa đối xứng chia thành 2 dạng
Mã hóa khối (Block Cipher)
Mã hóa khối (Block Cipher)
Mã dòng (Stream Cipher)
Mã dòng (Stream Cipher)
GIỚI THIỆU CHUNG VỀ MÃ HÓA
GIỚI THIỆU CHUNG VỀ MÃ HÓA
Mã hóa bất đối xứng
Mã hóa bất đối xứng
THUẬT TOÁN RC2
THUẬT TOÁN RC2
RC2 thuộc nhóm mã khối. Tác giả của RC2 là
RC2 thuộc nhóm mã khối. Tác giả của RC2 là
Ron Rivest.
Ron Rivest.
Các bước của thuật toán
Các bước của thuật toán
Tạo khóa con
Tạo khóa con
Mã hóa
Mã hóa
Giải mã
Giải mã
THUẬT TOÁN RC2 –
THUẬT TOÁN RC2 –
Tạo khóa con
Tạo khóa con
RC2 thực hiện một loạt thao tác với khóa chính để tạo
RC2 thực hiện một loạt thao tác với khóa chính để tạo
128 bytes khóa con và các khóa con này được lưu vào
128 bytes khóa con và các khóa con này được lưu vào
mảng bytes L[0],L[1],….,L[127].
mảng bytes L[0],L[1],….,L[127].
Việc tạo khóa con bằng cách sao chép khóa chính (T
Việc tạo khóa con bằng cách sao chép khóa chính (T
bytes) vào mảng L ( 128 bytes). Sau đó giá trị mảng L
bytes) vào mảng L ( 128 bytes). Sau đó giá trị mảng L
được thay đổi với sự trợ giúp của mảng ngẫu nhiên P[0…
được thay đổi với sự trợ giúp của mảng ngẫu nhiên P[0…
255]
255]
Phép biến đổi được mô tả :
Phép biến đổi được mô tả :
THUẬT TOÁN RC2 –
THUẬT TOÁN RC2 –
Mã hóa
Mã hóa
Khối đầu vào 64 bits trong RC2 được biểu diễn dưới
Khối đầu vào 64 bits trong RC2 được biểu diễn dưới
dạng 4 từ 16 bits: R[0], R[1], R[2], R[3] và kết quả nơi đầu
dạng 4 từ 16 bits: R[0], R[1], R[2], R[3] và kết quả nơi đầu
ra được ghi vào chính các từ này. Thuật toán RC2 chứa
ra được ghi vào chính các từ này. Thuật toán RC2 chứa
18 chu kỳ (rounds).
18 chu kỳ (rounds).
Có 2 loại chu kỳ là “xáo trộn” (mixing round) và “nghiền
Có 2 loại chu kỳ là “xáo trộn” (mixing round) và “nghiền
nát” (mashing round).
nát” (mashing round).
THUẬT TOÁN RC2 –
THUẬT TOÁN RC2 –
Mã hóa
Mã hóa
Mixing round :
Mixing round :
đươc biểu diễn bởi công thức sau đây:
đươc biểu diễn bởi công thức sau đây: