1. Trang chủ
  2. » Công Nghệ Thông Tin

kỹ thuật tấn công và phòng thủ trên không gian mạn - kỹ thuật mã hóa

144 641 1

Đ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 144
Dung lượng 3 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Institute of Network Security - istudy.ispace.edu.vn MODULE 3: KỸ THUẬT MÃ HÓA • Lesson 1: Tổng quan mật mã học Cryptography • Lesson 2: Các phương pháp và thuật toán mã hóa • Lesson 3:

Trang 1

Institute of Network Security - istudy.ispace.edu.vn

KỸ THUẬT TẤN CÔNG VÀ PHÕNG THỦ TRÊN KHÔNG GIAN MẠNG

Trang 2

NỘI DUNG

• Module 1: Tổng quan An ninh mạng

• Module 2: Kỹ thuật tấn công

• Module 3: Kỹ thuật mã hóa

• Module 4: Bảo mật hệ điều hành

• Module 5: Bảo mật ứng dụng

• Module 6: Virus và các loại mã độc

• Module 7: Các công cụ phân tích an ninh mạng

• Module 8: Chính sách bảo mật và phục hồi thảm họa dữ liệu

• Ôn tập

• Báo cáo đồ án

• Thi cuối khóa

Trang 3

Institute of Network Security - istudy.ispace.edu.vn

KỸ THUẬT TẤN CÔNG VÀ PHÕNG THỦ

TRÊN KHÔNG GIAN MẠNG

• Module 1: Tổng quan An ninh mạng

• Module 2: Kỹ thuật tấn công

• Module 3: Kỹ thuật mã hóa

• Module 4: Bảo mật hệ điều hành

• Module 5: Bảo mật ứng dụng

• Module 6: Virus và các loại mã độc

• Module 7: Các công cụ phân tích an ninh mạng

• Module 8: Chính sách bảo mật và phục hồi thảm họa dữ liệu

• Ôn tập

• Báo cáo đồ án

• Thi cuối khóa

Module 3: Kỹ thuật mã hóa

Trang 4

MODULE 3: KỸ THUẬT MÃ HÓA

• Lesson 1: Tổng quan mật mã học (Cryptography)

• Lesson 2: Các phương pháp và thuật toán mã hóa

• Lesson 3: Hàm băm và ứng dụng

• Lesson 4: PKI (Public Key Infrastructure)

• Lesson 5: Các bộ giao thức bảo mật: SSL và IPSec

Trang 5

Institute of Network Security - istudy.ispace.edu.vn

MODULE 3: KỸ THUẬT MÃ HÓA

• Lesson 1: Tổng quan mật mã học (Cryptography)

• Lesson 2: Các phương pháp và thuật toán mã hóa

• Lesson 3: Hàm băm và ứng dụng

• Lesson 4: PKI (Public Key Infrastructure)

• Lesson 5: Các bộ giao thức bảo mật: SSL và IPSec

Trang 6

Tổng quan mật mã học

(Cryptography)

Trang 7

Institute of Network Security - istudy.ispace.edu.vn

Nội dung

• Khái niệm về mật mã

• Các thành tựu của mật mã học

• Một số dạng mã hóa

• Giới thiệu thuật toán mã hóa

• Sự cần thiết của khóa (Key) trong thuật toán mã hóa

• Giới thiệu về hàm băm

Trang 8

Mật mã học là gì?

• Mật mã học là những nghiên cứu và công nghệ nhằm mục đích bảo mật chuỗi dữ liệu bằng các phương pháp mã hóa

• Mã hóa là quá trình tái cấu trúc nội dung của dữ liệu, làm cho

nó trở nên phức tạp, và che giấu nội dung thật sự

• Giải mã là quá trình chuyển đổi nội dung dữ liệu đã được mã hóa thành nội dung gốc trước khi mã hóa

• Plaintext là nội dung gốc

• Ciphertext là nội dung mới sau khi mã hóa

• mật mã bao gồm hai thành phần chính

– Mã hóa đảm bảo tính bảo mật – Hàm băm đảm bảo tính xác thực

Trang 9

Institute of Network Security - istudy.ispace.edu.vn

Thành tựu của mật mã học

Trang 10

Mật mã dạng thay thế

• Mã hóa dạng thay thế thực hiện việc thay thế từng ky tự trong nội dung gốc bằng một ký tự khác Ví dụ: a=e, c=f, b=g, …

