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

ChƯƠNG 9 : CRYPTOGRAPHY( MÔN AN TOÀN MẠNG)

57 94 0

Đ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 57
Dung lượng 2,48 MB

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

Nội dung

Các thuật ngữ.. Cryptography: Ngành khoa học về mã hóa và giải mã thông tin  Cryptanalysis: Việc nghiên cứu phương pháp để giải mã thông tin mà khôngcần khóa  Key: Thành phần trong qu

Trang 1

MÃ HÓA VÀ GIẢI MÃ THÔNG TIN

Trang 3

Cryptography

Trang 4

 Sender: Người gởi thông tin hay dữ liệu

 Receiver: Người nhận dữ liệu

 Plaintext (cleartext): Thông tin trước khi được mã hóa

 Ciphertext: Thông tin đã được mã hóa

 Encryption: Quá trình mã hóa che dấu nội dung của dữ liệu (plaintext ciphertext)

 Decryption: Quá trình lấy lại thông tin ban đầu (ciphertext  plaintext)

Trang 5

Các thuật ngữ

 Cryptography: Ngành khoa học về mã hóa và giải mã thông tin

 Cryptanalysis: Việc nghiên cứu phương pháp để giải mã thông tin mà khôngcần khóa

 Key: Thành phần trong quan trọng trong mã hóa và giải mã

 Cryptographic algorithm: là các hàm toán học được sử dụng cho việc mã hóa

hoặc giải mã thông tin

 CryptoSystem: thuật toán mã hóa, khóa, plaintext, ciphertext

Trang 6

Receiver

Trang 7

Mục tiêu của mã hóa

Trang 8

 Các thuật toán khác nhau cung cấp độ an toàn khác nhau

 Tại một thời điểm tính an toàn phụ thuộc

 Nếu công sức, chi phí cần thiết để phá vỡ một thuật tóan lớn hơn giá trị của thông tin mã hóa

 Nếu thời gian dùng để phá vỡ một thuật toán quá lâu

 Dữ liệu cần thiết để phá vỡ một thuật toán quá lớn

 Sự bảo mật trong mã hóa phụ thuộc nhiều yếu tố: thuật toán, độ lớn khóa…

Trang 9

Theo số lượng khóa

 Symmetric (Private Key Cryptography)

 Asymmetric (Public Key Crytography)

 Theo cách thức

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

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

Trang 11

Mã hóa cổ điển

 Các phương pháp mã hóa cổ điển không dùng khóa

 Thuật toán đơn giản dễ hiểu

 Cho phép ta hình dung cách tiếp cận cơ bản với mã hóa đối xứng được sử

dụng ngày nay

 2 phương pháp nổi tiếng:

Substitution (mã hóa thay thế)

Transposition (mã hóa hoán vị)

Trang 13

Mã hóa thay thế Ceasar Cipher

Là phương pháp mã hóa thay thế đầu tiên, được miêu tả bởi hoàng đế Ceasar

Cipher

Thay thế từng ký tự từ A-Z bằng ký tự đứng thứ k(=3) sau nó (phép dịch)

Mã hóa cổ điển

Trang 15

Ceasar Cipher (tt)

 Phép dịch 26 lần giống với phép dịch 0 lần Giới hạn phạm vi phép dịch từ 0-25

 Xây dựng thuật toán bằng cách đánh số cho từng ký tự:

 Công thức cho Ceasar Cipher

Trang 17

Mã hoán vị

 Ý tưởng: giữ nguyên không thay đổi Plaintext, chỉ sắp xếp lại vị trí của các ký tự

để cho ra Ciphertext

 Hoán vị vị trí của các ký tự theo từng nhóm với các quy tắc nhất định

 Ví dụ: bản rõ “we are discovered”

w e a r e

d i s c o

v e r e dbản mã “WDVEIEASRRCEEOD”

Mã hóa cổ điển

Trang 18

Mã hoán vị cải tiến 1

dùng một khóa để hoán vị các cột trước khi kết xuất bản mã

Ví dụ: bản rõ “we are discovered”

E I Q T U

e a w r e

o s d c i

d r v e e

Trang 19

Mã hóa đối xứng

Trang 20

 Secret Key Cryptography (Private Key Cryptography)

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

Trang 21

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

 Trao đổi, thỏa thuận về thuật toán được tiến hành công khai

 Thỏa thuận về khóa trong việc mã hóa và giải mã phải được tiến hành bí mật:

Nếu Sender không gởi khóa cho Receiverkhông giải mã đượckhông hiểu nội dung tài liệu nói gì

Khóa phải được trao đổi theo một kênh bí mật

Bị sniffermất khóamất thông tin

Trang 22

 Các bước tiến hành trao đổi thông tin

 Bước 1 có thể thực hiện công khai, bước 2 bắt buộc phải thực hiện một cách

bí mật A và B phải tuyệt đối tin tưởng nhau

