1. Trang chủ
  2. » Luận Văn - Báo Cáo

Bài tập lớn an toàn thông tin chuẩn mã hóa dữ liệu des (data encryption standard)

24 0 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề An Toàn Thông Tin Chuẩn Mã Hóa Dữ Liệu DES (Data Encryption Standard)
Tác giả Phạm Thanh Thái
Người hướng dẫn Hoàng Đắc Thắng
Trường học Trường Đại Học Kinh Tế - Kỹ Thuật Công Nghiệp
Chuyên ngành Công Nghệ Thông Tin
Thể loại Bài Tập Lớn
Năm xuất bản 2024
Thành phố Hà Nội
Định dạng
Số trang 24
Dung lượng 1,12 MB

Nội dung

Đặc điểm kỹ thuật của DES bao gồm việc chia dữ liệu đầu vào thành các khối 64 bit và sử dụng một loạt các phép biến đổi phức tạp, bao gồm hoán đổi, thay thế và dịch chuyển bit, để tạo ra

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC KINH TẾ - KỸ THUẬT CÔNG NGHIỆP

KHOA CÔNG NGHỆ THÔNG TIN

BÀI TẬP LỚN

AN TOÀN THÔNG TIN Chuẩn Mã Hóa Dữ Liệu DES (Data Encryption Standard)

Giáo viên hướng dẫn: Hoàng Đắc Thắng

Sinh viên thực hiện: Phạm Thanh Thái

Mã số SV: 21103101146

Lớp: DHTI15A18HN

Hà Nội, tháng 7/2024

Trang 2

Mục Lục

1.Giới thiệu về Chuẩn Mã Hóa Dữ Liệu DES (Data Encryption Standard) 3

1.1 Định nghĩa 3

1.2 Vai trò và tầm quan trọng của DES 4

2 Lịch sử phát triển của Chuẩn Mã Hóa Dữ Liệu DES (Data Encryption Standard) 5

2.1 Sự ra đời của DES 5

2.2 Các phiên bản và cập nhật quan trọng 7

Tổng Kết 8

3 Kiến trúc của DES 8

3.1 Cấu trúc khối của DES 9

3.2 Mô hình Feistel 9

3.3 Các thành phần chính 10

3.4 Sơ đồ chi tiết của quá trình mã hóa và giải mã 13

Sơ đồ chi tiết của quá trình mã hóa DES: 13

4 Nguyên lý hoạt động của DES 14

4.1 Quá trình tạo khóa (Key Schedule) 14

4.2 Quá trình mã hóa dữ liệu 16

5 Đánh giá mức độ an toàn 19

5.1 Độ dài khóa và các lỗ hổng bảo mật 19

5.2 Các cuộc tấn công nổi tiếng vào DES 19

5.3 Sự ra đời của các chuẩn mã hóa mới 20

Tóm tắt 20

6 Ví dụ về DES 20

Quá trình Mã hóa và Giải mã bằng DES 20

7 Áp dụng và Hạn chế của DES 21

7.1 Áp dụng của DES 21

7.2 Hạn chế của DES 22

Tổng kết 22

8 Triển vọng và tương lai của DES 22

8.1 Triển vọng của DES: 22

8.2 Nhược điểm và tương lai của DES: 23

8.3 Xu hướng phát triển: 23

Trang 3

1.Giới thiệu về Chuẩn Mã Hóa Dữ Liệu DES (Data Encryption Standard)

1.1 Định nghĩa

Data Encryption Standard (DES) là một thuật toán mã hóa đối xứng, được phát triển bởi IBM vào những năm 1970 Sau đó, nó được chuẩn hóa bởi Viện Tiêu chuẩn và Công nghệ Quốc gia Hoa Kỳ (NIST), trở thành tiêu chuẩn mã hóa dữ liệu của chính phủ Hoa Kỳ DES sử dụng một khóa đối xứng 56 bit để mãhóa và giải mã dữ liệu Điều này có nghĩa là cùng một khóa được sử dụng cho