• Julius Caesar là người phát minh ra mật mã dạng thay thế, ngày nay còn gọi là mật mã Caesar

• Mã hóa dạng thay thế rất dễ bị phân tích và giải mã

• Mật mã theo dạng thay thế tuần tự các ký tự Alphabet phức tạp hơn mật mã Caesar tuy nhiên vẫn có thể bị phân tích và giải mã nếu trong chuỗi ký tự có các điểm lặp lại

Trang 11

Institute of Network Security - istudy.ispace.edu.vn

Trang 13

Institute of Network Security - istudy.ispace.edu.vn

One-Time Pads (OTP)

• OTP còn được gọi là mật mã Vernam

• OTP là dạng mật mã không thể bị phá vỡ hay phân tích

vì khóa chỉ được sử dụng một lần duy nhất

• OTP thường ít được sử dụng

– Khóa một lần là một chuỗi dữ liệu được tạo ra một cách ngẫu nhiên nên việc tạo khóa rất phức tạp

– Việc phân phối khóa cũng gặp nhiều khó khăn vì phải phân phối hai lần, một lần cho người gửi, và một lần cho người nhận

• OTP thường được sử dụng giới hạn cho những dữ liệu tối mật

Trang 14

Thuật toán mã hóa

• Thuật toán mã hóa là những phương thức nhằm biến đổi Plaintext thành Ciphertext

• Chức năng của thuật toán mã hóa:

• Chống lại các cuộc tấn công đánh cắp và phân tích dữ liệu

• Tạo ra khóa kích thước lớn và tiện dụng

• Hiệu ứng phức tạp hóa - chỉ cần một sự thay đổi nhỏ trong Plaintext thì Ciphertext sẽ thay đổi hoàn toàn

• Không dùng cho mục đích tấn công mạng

• Một số thuật toán mã hóa: DES, 3DES, AES, …

Trang 15

Institute of Network Security - istudy.ispace.edu.vn

Mã hóa khối và mã hóa dòng (Block Cipher – Stream Cipher)

• Mã hóa khối (Block Cipher)

– Mã hóa từng khối dữ liệu Plaintext có chiều dài cố định thành khối dữ liệu Ciphertext có cùng chiều dài

– Kích thước của khối phụ thuộc vào thuật toán mã hóa – Đệm bit (Padding) sẽ được dùng để thêm các bit 0, đảm bảo đúng kích thước các khối

– Khối Ciphertext luôn có kích thước lớn hơn khối Plaintext

Trang 17

Institute of Network Security - istudy.ispace.edu.vn

Mã hóa khối và mã hóa dòng (Block Cipher – Stream Cipher)

• Mã hóa dòng (Stream Cipher)

– Mã từng bit dữ liệu trong Plaintext – Kích thước dữ liệu không thay đổi khi mã hóa (không dùng Padding)

– Cơ chế chuyển đổi các bit tùy thuộc vào quá trình mã hóa

Trang 19

Institute of Network Security - istudy.ispace.edu.vn

Mã hóa

Attacker: Tôi biết giải thuật

Giải

mã Mạng không bảo mật

Giải

Plain text

-

-

-

Plain text

-

-

-

Plain text

-

-

-

Cipher text

-

-

-

Khóa (Key)

• Chỉ sử dụng thuật toán mã hóa là chưa đủ đảm bảo độ

an toàn dữ liệu

Trang 20

Mã hóa

Giải

Attacker: Tôi biết giải thuật nhưng không biết key 

Mạng không bảo mật

Plain text

-

-

-

Plain text

-

-

-

Cipher text

-

-

-

Khóa (Key)

• Khóa được thỏa thuận giữa hai bên nhắm mục đích tăng tính bảo mật cho dữ liệu

Trang 21

Institute of Network Security - istudy.ispace.edu.vn

Khóa (Key)

• Khóa là một phần của thuật toán mã hóa

• Nếu xét về phương diện khóa, có hai dạng thuật toán

mã hóa chính:

– Thuật toán mã hóa đối xứng: Sử dụng cùng một khóa cho việc

mã hóa và giải mã dữ liệu – Thuật toán mã hóa bất đối xứng: Sử dụng các khóa khác nhau cho việc mã hóa và giải mã dữ liệu

Trang 23

Institute of Network Security - istudy.ispace.edu.vn