Trang 23

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

Mã hóa đối xứng có thể phân thành 2 loại:

◦ Loại 1 (Mã hóa khối):

◦ Tác động trên plaintext theo từng nhóm (khối) bit

◦ Thuật toán được áp dụng gọi là Block Cipher

◦ Từng khối dữ liệu trong văn bản ban đầu được thay thế bằng một khối dữ liệu khác có cùng

độ dài

◦ Kích thước chung của 1 block là 64 bit.

◦ Loại 2 (Mã hóa dòng):

◦ Tác động trên plaintext theo từng bit một.

◦ Thuật toán được áp dụng gọi là Stream Cipher

Trang 24

 DES: Data Encyption Standard

◦ Mã hóa theo từng khối 64 bit, sử dụng 1 khóa 64 bit

◦ Thực tế chỉ dùng 56 bit

◦ Dễ bị phá vỡ (24h) 

 Triple DES (3DES)

◦ Mã hóa-giải mã-mã hóa, sử dụng 3 khóa

 AES : Advanced Encryption Standard

◦ AES thay thế cho DES

◦ Hỗ trợ độ lớn nhỏ nhất cho khóa là 128, 192 và 256 bits

Trang 25

Phân phối khóa đối xứng

 Phương pháp 1:

 Trao đổi vật lý (bằng tay) các khóa

trước Các khóa bí mật được chuyển

giao trực tiếp cho các bên

 Phương pháp 2:

 Sử dụng trung tâm phân phối

khóa tự động

Trang 26

Ưu điểm

◦ Tốc độ thực hiện nhanh

 Nhược điểm

◦ Khóa phải được trao đổi theo kênh bí mật

◦ Nếu mất khóa thì thông tin có thể bị lấy cắp hoặc giả mạo

◦ Phải thay đổi khóa định kỳ

◦ Khi số lượng người sử dụng tăng thì số lượng khóa đã dùng cũng tăng nhanh.

Trang 27

Mã hóa bất đối xứng

Đảm bảo tính

bí mật

Trang 28

 Tên gọi khác của mã hóa bất đối xứng

◦ Mã hóa khóa công khai – Public Key Cryptography

 Sử dụng hai khóa khác nhau không suy diễn được cho nhau

◦ Một khóa để mã hóa dữ liệu (công khai)

◦ Khóa còn lại để giải mã (bí mật)

 Dữ liệu được mã hóa bằng khóa công khai của người nhận

 Chỉ có thể được giải mã bằng khóa riêng của người nhận

Trang 29

Mã hóa bất đối xứng (tt)

Encryption key được gọi là Public key

Decryption key được gọi là Private key

Bước 1 và 2 được tiến hành công khai

Trang 30

 Ưu điểm

◦ An toàn hơn so với mã hóa đối xứng

◦ Người mã hóa không thể giải mã được

Trang 32

Hàm băm (hash function) là giải thuật

nhằm sinh ra các giá trị băm tương ứng

với mỗi khối dữ liệu

Giá trị băm (hash value) đóng vai gần như

một khóa để phân biệt các khối dữ liệu

Mục tiêu: các hàm băm (H) tạo ra bản nhận dạng (fingerprint) cho một tập tin, thông điệp hay một khối dữ liệu truyền đi nhằm kiểm tra tính toàn vẹn

Trang 34

 H(x) có thể áp dụng với các x có chiều dài bít khác nhau

 Kích thước của output h = H(x) cố định và nhỏ

 Từ h không thể tìm lại được x

 Tính chống trùng: không tìm được x≠ y bất kỳ sao cho H(x) = H(y)

Trang 35

Yêu cầu của tính chống trùng: Về mặt thời gian, không thể tìm được hai

Trang 36

 Kích thước của giá hash cần lớn để đảm bảo tính chống trùng.

 Nếu kích thước của hash là 8 bít Chỉ cần thử 256+1 trường hợp là cóthể tìm ra 2 giá trị x,y cùng giá trị hash

 Dùng bài toán “Ngày sinh nhật”  Kích thước của Hash phải từ 128 bíttrở lên để bảo đảm an toàn

Trang 37

Các hàm băm phổ biến

• MD5: kích thước 128 bít, do Ron Rivest xây dựng

o Năm 1998 đã tìm thấy 2 thông điệp có cùng giá trị băm MD5

• SHA-1: kích thước 161 bít, chuẩn quốc gia Hoa Kỳ

• SHA-256: kích thước 256 bít

• SHA-512: kích thước 512 bít

Trang 38

1) Download file

Internet

download

Nếu chất lượng đường truyền không tốt, file download về máy client

có thể bị sai so với file gốc trên máy chủ

 Làm sao người download biết file đã bị hỏng?

 Dùng hàm băm

Trang 40

HX so sánh bằng mắt HY