cả hai quá trình mã hóa và giải mã, làm cho DES trở thành một hệ thống mã hóa đối xứng Khóa đối xứng đơn giản hóa quá trình mã hóa và giải mã, nhưng cũng đòi hỏi việc bảo vệ khóa phải được thực hiện cẩn thận vì nếu khóa bị lộ,

dữ liệu mã hóa có thể bị giải mã dễ dàng

Đặc điểm kỹ thuật của DES bao gồm việc chia dữ liệu đầu vào thành các khối 64 bit và sử dụng một loạt các phép biến đổi phức tạp, bao gồm hoán đổi, thay thế và dịch chuyển bit, để tạo ra dữ liệu mã hóa Mô hình Feistel, được sử dụng trong DES, đảm bảo rằng quá trình mã hóa và giải mã có thể thực hiện ngược lại bằng cách sử dụng cùng một thuật toán nhưng với các khóa con ngược lại

Trang 4

1.2 Vai trò và tầm quan trọng của DES

DES đã đóng một vai trò quan trọng trong lĩnh vực bảo mật thông tin kể

từ khi được công bố vào năm 1977 Nó được sử dụng rộng rãi trong nhiều ứng dụng, từ các giao dịch tài chính đến các hệ thống truyền thông bảo mật Việc chuẩn hóa DES đã cung cấp một tiêu chuẩn chung cho các tổ chức và công ty trên toàn thế giới, giúp đảm bảo rằng dữ liệu được bảo vệ một cách nhất quán

và hiệu quả

Giao dịch tài chính và ngân hàng:

Trong ngành tài chính, việc bảo vệ thông tin nhạy cảm là rất quan trọng DES đã được sử dụng để mã hóa các giao dịch tài chính, bảo vệ thông tin thẻ tíndụng và dữ liệu ngân hàng, đảm bảo rằng thông tin này không thể bị truy cập bởi các bên không được phép Nhiều máy ATM và hệ thống ngân hàng trực tuyến đã sử dụng DES để bảo vệ thông tin của khách hàng trong nhiều năm

Truyền thông bảo mật:

Trong lĩnh vực truyền thông, DES đã giúp bảo vệ các cuộc hội thoại và dữ liệu truyền tải qua mạng Điều này đặc biệt quan trọng trong các ứng dụng quân sự và chính phủ, nơi mà việc bảo mật thông tin là tối quan trọng

Giá trị lịch sử và học thuật:

Trang 5

Mặc dù hiện tại đã có những chuẩn mã hóa mạnh hơn như AES, DES vẫn cógiá trị lịch sử và học thuật quan trọng DES đã thiết lập các tiêu chuẩn cơ bản trong lĩnh vực mật mã học và cung cấp một nền tảng cho các nghiên cứu và phát triển về mã hóa sau này Các nguyên lý và kỹ thuật được giới thiệu bởi DES, như mô hình Feistel và việc sử dụng S-boxes, đã trở thành nền tảng cho nhiều thuật toán mã hóa hiện đại.

Chuyển đổi sang các tiêu chuẩn mới:

Sự phát triển của công nghệ đã làm cho DES trở nên dễ bị tấn công force, khi mà việc thử tất cả các khóa khả dụng trở nên khả thi với các hệ thống máy tính hiện đại Điều này đã dẫn đến sự phát triển của các tiêu chuẩn

brute-mã hóa mới như Triple DES (3DES) và Advanced Encryption Standard (AES) 3DES sử dụng ba khóa DES khác nhau và thực hiện ba lần mã hóa để tăng độ phức tạp và bảo mật, trong khi AES cung cấp mức độ bảo mật cao hơn với các khóa có độ dài 128, 192 hoặc 256 bit

Trong tổng thể, DES đã đóng góp quan trọng vào việc phát triển các tiêu chuẩn bảo mật thông tin và tiếp tục là một phần quan trọng trong lịch sử của mật mã học Việc hiểu rõ về DES và các kỹ thuật của nó giúp chúng ta có cái nhìn sâu sắc hơn về sự tiến bộ của các phương pháp bảo mật và các thách thức trong lĩnh vực này