Không gian khóa

• Không gian khóa của một thuật toán mã hóa là tất cả những giá trị có thể có của khóa

• Khóa có kích thước n bit có thể thiết lập được 2n giá trị

• Hầu hết các thuật toán mã hóa có khóa yếu, tăng kích thước khóa sẽ làm tăng độ bảo mật của thuật toán

• Có thể xảy ra một số vấn đề về bảo mật nếu tự định nghĩa khóa

Trang 24

– Hệ thống mã hóa đáng tin cậy – Cơ chế quản lý khóa an toàn

Trang 25

Institute of Network Security - istudy.ispace.edu.vn

Trang 26

Hàm băm Hàm băm

Dữ liệu gốc

có chiều dài thay đổi

Dữ liệu băm

có chiều dài

Mã hóa theo phương thức băm dữ liệu

• Băm dữ liệu dựa trên các

Trang 27

Institute of Network Security - istudy.ispace.edu.vn

Tóm lược

• Mật mã học là các nghiên cứu và công nghệ nhằm tìm ra phương thức bảo mật dữ liệu trong quá trình truyền thông

• Có hai dạng mã hóa:

– Bảo mật dữ liệu thông qua thuật toán mã hóa – Xác thực dữ liệu thông qua hàm băm

• Khóa là thành phần quan trọng trong quá trình mã hóa

• Kích thước khóa càng lớn, khóa càng phức tạp và khó tấn công giải mã

• Quá trình mã hóa có thể thực hiện trên khối hoặc thực hiện theo dòng

Trang 28

KỸ THUẬT TẤN CÔNG VÀ PHÕNG THỦ TRÊN KHÔNG GIAN MẠNG

Trang 29

Institute of Network Security - istudy.ispace.edu.vn

KỸ THUẬT TẤN CÔNG VÀ PHÕNG THỦ

TRÊN KHÔNG GIAN MẠNG

• Module 1: Tổng quan An ninh mạng

• Module 2: Kỹ thuật tấn công

• Module 3: Kỹ thuật mã hóa

• Module 4: Bảo mật hệ điều hành

• Module 5: Bảo mật ứng dụng

• Module 6: Virus và các loại mã độc

• Module 7: Các công cụ phân tích an ninh mạng

• Module 8: Chính sách bảo mật và phục hồi thảm họa dữ liệu

• Ôn tập

• Báo cáo đồ án

• Thi cuối khóa

Module 3: Kỹ thuật mã hóa

Trang 30

MODULE 3: KỸ THUẬT MÃ HÓA

• Lesson 1: Tổng quan mật mã học (Cryptography)

• Lesson 2: Các phương pháp và thuật toán mã hóa

• Lesson 3: Hàm băm và ứng dụng

• Lesson 4: PKI (Public Key Infrastructure)

• Lesson 5: Các bộ giao thức bảo mật: SSL và IPSec

Trang 31

Institute of Network Security - istudy.ispace.edu.vn

Các phương pháp và thuật toán

mã hóa

Trang 32

Nội dung

• Khái niệm về mật mã

• Các thành tựu của mật mã học

• Một số dạng mã hóa

• Giới thiệu thuật toán mã hóa

• Sự cần thiết của khóa (Key) trong thuật toán mã hóa

• Giới thiệu về hàm băm

Trang 33

Institute of Network Security - istudy.ispace.edu.vn

Plain text

- - -

- -Cipher text

- -

-

Mã hóa đối xứng (Symmetric encryption)

• Còn gọi là mã hóa khóa bí mật

• Sử dụng cùng một khóa cho cả quá trình mã hóa và giải mã

• Chiều dài khóa từ 40-256 bits

– Khóa trên 80 bits có thể xem là tin tưởng được – Khóa dưới 80 bits có thể xem là lỗi thời và cần sử dụng thuật toán mã hóa mạnh hơn

• Một số thuật toán mã hóa đối xứng: DES, 2DES, 3DES, AES, SEAL,

Trang 34

Mã hóa đối xứng: Cấu trúc Feistel

• Hầu hết các thuật toán mã hóa đối xứng thường sử dụng qui tắc trong cấu trúc Feistel:

– Thông tin gốc chia thành 2 phần P1 và P2 – P1 giữ nguyên không đổi

– P2 được XOR với một hàm băm một chiều f (biến thiên bởi khóa)