Nếu HX = HY  theo tính chất hàm hash: File X = File Y

 quá trình download không xảy ra lỗi

Trang 41

2) Lưu trữ mật khẩu trong database

Các phần mềm thường lưu trữ mật khẩu người sử dụng

trong database

Nếu mật khẩu không được mã hóa  có thể lộ mật khẩu

do hacker hay do administrator

 Chỉ cần lưu trữ giá trị hash của mật khẩu

Trang 42

2) Lưu trữ mật khẩu trong database

Các phần mềm thường lưu trữ mật khẩu người sử dụng trong database

Nếu mật khẩu không được mã hóa  có thể lộ mật khẩu do hacker hay

do administrator

 Lưu trữ giá trị hash của mật khẩu (mã hóa mật khẩu với hàm băm)

Trang 43

 Chỉ cần lưu trữ giá trị hash của mật khẩu

Trang 45

Chữ ký điện tử

Chữ ký: Người gửi chịutrách nhiệm đã gửi vănbản (Tính không chối bỏ)

Trang 46

Chữ ký điện tử (Digital Signatures ):

 Chuỗi bit kèm vào văn bản gọi là chữ ký điện tử

 Là đoạn dữ liệu ngắn đính kèm với văn bản gốc để chứng thực tác

giả của văn bản và giúp người nhận kiểm tra tính toàn vẹn của nội dung văn bản gốc

Trang 47

Chữ ký điện tử (tt)

 Chữ ký thông thường

◦ Xác thực, đáng tin cậy

◦ Không thể làm giả được

◦ Người khác không thể sử dụng lại chữ ký

◦ Không thể thay đổi văn bản đã ký (tính chứng thực)

◦ Người ký không thể chối bỏ chữ ký của mình (tính chống chối bỏ)

 Chữ ký điện tử cũng phải thỏa mãn các tính chất trên

Trang 48

 Sử dụng mã hóa khóa công khai và hàm băm 1 chiều:

1) Bên gửi A tạo ra hash value HA của thông điệp M

2) A ký hash value HA bằng khóa bí mật KRA của mình

3) Gởi thông điệp (M) và chữ ký (DS) cho bên nhận B

4) B dùng khóa công khai của KUA để giải mã DS, tìm ra hash value

5) B so sánh giải mã được từ DS với hash value sinh ra từ thông tin

Trang 51

 Việc lựa chọn khóa phụ thuộc vào hoàn cảnh

 Bảo vệ bí mật kinh doanh

 Bảo vệ bí mật quốc gia

Trang 52

 A gởi thông điệp cho B và mã hóa theo phương pháp khóa công khai

 A cần mã hóa thông điệp bằng public key của B

 Hacker tự sinh 1 cặp khóa public key/private key

 Đưa cho A public key  public key của B

 A dùng public key giả  hacker đọc đựợc thông tin mà A gởi đi.

Trang 53

Tổ chức chứng nhận khóa công khai (tt)

 Vấn đề được giải quyết nếu có bên thứ 3 được tin cậy gọi là C, đứng ra chứng

nhận public key

 Những public key được C chứng nhận gọi là chứng nhận điện tử (public key certificate hay digital certificate)

 Một chứng nhận điện tử được xem như là một “CMND”, “passport” Nó được 1

tổ chức tin cậy tạo ra như VeriSign, Entrust, CyberTrust,

 Được gọi là tổ chức chứng nhận khóa công khai Certificated Authority (CA)

Trang 54

Cấu trúc của 1 CA

Issuer: tên của CA tạo ra chứng nhận

Period of validity: ngày hết hạn của chứng nhận

Subject: bao gồm những thông tin về thực thể được chứng nhận

Public key: khóa công khai được chứng nhận

Signature: do private key của CA tạo ra và đảm bảo giá trị của chứngnhận

Trang 55

Cơ sở hạ tầng khóa công khai

Public Key Infrastructure

 Là một tập hợp bao gồm phần cứng, phần mềm các chính sách và các thủ tục dùng để thiết lập 1 phương thức an toàn trong việc

truyền nhận dữ liệu cùng với sự trợ giúp của “digital certificates”.

 PKI chủ yếu điều khiển việc tạo lập, quản lý và thu hồi

“certificates” được sử dụng trong cơ chế mã hóa công khai.

Trang 56

 Chức năng:

◦ Tạo lập và xác nhận tính hợp lệ của digital sign

◦ Đăng ký người dùng mới

◦ Xác thực người dùng và phân phối certificates

◦ Thu hồi các certificates hết hạn

◦ Tạo khóa riêng và công khai cho PKI client

Trang 57

PKI (tt)

Các thành phần của PKI

◦ PKI client

◦ Certification Authority (CA)

◦ Registration Authority (RA)

◦ Digital Certificates

◦ Certificate Distribution System

Ngày đăng: 22/02/2019, 08:32

TỪ KHÓA LIÊN QUAN

w