2 Lịch sử phát triển của Chuẩn Mã Hóa Dữ Liệu DES (Data Encryption Standard)

2.1 Sự ra đời của DES

Data Encryption Standard (DES) là kết quả của những nỗ lực nghiên cứu

và phát triển trong lĩnh vực mật mã học vào những năm 1970 Quá trình phát triển DES có thể được chia thành nhiều giai đoạn quan trọng, phản ánh sự hợp tác giữa các cơ quan chính phủ, các tổ chức nghiên cứu và các công ty công nghệ

1971 - 1972: Khởi đầu từ IBM

IBM, một trong những công ty công nghệ hàng đầu thời bấy giờ, bắt đầu nghiên cứu về một thuật toán mã hóa mới để bảo vệ thông tin Nhà mật mã

Trang 6

học Horst Feistel và các đồng nghiệp tại IBM đã phát triển một thuật toán mã hóa khối gọi là "Lucifer" Lucifer sử dụng một cấu trúc Feistel, bao gồm việc chia

dữ liệu thành hai nửa và áp dụng các phép biến đổi lặp đi lặp lại trên các nửa này Cấu trúc này tạo nền tảng cho sự phát triển của DES sau này

1973: Cục Tiêu chuẩn Quốc gia Hoa Kỳ (NBS) vào cuộc

Nhận thức được tầm quan trọng của bảo mật thông tin, Cục Tiêu chuẩn Quốc gia Hoa Kỳ (NBS), hiện là Viện Tiêu chuẩn và Công nghệ Quốc gia (NIST), bắt đầu tìm kiếm một chuẩn mã hóa chính thức để bảo vệ thông tin máy tính NBS phát hành một yêu cầu cho các đề xuất (Request for Proposals - RFP) tìm kiếm một thuật toán mã hóa khối có thể trở thành tiêu chuẩn quốc gia

1974: IBM đệ trình Lucifer

IBM đệ trình Lucifer như một ứng viên cho tiêu chuẩn mã hóa quốc gia Thuật toán này đã gây ấn tượng với các nhà đánh giá nhờ tính bảo mật và khả năng thực thi Tuy nhiên, để trở thành một tiêu chuẩn quốc gia, Lucifer cần phải trải qua quá trình chỉnh sửa và tối ưu hóa để đáp ứng các yêu cầu cụ thể của NBS và các cơ quan liên quan

1975: Sự tham gia của NSA

Cơ quan An ninh Quốc gia Hoa Kỳ (NSA) đã tham gia vào quá trình chỉnh sửa và tối ưu hóa Lucifer Một trong những thay đổi quan trọng mà NSA đề xuất là giảm kích thước khóa từ 128 bit xuống còn 56 bit Mặc dù điều này làm giảm mức độ bảo mật của thuật toán, nhưng nó cũng giúp thuật toán trở nên nhanh chóng hơn và dễ triển khai trên các hệ thống máy tính có hạn chế về tài nguyên Sự tham gia của NSA đã gây ra nhiều tranh cãi, với một số nhà phê bình lo ngại rằng NSA có thể đã thêm các điểm yếu vào thuật toán để dễ dàng giải mã

1976: Thử nghiệm và đánh giá

Trong năm 1976, NBS đã tiến hành một loạt các thử nghiệm và đánh giá

để đảm bảo rằng thuật toán đáp ứng được các yêu cầu về bảo mật và hiệu quả.Các chuyên gia mật mã và các nhà nghiên cứu đã phân tích cẩn thận thuật toán

Trang 7

để tìm ra bất kỳ lỗ hổng hoặc điểm yếu nào có thể bị khai thác Quá trình này đảm bảo rằng DES có thể được sử dụng an toàn trong các ứng dụng thực tế.

1977: DES được công bố chính thức