– Hai kết quả sau cùng đổi cho cho nhau

• Một quá trình như vậy được gọi là một vòng

• Sử dụng một vòng không đảm bảo sự an toàn nên người

ta đã sử dùng nhiều vòng, tính bảo mật sẽ được tăng cường

Trang 35

Institute of Network Security - istudy.ispace.edu.vn

Mã hóa đối xứng: Tiến trình Feistel

• Thông tin gốc được chia thành từng khối kích thước 2w

Trang 37

Institute of Network Security - istudy.ispace.edu.vn

Mã hóa đối xứng:

Mã hóa theo cấu trúc Feistel

• Người ta đề ra tiêu chuẩn cho các thuật toán mã hóa dựa trên cấu trúc Feistel như sau:

– Kích thước khối dữ liệu đầu vào – Chiều dài khóa

– Số vòng lặp – Thuật toán sinh khóa phụ – Hàm f thực hiện tại mỗi vòng

Trang 38

Mã hóa đối xứng: DES (Data Encryption Standard)

• DES sử dụng kỹ thuật mã hóa đối xứng được IBM phát triển vào năm 1975, khi đó gọi là Lucifer

• Thuật toán DES thực hiện một chuỗi thay thế và hoán vị khá an toàn, tuy nhiên chiều dài khóa ngăn, dễ bị tấn công Brute-force

• Thuật toán DES được thực nghiệm trong 35 năm và chưa tìm ra lỗ hổng sai sót nào

• Sử dụng khóa có chiều dài cố định 64 bits, tuy nhiên chỉ

co 56 bits dùng cho việc mã hóa

– 8 bits còn lại để xét tính chẵn lẻ, trong đó bit cuối cùng luôn đánh dấu lẻ

• Ứng dụng bảo mật sử dụng DES: SSL, IPSec, …

Trang 39

Institute of Network Security - istudy.ispace.edu.vn

Mã hóa đối xứng: Thông số DES

• Kích thước khối: 64 bits

• Chiều dài khóa: 56 bits

• Số vòng: 16

• Thuật toán sinh khóa: Kết hợp dịch trái và hoán vị

• Hàm f: kết hợp các phép XOR, hoán vị và thay thế Box)

