intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Giáo trình An toàn mạng

Chia sẻ: Trần Linh | Ngày: | Loại File: PDF | Số trang:107

516
lượt xem
162
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Cuốn sách Giáo trình an toàn mạng cung cấp các kiến thức, thủ thuật phương thức để bảo đảm an toàn mạng trong quá trình sử dụng. Đây là tài liệu học tập, tham khảo dành cho sinh viên, giảng viên ngành Quản trị mạng máy tính.

Chủ đề:
Lưu

Nội dung Text: Giáo trình An toàn mạng

  1. CHƯƠNG 1 – TỔNG QUAN VỀ AN NINH MẠNG 1.1. Đối tượng và phương pháp nghiên cứu  Bảo mật hệ thống thông tin Thông tin cho có giá trị cao khi đảm bảo tính chính xác và kịp thời, hệ thống chỉ có thể cung cấp các thông tin có giá trị thực sự khi các chức năng của hệ thống đảm bảo hoạt động đúng đắn. Mục tiêu của việc đảm bảo an toàn an ninh cho hệ thống thông tin là đưa ra các giải pháp và ứng dụng các giải pháp này vào hệ thống để loại trừ hoặc giảm bớt các nguy hiểm. Hiện nay các cuộc tấn công ngày càng tinh vi, gây ra mối đe dọa tới sự an toàn thông tin. Các cuộc tấn công có thể đến từ nhiều hướng theo các cách khác nhau, do đó cần phải đưa ra các chính sách và biện pháp đề phòng cần thiết.  Các nguy cơ đe dọa Có rất nhiều nguy cơ ảnh hưởng đến sự an toàn của một hệ thống thông tin. Các nguy cơ này có thể xuất phát từ các hành vi tấn công trái phép bên ngoài hoặc từ bản thân các lỗ hổng bên trong hệ thống. Tất cả các hệ thống đều mang trong mình lỗ hổng hay điểm yếu. Nhìn một cách khái quát, ta có thể phân ra thành các loại điểm yếu chính sau:  Phần mềm: Việc lập trình phần mềm đã ẩn chứa sẵn các lỗ hổng. Theo ước tính cứ 1000 dòng mã sẽ có trung bình từ 5-15 lỗi, trong khi các Hệ điều hành được xấy dựng từ hàng triệu dòng mã(Windows: 50 triệu dòng mã).  Phần cứng: Lỗi thiết bị phần cứng như Firewall, Router, . . .  Chính sách: Đề ra các quy định không phù hợp, không đảm bảo an ninh, ví dụ như chính sách về xác thực, qui định về nghĩa vụ và trách nhiệm người dùng trong hệ thống.  Sử dụng: Cho dù hệ thống được trang bị hiện đại đến đâu do những do con người sử dụng và quản lý, sự sai sót và bất cẩn của người dùng có thể gây ra những lỗ hổng nghiêm trọng.  Một số ví dụ về bảo vệ an toàn thông tin  Truyền file: A và B trao đổi thông tin riêng tư A B C giữ chặn thông tin trao đổi giữa A và B C 1
  2.  Trao đổi thông điệp Danh sách Danh sách NSD NSD đã sửa đổi A B C giữ chặn danh C gửi danh sách NSD và sách được sửa đổi danh sửa đổi cho sách B C  Giả mạo A không thông tin Danh sách cho B giả mạo A B C giả mạo A, gửi danh sách mới đến B C Qua thực tế người ta nhận thấy rằng, vấn đề bảo mật trong hệ thống mạng hay liên mạng là một bài toán rất phức tạp, vì: - Không tồn tại phương pháp thích hợp cho mọi trường hợp - Các cơ chế bảo mật luôn đi đôi với các biện pháp đối phó - Lựa chọn những giải pháp cụ thể đối với từng ngữ cảnh cụ thể. 1.2. Các dịch vụ, cơ chế an toàn an ninh thông tin và các dạng tấn công vào hệ thống mạng.  Phân loại các dịch vụ an toàn an ninh, bao gồm: - Bảo mật riêng tư - Xác thực - Toàn vẹn thông tin - Tính không thể từ chối - Kiểm soát truy cập - Tính sẵn sàng  Các cơ chế an toàn an ninh - Trên thực tế không tồn tại một cơ chế duy nhất nào có thể đảm bảo an toàn thông tin cho mọi hệ thống. - Để đảm bao an toàn an ninh cho hệ thống thông tin người ta sử các kỹ thuật mã hóa: Mã đối xứng, mã công khai 2
  3. - Sử dụng Firewall, hệ thống phát hiện xâm nhập - IDS , và các biện pháp phối hợp khác.  Các dạng tấn công, được chia làm 2 loại: - Tấn công chủ động - Tấn công thụ động 1.3. Các dạng tấn công Đối với các hành vi tấn công từ bên ngoài, ta có thể chia thành hai loại là: tấn công thụ động và tấn công chủ động. “Thụ động” và “chủ động” ở đây được hiểu theo nghĩa có can thiệp vào nội dung và vào luồng thông tin trao đổi hay không. Tấn công “thụ động” chỉ nhằm đạt mục tiêu cuối cùng là nắm bắt được thông tin, không biết được nội dung nhưng cũng có thể dò ra được người gửi, người nhận nhờ vào thông tin điều khiển giao thức chứa trong phần đầu của các gói tin. Hơn thế nữa, kẻ xấu còn có thể kiểm tra được số lượng, độ dài và tần số trao đổi để biết được đặc tính trao đổi của dữ liệu. Một số hình thức tấn công điển hình: a) Các hành vi dò quét: Bất cứ sự xâm nhập vào một môi trường mạng nào đều bắt đầu bằng cách thăm dò để tập hợp thông tin người dùng, cấu trúc hệ thống bên trong và điểm yếu bảo mật. Việc thăm dò được thăm dò theo các bước thăm dò thụ động(thu thập các thông tin được công khai) và thăm dò chủ động(sử dụng các công cụ để tìm kiếm thông tin trên máy tính của nạn nhân). Các công cụ dò quét được hacker chuyên nghiệp thiết kế và công bố rộng rãi trên Internet. Các công cụ thường hày dùng: Nmap, Essential Network tools… thực hiện các hành động Ping Sweep, Packet Sniffer, DNS Zone Transfer… b) Tấn công từ chối dịch vụ( Denial Service Attacks): Đây là kiểu tấn công khó phòng chống nhất và trên thế giới vẫn chưa có cách phòng chống triệt để. Nguyên tắc chung của cách tấn công này là hacker sẽ gửi liên tục nhiều yêu cầu phục vụ đến máy nạn nhân. Máy bị tấn công sẽ phải trả lời tất cả các yêu cầu này. Khi yêu cầu gửi đến quá nhiều, máy bị tấn công sẽ không phục vụ kịp thời dẫn đến việc đáp ứng các yêu cầu của các máy hợp lệ sẽ bị chậm trễ, thậm chí ngừng hẳn hoặc có thể cho phép hacker nắm quyền điều khiển. 3
  4. c) Các hành vi khai thác lỗ hổng bảo mật: Các hệ điều hành, cơ sở dữ liệu, các ứng dụng luôn luôn có những điểm yếu xuất hiện hàng tuần thậm chí hàng ngày. Những điểm yếu này thường xuyên được công bố rộng rãi trên nhiều website về bảo mật. Do vậy các yếu điểm của hệ thống là nguyên nhân chính của các tấn công, một thống kê cho thấy hơn 90% các tấn công đều dựa trên các lỗ hổng bảo mật đã được công bố. Đối với một hệ thống mạng có nhiều máy chủ máy trạm, việc cập nhật các bản vá lỗ hổng bảo mật là một công việc đòi hỏi tốn nhiều thời gian và khó có thể làm triệt để. Và do đó, việc tồn tại các lỗ hổng bảo mật tại một số điểm trên mạng là một điều chắc chắn. Người ta định nghĩa Tấn công Zero-Day là các cuộc tấn công diễn ra ngay khi lỗi được công bố và chưa xuất hiện bản vá lỗi. Như vậy kiểu tấn công này rất nguy hiểm vì các hệ thống bảo mật thông thường không thể phát hiện ra. d) Các tấn công vào ứng dụng(Application-Level Attacks): Đây là các tấn công nhằm vào các phần mềm ứng dụng mức dịch vụ. Thông thường các tấn công này, nếu thành công, sẽ cho phép kẻ xâm nhập nắm được quyền điều khiển các dịch vụ và thậm chí cả quyền điều khiển máy chủ bị tấn công. Số lượng các vụ tấn công liên tục tăng trong khi hình thức tấn công theo kiểu dựa trên điểm yếu của con người (tấn công kiểu Sophistication) lại giảm. Rõ ràng các hình thức tấn công vào hệ thống máy tính hiện nay ngày càng đa dạng và phức tạp với trình độ kỹ thuật rất cao. Ngoài ra quá trình tấn công ngày càng được tự động hóa với những công cụ nhỏ được phát tán khắp nơi trên mạng 4
  5.  Các dạng tấn công thụ động: - Giải phóng nội dung của thông điệp: ngăn chặn đối phương thu và tìm hiểu nội dung của thông tin truyền tải. - Phân tích tải: Khi phân tích tải đối phương có thể xác định được vị trí của các máy tham gia vào quá trình truyền tin; tần suất và kích thước bản tin. Dạng tấn công thụ động rất khó phát hiện vì không làm thay đổi dữ liệu, với dạng tấn công này người ta quan tâm đến vấn để ngăn chặn hơn là vấn đề phát hiện.  Các dạng tấn công chủ động: - Giả danh - Phát lại - Thay đổi nội dung thông điệp - Từ chối dịch vụ Dạng tấn công chủ động rất khó có thể ngăn chặn tuyệt đối. Vì vậy yêu cầu phải bảo vệ vật lý mọi đường truyền thông tại mọi thời điểm. Mục tiêu an toàn của dạng tấn công này là có thể phát hiện và phục hồi lại thông tin từ mọi trường hợp bị phá hủy và làm trễ. 1.4. Các dịch vụ an toàn an ninh. Các dịch vụ an toàn an ninh của hệ thống thông tin phải đảm bảo các yêu cầu sau: 5
  6.  Đảm bảo tính tin cậy: Thông tin không thể bị truy nhập trái phép bởi những người không có thẩm quyền.  Đảm bảo tính nguyên vẹn: Thông tin không thể bị sửa đổi, bị làm giả bởi những người không có thẩm quyền.  Đảm bảo tính sẵn sàng: Thông tin luôn sẵn sàng để đáp ứng sử dụng cho người có thẩm quyền.  Đảm bảo tính không thể từ chối: Thông tin được cam kết về mặt pháp luật của người cung cấp.  Đảm bảo tính riêng tư: Bảo vệ dữ liệu được truyền tải khỏi các tân công thụ động.  Kiểm soát truy cập: Cung cấp khả năng giới hạn và kiểm soát các truy cập tới các máy chủ hoặc tới các ứng dụng thông qua đường truyền tin. 1.5. Các mô hình an toàn an ninh mạng.  Mô hình an toàn mạng: bài toán an toàn an ninh thông tin mạng nảy sinh khi:  Cần thiết phải bạo vệ quá trình truyền tin khỏi các hành động truy cập trái phép  Đảm bảo tính riêng tư và tính toàn vẹn  Đảm bảo tính xác thực, . . . Mô hình an toàn mạng yêu cầu: - Thiết kế một giải thuật thích hợp cho việc chuyển đổi liên quan đến an toàn - Tạo ra thông tin bí mật (khóa) đi kèm với giải thuật - Phát triển các phương pháp phân bổ và chia sẻ thông tin bí mật - Đặc tả một giao thức sử dụng bởi hai bên gửi và nhận dựa trên giải thuật an toàn và thông tin bí mật, làm cơ sở cho một dịch vụ an toàn 6
  7.  Mô hình an toàn truy cập mạng: Mô hình này yêu cầu: - Lựa chọn các chức năng gác cổng thích hợp để định danh người dùng - Cài đặt các điều khiển an toàn để đảm bảo chỉ những người dùng được phép mới có thể truy nhập được vào các thông tin và tài nguyên tương ứng.  Các hệ thống máy tính đáng tin cậy có thể dùng để cài đặt mô hinh này Cần nhấn mạnh một thực tế rằng không có một hệ thống nào an toàn tuyệt đối cả. Bởi vì bất kỳ một hệ thống bảo vệ nào dù hiện đại và chắc chắn đến đâu đi nữa thì cũng có lúc bị vô hiệu hóa bởi những kẻ phá hoại có trình độ cao và có đủ thời gian. Chưa kể rằng tính an toàn của một hệ thống thông tin còn phụ thuộc rất nhiều vào việc sử dụng của con người. Từ đó có thể thấy rằng vấn đề an toàn mạng thực tế là cuộc chạy tiếp sức không ngừng và không ai dám khẳng định là có đích cuối cùng hay không. 7
  8. CHƯƠNG 2 – MỘT SỐ PHƯƠNG PHÁP ĐẢM BẢO AN TOÀN THÔNG TIN 2.1 Nguyên lý các phương pháp mã hoá đối xứng 2.1.1.Sơ đồ chung của phương pháp mã hóa đối xứng. Sơ đồ mã hóa đối xứng Mô hình hệ mã hóa đối xứng Mô hình này gồm có 5 thành phần: - Văn bản thô - Giải thuật mã hóa - Khóa bí mật - Văn bản mã hóa - Giải thuật giải mã  Giả thiết rằng : - Thuật toán mã hóa phải đủ mạnh để không thể giải mã được thông điệp nếu chỉ dựa trên duy nhất nội dung của văn bản được mã hóa. - Sự an toàn của phương pháp mã hóa đối xứng chỉ phụ thuộc vào độ bí mật của khóa mà không phụ thuộc vào độ bí mật của thuật toán. 8
  9. Mô hình hệ thống mã hóa đối xứng  Nguồn thông tin: - Tập hợp thông điệp của nguồn: Các xâu ký tự X={X1, X2, . . , XM} - Thông điệp: xâu ký tự độ dài m Xi=[xi1, xi2, . . , xim] xikA, A- bảng ký tự nguồn, thông thường A={0,1} - Mỗi một thông điệp Xi có một xác suất xuất hiện P(X=Xi)  Khóa mật mã: - Tập hợp khóa K= {K1, K2, . ., KL} - Khóa độ dài l: Ki=[ki1, . . ., kil] kijC, C- bảng ký tự khóa, thông thường C={0,1}  Mã mật: - Tập hợp thông điệp mã mật Y=[Y1, . . , YN] - Thông điệp mã mật: Yj=[yj1, . ., yjn] yjpB, B- bảng ký tự mã mật, thông thường B={0,1}  Quá trình mã hóa và giải mã: - Quá trình mã hóa: Y=Ek(X) - Quá trình giải mã:  Bên nhận giải mã thông điệp bằng khóa được phân phối: X=DK(Y)=DK(EK,R(X))  Phía tấn công: đối phương nhận được thông điệp Y, nhưng không có được khóa K. Dựa vào thông điệp Y, đối phương phải khôi phục lại hoặc K hoặc X hoặc cả hai.  Mật mã: phân loại các hệ thống mật mã - Dạng của phép toán tham gia vào mã hóa văn bản từ dạng thông thường sang dạng được mật mã hóa. 9
  10. - Số lượng khóa được dùng trong thuật toán: Hệ thống mã hóa đối xứng; Hệ thống mã hóa không đối xứng. - Phương thức mà văn bản đầu được xử lý: mã hóa khối; mã hóa dòng.  Thám mã( phá mã): Là nỗ lực giải mã văn bản đã được mã hóa không biết trước khóa bí mật. Có hai phương pháp phá mã - Vét cạn : Thử tất cả các khóa có thể  Về lý thuyết có thể thử tất cả các giá trị khóa cho đến khi tìm thấy văn bản thô từ văn bản mã hóa  Dựa trên giả thiết có thể nhận biết được văn bản thô cần tìm  Tính trung bình cần thử một nửa tổng số các trường hợp có thể  Thực tế không khả khi nếu độ dài khóa lớn - Dùng kỹ thuật :  Khai thác những nhược điểm của giải thuật  Dựa trên những đặc trưng chung của văn bản thô hoặc một số cặp văn bản thô - văn bản mã hóa mẫu Các kỹ thuật phá mã: - Chỉ biết văn bản được mã hóa: Chỉ biết giải thuật mã hóa và văn bản mã hóa ; - Biết một số văn bản gốc và mật mã tương ứng: Biết thêm một số cặp văn bản thô - văn bản mã hóa ; - Tấn công bằng văn bản rõ được lựa chọn trước: Chọn 1 văn bản thô, biết văn bản mã hóa tương ứng ; - Tấn công bằng mật mã cho trước: Chọn 1 văn bản mã hóa, biết văn bản thô tương ứng ; - Tấn công bằng bản rõ tùy chọn: Kết hợp chọn văn bản thô và chọn văn bản mã hóa.  An toàn hệ mã hóa: - Sơ đồ mã hóa được coi là an toàn vô điều kiện: Văn bản mã hóa không chứa đủ thông tin để xác định duy nhất văn bản thô tương ứng, bất kể với số lượng bao nhiêu và tốc độ máy tính thế nào - Sơ đồ mã hóa được coi là an toàn theo tính toán:  Chi phí phá mã vượt quá giá trị thông tin  Thời gian phá mã vượt quá tuổi thọ thông tin 2.1.2.Một số phương pháp mã hóa đối xứng kinh điển 2.1.2.1.Mã Caesar. Là hệ mã hóa thay thế sớm nhất và đơn giản nhất. Được sử dụng đầu tiên bởi Julius Caesar vào mục đích quân sự. Nội dung:  Các ký tự chữ cái được gán giá trị(a=1, b=2, . . .) 10
  11. C=E(p)=(p+k) mod 26, k=1, 2, . ., 25  k là khóa mật mã  Quá trình giải mã: p=D(C)=(C-K) mod 26 Các vấn đề của mã Caesar:  Thuật tóan mã hóa và giải mã đã biết trước  Thám mã: - Không gian khóa nhỏ: chỉ có 25 khóa; - Khi thám mã bằng phương pháp vét cạn: chỉ cần thử với 25 khóa.  Ngôn ngữ trong bản gốc đã biết trước và dễ dàng nhận biết. 2.1.2.2.Mã mật Hill. Thuật toán mã hóa:  Mỗi ký tự được gán giá trị số: a=0, b=1, . ., z=25  Lựa chọn m ký tự liên tiếp của văn bản gốc  Thay thế các ký tự đã lựa chọn bằng m ký tự mã mật, được tính bằng m phương trình tuyến tính  Hệ phương trình mã hóa: C=KP mod 26; K – là ma trận khóa Thuật toán giải mã: P=K-1C mod 26 Ví dụ: với m=3 hệ phương trình truyến tính có dạng sau: c1 = (k11P1 + k12P2 + k13P3) mod 26 c2 = (k21P1 + k22P2 + k23P3) mod 26 c3 = (k31P1 + k32P2 + k33P3) mod 26 Hệ phương trình này có thể biểu diễn theo vecto cột và ma trận sau: hoặc C=KP mod 26 Ma trận K là ma trận khóa mật mã, giả sử 11
  12. Giả sử mã hóa xâu ký tự: “paymoremoney” Ba ký tự đầu tiên của văn bản được biểu diễn bằng vector Tiếp tục tính toán ta thu được sâu ký tự mã hóa là: LNSHDLEWMTRW Giải mã: giải mã thông điệp bằng ma trận K-1 2.1.2.3.Hệ thống Vernam. • Để chống lại quá trình thám mã, cần lựa chọn khoá thoả mãn:  Khoá có độ dài bằng văn bản rõ.  Khóa được chọn sao cho khoá và văn bản gốc độc lập thống kê. • Hệ mã mật Vernam:  Dùng cho mã nhị phân  Ci= piki  pi: bit thứ i của văn bản gốc;  ki: bit thứ i của khoá;  Ci: bit thứ i của văn bản được mã hoá;  : phép toán XOR. • Giải mã bằng phép toán ngược: pi= Ciki • Tạokhoá: tạo vòng lặp với một khoá. Như vậy thực tế, hệ thống làm việc với một khóa rất dài nhưng lặp lại. • Hệ thống Vernam có thể bị phá nếu đối phương biết một văn bản mã có độ dài đủ lớn, sử dụng một số văn bản gốc đã biết. • Với khoá được sinh ngẫu nhiên, có độ dài bằng độ dài văn bản gốc, không lặp lại: sơ đồ mã sử dụng mộtlần: không thể phá khoá. Đầu ra độc lập thống kê với văn bản gốc. • Vấn đề nảy sinh: đảm bảo bảo mật cho quá trình gửi và nhận khoá ngẫu nhiên. 2.1.2.4.Mã hóa khối.  Định nghĩa mã hóa khối: • Mã khối là mật mã khóa đối xứng thực hiện trên nhóm bit có độ dài cố định. Nhóm bit này được gọi là một khối.Quá trình chuyển đổi không thay đổi. 12
  13. • Khi mã hóa, mã khối có thể thực hiện trên từng khối độ dài 128 bit của bản rõ tại đầu vào thứ nhất và cho ra khối của mã mật.  Quá trình biến đổi được kiểm soát bằng đầu vào thứ hai: khóa mật Quá trình giải mã thực hiện tương tự: nhận tại đầu vào thứ nhất khối 128 bit của mật mã, khóa mật và tại đầu ra ta nhận được khối 128 bit của bản rõ. • Để mã hóa bản tin có độ dài lớn hơn kích thước khối, (ví dụ 128 bit ), các chế độ xử lý( mode of operation )được sử dụng. • Mã hóa khối tương phản với mãhóa dòng (stream cipher ), trong đó mỗi ký tự được thao tác một lần và quá trình chuyển đổi thay đổi trong suốt quá trình mã hóa. • Ví dụ mã hóa khối:  Thuật toán DES do công ty IBM xây dựng và công bố năm 1977.  Hậu duệ của DES, Advanced Encryption Standard (AES), ra đời năm 2001. • Mật mã khối gồm một cặp thuật toán:  Thuật toán mã hóa, E,và  Thuật toán giải mã, E-1. • Cả hai thuật toán đều có hai đầu vào:  Khối dữ liệu đầu vào kích thước n bit và  Khóa độ dài k bit. • Đầu ra là khối dữ liệu kích thước n-bit. 2.1.2.5.Mật mã dòng. • Mật mã dòng là mật mã khóa đối xứng, trong đó các ký tự của bản rõ được mã hóa lần lượt và quá trình biến đổi các ký tự tiếp theo thay đổi trong quátrình mã hóa. Một tên khác của mật mã dòng là mật mã trạng thái vì quá trình mã hóa từng ký tự phụ thuộc vào trạng thái hiện thời. Trong thực c tiễn, ký tự có thể là từng bít hoặc byte. Mật mã dòng biểu diễn cách tiếp cận khác của kỹ thuật mã hóa đối xứng dựa trên kỹ thuật mã hóa khối. Thuật toán mật mã dòng thường được thực hiện ở tốc độ cao thuật toán mã hóa khối và có phần cứng thấp hơn. Tuy nhiên mật mã dòng dễ bị các vấn đề an ninh nghiêm trọng nếu sử dụng không đúng. 2.1.3.Phương pháp DES. • DES là thuật toán mã hóa khối: nó xử lý từng khối thông tin (1 khối = 64bit) của bản rõ có độ dài xác định và biến đổi theo những quá trình phức tạp để trở thành khối thông tin của bản mã có độ dài không thay đổi. 13
  14. • DES cũng sử dụng khóa để cá biệt hóa quá trình chuyển đổi. Do vậy, chỉ khi biết khóa mới có thể giải mã được văn bản mã • Khóa dùng trong DES có độ dài toàn bộ là 64 bit. Tuy nhiên chỉ có 56 bit thực sự được sử dụng; 8 bit còn lại chỉ dùng cho việc kiểm tra. Vì thế, độ dài thực tế của khóa chỉ là 56 bit. 2.1.3.1.Sơ đồ mã hóa. • Mã hóa DES được thực hiện qua 16 vòng • Trước khi đi vào 16 chu trình chính, khối thông tin 64bit được tách làm 2 phần 32 bit và mỗi phần sẽ được xử lý tuần tự (quá trình này còn gọi là mạng Feistel). • Cấu trúc của thuật toán (mạng Feistel) đảm bảo rằng quá trình mã hóa và giải mã diễn ra tương tự. Điểm khác nhau chỉ ở chỗ các khóa con được sử dụng theo trình tự ngược nhau. 14
  15.  Quá trình mã hóa được chia làm 3 giai đoạn: • Giai đoạn 1: với bản rõ cho trước x, một xâu x’ sẽ được tạo ra bằng cách hoán vị các các bit của x theo hoán vị ban đầu IP(Initial permutation) x’= IP(x)= L0 R0; L0: 32 bit đầu; R0: 32 bit cuối • Giai đoạn 2: Tính toán 16 lần lập theo 1 hàm xác định. Ta sẽ tính LiRi (1≤ i ≤ 16) theo quy tắc Li=Ri-1 Ri = Li-1⊕ f (Ri-1, Ki) ⊕ là toán tử Xor k1, k2, k3. . . k16 là xâu bit độ dài 48 bit được tính qua hàm khoá K (ki là 1 phép hoán vị bit trong K) • Giai đoạn 3: áp dụng hoán vị ngược IP-1 cho xâu R16L16 ta thu được bản mã. 2.1.3.2.Giải mã. Do là 1 thuật toán đối xứng nên quá trình giải mã và mã hóa cũng gần giống nhau chỉ khác ở: Li=Ri-1 15
  16. Ri = Li-1⊕ f (Ri-1, K16-i) Khóa K của hàm F sẽ đi từ 16 ->0 . 2.1.3.3.Tính Hàm f(Ri , Ki ). • R là xâu bit có độ dài 32 bit • K là xâu bit có độ dài 48 bit • Đầu ra của F là xâu có đọ dài 32 bit • E là hàm mở rộng cố định: được mở rộng từ R với 16 bit của R xuất hiện 2 lần. • Thực hiện phép Xor E(R) với K • Chia xâu kết quả nhận được từ phép Xor thành các xâu 6 bit • Đưa các xâu này vào các S-Box • Hoán vị xâu nhận được theo 1 một hàm hoán vị cố định P ta thu được F(R,K) 16
  17.  S – Box (Phép thay thế)  P – Hàm hoán vị 2.1.3.4. Phá mã DES • Khóa 56 bit có 256 = 7,2 x 1016 giá trị có thể • Phương pháp vét cạn tỏ ra không thực tế • Tốc độ tính toán cao có thể phá được khóa • 1997 : 70000 máy tính phá mã DES trong 96 ngày • 1998 : Electronic Frontier Foundation (EFF) phá mã DES bằng máy chuyên dụng (250000$) trong < 3 ngày • 1999 : 100000 máy tính phá mã trong 22 giờ • Vấn đề còn phải nhận biết được văn bản thô • Thực tế DES vẫn được sử dụng không có vấn đề • Nếu cần an toàn hơn : 3DES hay chuẩn mới AES 2.1.4.Quản trị và phân phối khóa trong mã hóa đối xứng. 17
  18. 2.1.4.1.Đặt vấn đề. • Trong kỹ thuật mật mã truyền thống, hai phía tham gia vào truyền tin phải chia sẻ khoá mật ⇒ khoá phải được đảm bảo bí mật: phải duy trì được kênh mật phân phối khóa. • Khóa phải được sử dụng một lần: Khoáphải được thường xuyên thay đổi. • Mức độ an toàn của bất kỳ hệ mật sẽ phụt huộc vào kỹ thuật phân phối khoá. 2.1.4.2.Một số kỹ thuật phân phối khóa. • Phân phối khóa không tập trung: Khoá được A lựa chọn và phân phối vật lý tới B. • Phân phối khóa tập trung: Người thứ ba C lựa chọn khoá và phân phối vật lý tới A và B. • Nhận xét:  Hai kỹ thuật này khá cồng kềnh khi các bên tham gia vào trao đổi thông tin với số lượng lớn.  Nếu A và B trước đây và hiện nay đã dùng khoá, một phía có thể gửi khoá mới dùng khoá cũ để mã hoá.  Nếu A và B có kết nối mã mật với phía thứ ba C, C có thể phân phối khoá theo đường mã mật tới A và B. 2.1.4.3. Phân cấp khóa. • Việc sử dụng trung tâm phân phối khoá dựa trên cơ sở của việc phân cấp các khoá. • Trên cấp độ tối thiểu, sẽ có hai cấp khoá được sử dụng:  Việc giao tiếp giữa hai trạm đầu cuối sẽ được mã hoá bằng một khoá tạm thời gọi là khoá phiên. -Khoá phiên sẽ được sử dụng trong thời gian một kết nối lôgic như trong mạng ảo hoặc liên kết vận chuyển, sau đó sẽ được loại bỏ.  Mỗi khoá phiên sẽ được nhận từ trung tâm phân phối khoá KDC trên cùng một hạ tầng mạng với kết nối đầu cuối. -Khoá phiên được truyền dưới dạng mã hoá bằng mã chính (masterkey). Khoá chính này được chia sẻ giữa KDC và trạm đầu cuối hoặc người sử dụng. -Mỗi trạm đầu cuối sẽ có một khoá chính được chia sẻ với KDC. - Các khoá chính này phải được chia sẻ theo một cách nào đó giữa KDC và máy trạm. Số lượng các khoá chính có thể kiểm soát được: 18
  19. Nếu có N đối tượng cần tương tác với nhau theo cặp, như vậy cần có nhiều nhất N(N-1)/2 khoá phiên sẽ được sử dụng một lúc. Nhưng khi đó chỉ cần N khoá chính cho mỗi đối tượng. Như vậy các khoá chính có thể được phân phối theo đường không phải mật mã như phân phối vật lý. 2.1.4.4. Phân phối khóa. Kịch bản quá trình phân phối khóa. • Giả thiết: mội người sử dụng cùng chia sẻ một khóa mật chính với trung tâm phân phối khóa( KDC). • Tiền đề:  Người sử dụng A muốn thiết lập kết nối lôgic với người sử dụng B.  Hai phía trao đổi thông tin yêu cầu khóa phiên sử dụng một lần để bảo mật dữ liệu truyền qua kết nối.  Phía A có khóa mật KA, khóa này chỉ có A và KDC biết.  Phía B có khóa mật KB, khóa này chỉ có B và KDC biết. • A yêu cầu KDC khóa phiên để bảo mật liên kết lôgic với B.  Trong thông điệp này chứa định danh của A và B cùng với dấu hiệu nhận diện N1.  Dấu hiệu nhận diện N1 này chỉ được sử dụng một lần trong trường hợp này.  Dấu hiệu nhận diện N1 có thể là dấu thời gian, bộ đếm, hoặc là một số ngẫu nhiên.  Yêu cầu tối thiểu đối với dấu nhận diện: dấu hiệu này phải khác nhau đối với từng yêu cầu. 19
  20.  Để ngăn chặ sự giả mạo, dấu hiệu nhận diện phải khó bị đối phương dự đoán. Như vậy, số ngẫu nhiện là lựa chọn tốt. • Trung tâm phân phối khóa KDC trả lời A bằng thông điệp được mã hóa bằng khóa KA. Như vậy chỉ có A là người duy nhất có thể giải mã thành công thông điệp và A cũng xác định được nguồn gốc của thông điệp( A xác định được thông điệp là do KDC gửi tới do khóa KA chỉ có duy nhất A và KDC biết). Trong thông điệp chứa những thông tin dành cho A  Khóa phiên sử dụng một lần KS;  Thông điệp gốc cùng với dấu hiệu nhận dạng N1. Các thông tin này cho phép Aso sánh câu trả lời từ KDC với yêu cầu ban đầu. Như vậy, A có thể kiểm tra rằng yêu cầu ban đầu không bị thay đổi trước khi KDC nhận được và do có dấu hiệu nhận dạng N1nên thông điệp này không phải là phiên bản phát lại của một yêu cầu nào đó trước đó. Trong thông điệp cũng có những thông tin dành cho B:  Khóa phiên sử dụng một lần KS;  Định danh của A – IDA. Hai thông tin này được mã hóa với khóa mật KB chia sẻ giữa B và KDC. Những thông tin này được gửi cho B để thiết lập liên kết và chứng minh định danh của A. • A lưu lại khóa phiên KS để sử dụng cho liên kết sắp thiết lập và  gửi cho B những thông tin của KDC dành cho B–Ekb[KS|| IDA]. Vì những thông tin này được mã hóa bằng KB nên chúng được bảo vệ khỏi hình thức nghe trộm. Sau khi nhận được thông điệp từ A, B biết được khóa phiên KS, và biết được phía bên kia là A từ định danh của A. Thêm vào đó, B biết được những thông tin này là do KD cung cấp vì được mã hóa bằng KB–Ekb.  Như vậy từ thời điểm này, khó phiên đã được phân phối mật tới A và B. A và B có thể sử dụng khóa phiên để trao đổi thông tin. Tuy nhiên để tăng độ tin cậy cho quá trình trao đổi thông tin và ngăn chặn các khả năng tấn công, hai bước sau có thể được áp dụng: 1. B gửi tới cho Adấu hiệu nhận dạng N2 bằng cách mã hóa sử dụng khóa phiên. 2. Bằng cách sử dụng khóa phiên KS, A trả lời B bằng thông điệp f(N2), trong đó f là hàm biến đổi N2. 20
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2