Sau nhiều vòng thử nghiệm và đánh giá, NBS đã công bố DES như một chuẩn mã hóa chính thức với tên gọi FIPS PUB 46 vào năm 1977 DES trở thành tiêu chuẩn mã hóa dữ liệu chính thức của chính phủ Hoa Kỳ và được sử dụng rộng rãi trong nhiều ứng dụng bảo mật thông tin Sự ra đời của DES đánh dấu một bước ngoặt quan trọng trong lịch sử bảo mật thông tin, khi lần đầu tiên một chuẩn mã hóa được công nhận và áp dụng rộng rãi trên toàn cầu

Tầm ảnh hưởng của DES

Việc chuẩn hóa DES đã giúp tạo ra một tiêu chuẩn chung cho các tổ chức

và công ty trên toàn thế giới, đảm bảo rằng dữ liệu được bảo vệ một cách nhất quán và hiệu quả DES đã trở thành tiêu chuẩn de facto trong nhiều ngành côngnghiệp, từ tài chính, ngân hàng, đến truyền thông và quân sự Nó cũng trở thành nền tảng cho nhiều nghiên cứu và phát triển trong lĩnh vực mật mã học, giúp thúc đẩy sự tiến bộ trong các kỹ thuật mã hóa và bảo mật

2.2 Các phiên bản và cập nhật quan trọng

Mặc dù DES đã trở thành một tiêu chuẩn mã hóa phổ biến, nhưng nó cũng phải đối mặt với nhiều thách thức và yêu cầu cập nhật để duy trì mức độ bảo mật cần thiết trong bối cảnh công nghệ ngày càng phát triển DES đã trải qua nhiều phiên bản và cập nhật quan trọng, mỗi phiên bản nhằm cải thiện bảomật và khả năng sử dụng của thuật toán

1988: FIPS PUB 46-1

Phiên bản FIPS PUB 46-1 được công bố vào năm 1988, với một số thay đổi nhỏ so với phiên bản gốc Các thay đổi này bao gồm việc cung cấp thêm hướng dẫn về cách sử dụng DES an toàn trong các ứng dụng thực tế, cũng như làm rõ một số chi tiết kỹ thuật về cách triển khai DES Mục tiêu của phiên bản này là đảm bảo rằng DES có thể được sử dụng một cách an toàn và hiệu quả trong nhiều loại hệ thống khác nhau, từ các hệ thống máy tính cá nhân đến các

hệ thống lớn hơn

1993: FIPS PUB 46-2 và Triple DES

Nhận thức được sự tiến bộ nhanh chóng của công nghệ tính toán và sự giatăng của các mối đe dọa bảo mật, FIPS PUB 46-2 được công bố vào năm 1993

Trang 8

Phiên bản này cho phép sử dụng Triple DES (3DES) để tăng cường bảo mật Triple DES sử dụng ba khóa DES riêng biệt và thực hiện ba lần mã hóa liên tiếp:

mã hóa bằng khóa thứ nhất, giải mã bằng khóa thứ hai, và mã hóa lại bằng khóa thứ ba Kỹ thuật này làm tăng đáng kể độ phức tạp của việc phá mã và kéo dài thời gian cần thiết để thực hiện các cuộc tấn công brute-force

1999: FIPS PUB 46-3

FIPS PUB 46-3 được công bố vào năm 1999, chính thức công nhận 3DESnhư một thay thế cho DES đơn giản Phiên bản này cung cấp thêm hướng dẫn vềviệc chuyển đổi sang các thuật toán mã hóa mạnh hơn như Advanced

Encryption Standard (AES) Việc công nhận 3DES và khuyến khích sử dụng AES đã giúp đảm bảo rằng các hệ thống bảo mật có thể tiếp tục được bảo vệ một cách hiệu quả trước các mối đe dọa ngày càng tăng

2005: Sự kết thúc của DES như một tiêu chuẩn

Vào năm 2005, NIST chính thức tuyên bố rằng DES không còn đủ an toàn cho các ứng dụng bảo mật quan trọng và khuyến nghị sử dụng các thuật toán mã hóa mạnh hơn như AES Tuy nhiên, DES vẫn được sử dụng trong một

số ứng dụng không yêu cầu mức độ bảo mật cao, và nó vẫn giữ một vai trò quantrọng trong lịch sử mật mã học

Tầm quan trọng của các phiên bản và cập nhật

Các phiên bản và cập nhật của DES không chỉ cải thiện mức độ bảo mật của thuật toán mà còn đảm bảo rằng DES có thể thích ứng với các thay đổi trongmôi trường công nghệ và yêu cầu bảo mật Việc chuyển từ DES đơn giản sang 3DES và sau đó là AES cho thấy sự phát triển liên tục và nỗ lực không ngừng của cộng đồng mật mã học để bảo vệ thông tin trong một thế giới ngày càng phức tạp và đầy rẫy các mối đe dọa

3 Kiến trúc của DES

Kiến trúc của DES (Data Encryption Standard) là một trong những yếu tố quan trọng quyết định hiệu quả và độ bảo mật của thuật toán này DES được thiết kế dựa trên cấu trúc khối và mô hình Feistel, bao gồm nhiều thành phần và

Trang 9

các bước thực hiện phức tạp để đảm bảo dữ liệu được mã hóa một cách an toàn Dưới đây là phân tích chi tiết về kiến trúc của DES.

3.1 Cấu trúc khối của DES

DES là một thuật toán mã hóa khối, có nghĩa là nó xử lý dữ liệu đầu vào theotừng khối cố định thay vì từng bit hoặc byte riêng lẻ Kích thước khối của DES

là 64 bit, tức là mỗi khối dữ liệu 64 bit sẽ được mã hóa hoặc giải mã cùng một lúc Điều này khác biệt với các thuật toán mã hóa dòng, nơi dữ liệu được xử lý từng bit hoặc từng byte một

Khối dữ liệu 64 bit: Mỗi khối dữ liệu 64 bit sẽ trải qua một loạt các phép

biến đổi, bao gồm hoán đổi, thay thế và hoán vị, để tạo ra khối dữ liệu

mã hóa

Khóa đối xứng 56 bit: DES sử dụng một khóa đối xứng có độ dài 56 bit

để điều khiển các phép biến đổi trong quá trình mã hóa và giải mã

3.2 Mô hình Feistel

Mô hình Feistel là một trong những cấu trúc chính của DES, cung cấp cơ sở cho các phép biến đổi phức tạp cần thiết để đảm bảo tính bảo mật Mô hình này được đặt tên theo nhà mật mã học Horst Feistel, người đã phát triển nguyên tắc

cơ bản của mô hình này

Vòng lặp Feistel: DES sử dụng 16 vòng lặp Feistel, mỗi vòng lặp bao gồm

các phép biến đổi khác nhau và sử dụng một khóa con riêng biệt được sinh ra từ khóa chính Mỗi vòng lặp thực hiện các bước sau:

o Chia khối dữ liệu: Khối dữ liệu 64 bit được chia thành hai nửa 32

bit, gọi là Left (L) và Right (R)

o Hàm Feistel (f-function): Phần Right (R) sẽ được xử lý qua một

hàm Feistel với khóa con tương ứng Kết quả của hàm Feistel sẽ được XOR với phần Left (L) để tạo ra phần Right mới cho vòng lặp tiếp theo

o Hoán đổi (Swap): Sau mỗi vòng lặp, hai phần Left và Right sẽ được

hoán đổi cho nhau

Một điểm đặc biệt của mô hình Feistel là tính chất đối xứng của nó, cho phép quá trình mã hóa và giải mã sử dụng cùng một cấu trúc nhưng với thứ tự khóa con ngược lại

Trang 10

3.3 Các thành phần chính

Các thành phần chính của DES bao gồm khóa con, các S-box, và các P-box, mỗi thành phần đóng một vai trò quan trọng trong việc đảm bảo tính bảo mật và phức tạp của quá trình mã hóa

Subkeys (Khóa con): Từ khóa chính 56 bit, 16 khóa con sẽ được sinh ra,

mỗi khóa có độ dài 48 bit Các khóa con này sẽ được sử dụng trong từng vòng lặp Feistel để điều khiển các phép biến đổi

o Sinh khóa con: Quá trình sinh khóa con bao gồm các bước hoán vị

và dịch chuyển bit, đảm bảo rằng mỗi khóa con là một biến thể khác biệt của khóa chính

S-boxes (Hộp thay thế): DES sử dụng 8 S-box, mỗi S-box thực hiện một

phép thay thế không tuyến tính trên 6 bit đầu vào để tạo ra 4 bit đầu ra

o Chức năng của S-box: S-box tạo ra sự phức tạp và khó dự đoán

cho thuật toán mã hóa bằng cách thay thế các bit đầu vào theo một bảng thay thế đã được định sẵn Đây là bước quan trọng để chống lại các cuộc tấn công tuyến tính và khác

Trang 12

P-boxes (Hộp hoán vị): P-box thực hiện hoán vị các bit để tăng tính phức

tạp của mã hóa

o Chức năng của P-box: P-box đảm bảo rằng các bit đầu ra của S-box

được phân phối lại theo một mẫu xác định, làm tăng tính bảo mật của quá trình mã hóa bằng cách làm mờ đi các quan hệ trực tiếp giữa các bit đầu vào và đầu ra

Trang 13

3.4 Sơ đồ chi tiết của quá trình mã hóa và giải mã

Quá trình mã hóa và giải mã trong DES bao gồm nhiều bước cụ thể, mỗi bước đóng một vai trò quan trọng trong việc đảm bảo tính bảo mật và độ phức tạp của thuật toán

Initial Permutation (IP): Bước hoán vị ban đầu trên khối dữ liệu 64 bit,

sắp xếp lại các bit theo một mẫu xác định trước khi đưa dữ liệu vào các vòng lặp Feistel Hoán vị này không có tác dụng mã hóa nhưng chuẩn bị

dữ liệu cho các bước tiếp theo

16 Vòng lặp Feistel: Các bước chi tiết trong mỗi vòng lặp bao gồm:

o Chia khối dữ liệu: Khối dữ liệu 64 bit được chia thành hai nửa 32

bit, Left (L) và Right (R)

o Áp dụng hàm Feistel (f-function): Phần Right (R) sẽ được kết hợp

với khóa con thông qua một hàm Feistel Hàm Feistel bao gồm các bước mở rộng, thay thế thông qua các S-box và hoán vị thông qua các P-box

o XOR với phần Left (L): Kết quả của hàm Feistel sẽ được XOR với

phần Left (L) để tạo ra phần Right mới cho vòng lặp tiếp theo

o Hoán đổi (Swap): Sau mỗi vòng lặp, hai phần Left và Right sẽ được

hoán đổi cho nhau

Final Permutation (FP): Sau 16 vòng lặp Feistel, khối dữ liệu sẽ trải qua

một bước hoán vị cuối cùng, đảo ngược lại các bit theo một mẫu xác định.Bước này giúp hoàn thiện quá trình mã hóa và chuẩn bị dữ liệu để xuất ra dưới dạng mã hóa

Quá trình giải mã: Quá trình giải mã trong DES thực hiện ngược lại các

bước của quá trình mã hóa Sử dụng cùng một khóa con nhưng theo thứ tựngược, dữ liệu mã hóa sẽ được chuyển đổi trở lại thành dữ liệu gốc Tính đối xứng của mô hình Feistel đảm bảo rằng quá trình giải mã có thể thực hiện một cách hiệu quả bằng cách đảo ngược các bước mã hóa

Ngày đăng: 09/01/2025, 15:46

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

TÀI LIỆU LIÊN QUAN