(S-• Thực thi: Tiến trình Feistel

Trang 40

Mã hóa đối xứng:

Các chế độ mã hóa của DES

• DES khi sử dụng mã hóa khối (Block cipher) có hai chế độ:

– ECB (Electronic Code Book): Mỗi khối Plaintext được mã hóa bằng khối Ciphertext tương ứng

– CBC (Cipher Block Chaining): Sử dụng tiến trình Feistel

• Chế độ CBC được sử dụng bới IPSec trong hầu hết các trường hợp

• DES khi sử dụng mã hòa dòng (Stream cipher) có hai chế độ:

– CFB (Cipher FeedBack): Tạo ra các khối mã hóa bằng cách tổng hợp và đồng bộ liên tục các dòng mã hóa

– OFB (Output FeedBack): Khởi tạo một khói khóa dòng, sử dụng phép toán XOR với các khối Plaintext tạo ra Ciphertext

Trang 41

Institute of Network Security - istudy.ispace.edu.vn

ECB

CBC

Khóa khởi tạo

Mã hóa đối xứng: DES ECB vs CBC

Trang 42

Mã hóa đối xứng: Sử dụng DES

• Để bảo vệ dữ liệu tốt hơn, cần xét các lời khuyên sau:

– Thay đổi nội dung khóa thường xuyên, tránh tấn công force

Brute-– Trao đổi khóa giữa người gửi và người nhận trên một kênh kết nối bảo mật

– Ưu tiên thực hiện DES theo chế độ CBC, việc mã hóa khối bits phụ phải phụ thuộc vào khối trước đó

64-• DES là một giao thức mã hóa yếu, nên sử dụng cho các

dữ liệu nhỏ khi không có thuật toán thay thế nào khác

• DES thực hiệ rất nhanh và tốn ít tài nguyên phần cứng

Trang 43

Institute of Network Security - istudy.ispace.edu.vn

Mã hóa đối xứng: 3DES

• 3DES về cơ bản dựa trên DES, tuy nhiên thực hiện trong

3 lần DES

• Sử dụng 2 hoặc 3 khóa khác nhau tạo ra chiều dài khóa

112 bits hoặc 168 bits

• 3DES rất khó bị tấn công Brute-force

• Tốn nhiều tài nguyên phần cứng

• 3DES được xem là một trong những thuật toán mã hóa đối xứng đáng tin cậy nhất

Trang 44

$1000 Mã hóa Giải mã

Key K1

$%&@!

Key K2

faded Mã hóa

Key K3

• Nếu K1 = K3, chiều dài khóa là 112 bits

• Nếu k1, K2, K3 khác nhau, chiều dài khóa là 168 bits

Trang 45

Institute of Network Security - istudy.ispace.edu.vn

Mã hóa đối xứng: AES (Advance Encryption Standard)

• AES được phát triển vào năm 1997 nhằm tìm ra một phương pháp mã hóa an toàn hơn thay thế cho DES

• Được xử lý và kiểm tra nghiêm ngặt ngay từ đầu bằng việc thử dùng tới 15 thuật toán khác nhau

• Rijndael, Twofish và RC6 cuối cùng đã được chọn

• NIST quyết định lấy Rijndael làm thuật toán mã hóa cho AES

Trang 46

Mã hóa đối xứng: AES (Advance Encryption Standard)

• Mã hóa Rijndael được phát triển bởi Joan Daemen và Vincent Rijmen

• Thuật toán dựa vào kích thước khối và kích thước khóa

• AES hoạt động nhanh hơn 3DES khi chạy bằng phần mềm

• Hiện tại, AES dùng khóa 128-, 192-, 256-bits để mã hóa khối

dữ liệu 128-, 192-, 256-bits

• AES vẫn có thể được sử dụng trong một tương lai rất dài vì cả kích thước khối và kích thước khóa đều có thể tăng lên theo bội số 32 bits

• AES được chấp nhận sau quá trình kiểm tra lỗ hổng kéo dài

10 năm

• AES được xem là mạnh hơn 3DES do có chiều dài khóa lơn hơn, và thời gian tính toán, xử lý rất nhanh

Trang 47

Institute of Network Security - istudy.ispace.edu.vn

Mã hóa đối xứng: AES

• AES làm việc trên từng khối dữ liệu 4x4 hoặc 8x8 byte, chia làm 4 bước:

– AddRoundKey: Mỗi byte của khối được kết hợp với khóa con, khóa con được sinh ra từ thuật toán Rijndael (một chuỗi các biến đổ toán học phức tạp)

– SubBytes: Phép thế phi tuyến trong đó mỗi byte sẽ được thay thế bằng một Byte khác theo bảng tra S-Box

– ShiftRows: Dịch dòng, đổi chố các bit hàng ngang trong khối – MixColumns: Quá trình trộn làm việc trên các cột trong khối theo phép biến đổi tuyến tính

• Tại chu trình cuối, bước MixColumns có thể được thay thế bằng bước AddRoundKey

Trang 48

Mã hóa đối xứng: AES - AddRoundkey

Trang 49

Institute of Network Security - istudy.ispace.edu.vn

Mã hóa đối xứng: AES - SubBytes

Trang 50

Mã hóa đối xứng: AES - ShiftRows

Trang 51

Institute of Network Security - istudy.ispace.edu.vn

Mã hóa đối xứng: AES - MixColumns

Trang 53

Institute of Network Security - istudy.ispace.edu.vn

Mã hóa đối xứng: SEAL và Blowfish

• SEAL (Software-optimized Encryption Algorithm)

– Thuật toán mã hóa dòng, thực hiện theo đơn vị dữ liệu word-32 bits

– Chiều dài khóa 160 bits – Tốc độ rất nhanh (so với DES, AES) nhưng tốn nhiều RAM – Rất thích hợp với mã hóa ổ đĩa cứng

– Bằng sáng chế đang thuộc sở hữu của IBM, hiện đã phát triển đến phiên bản 3.0

• Blowfish

– Do Bruce Schneider phát triển năm 1993 – Chiều dài khóa từ 32 bits đến 448 bits, cho độ bảo mật rất cao

Trang 54

Mã hóa đối xứng: Thuật toán RC

– Đặc biệt chạy rất nhanh nếu dùng phần mềm – Thường được sử dụng nhằm bảo vệ các phiên kết nối tới một website, ví dụ: SSL

– Có thể được sử dụng rất hạn chế trong WEP

Ngày đăng: 10/07/2014, 23:17

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm