© 2011, Vietnam-Korea Friendship IT CollegeKhái niệm về mã hóa Tính bí mật confidentiality: dữ liệu không bị xem Tính bí mật bởi “bên thứ 3” Tính toàn vẹn Integrity: dữ liệu không bị t
Trang 1© 2011, Vietnam-Korea Friendship IT College
KỸ THUẬT MÃ HÓA
Encryption
Trang 3© 2011, Vietnam-Korea Friendship IT College
Khái niệm về mã hóa
Tính bí mật (confidentiality): dữ liệu không bị xem Tính bí mật
bởi “bên thứ 3”
Tính toàn vẹn (Integrity): dữ liệu không bị thay Tính toàn vẹn
đổi trong quá trình truyền
Tính không khước từ (Non-repudiation): là cơ chế Tính không khước từ
người thực hiện hành động không thể chối bỏ
những gì mình đã làm, có thể kiểm chứng được nguồn gốc hoặc người đưa tin
Trang 4Khái niệm về mã hóa
Security
Mã hóa là một quá trình xáo trộn (scramble) nội dung của một file hoặc một bản tin sao cho chỉ có đối tượng sở hữu khóa giải mã mới có thể đọc được nội dung đã được mã hóa
Trang 5© 2011, Vietnam-Korea Friendship IT College
e ->5
f ->6
g ->a
h ->b
y->s z->t
F5n
om n1fe ih5
ni ih5
1->a 2->b 3->c 4->d
5 ->d
6 ->f
a ->g
b ->h
s->y t->z
Let
us talk one
to one
Stream cipher
Ví dụ: mã RC4
Trang 6 Block Cipher
Khái niệm về mã hóa
Trang 7© 2011, Vietnam-Korea Friendship IT College
Các giải thuật mã hóa
Giải thuật băm (mã hóa 1 chiều: one-way encrypt)
compare
Một số giải thuật băm:
MD5: tạo ra 128-bit checksum SHA: tạo ra 160-bit checksum
Trang 8Các giải thuật mã hóa
Giải thuật băm (hash)
Nhằm đảm bảo tính toàn vẹn của thông tin
Dữ liệu sau khi xử lý qua giải thuật băm gọi là giá trị băm (hash value)
Giá trị băm có đội dài không đổi , không phụ thuộc vào độ dài dữ liệu và được gửi đi cùng dữ liệu
Giá trị băm này sẽ được so sánh với giá trị băm gửi kèm
để xác định dữ liệu có bị thay đổi trên đường truyền hay không?
Một số giải thuật băm
Trang 9© 2011, Vietnam-Korea Friendship IT College
Message digest #5 (MD5)
Thuật toán biến đổi 1 chuổi string thành 1 tín
hiệu “message digest” hay còn gọi là “MD5
hashes” (128 bits – 32 ký tự hexa)
hash, không bao giờ có 2 hashes cho 1 string
Checksum
Password
Ví dụ: Plaintext: viethan
MD5: 6A6FAB2F8227790C0776019B9DF67C1F
Trang 11© 2011, Vietnam-Korea Friendship IT College
Secure Hash Algorithm-1 (SHA-1)
SHA-1 tương tự như MD5 nhưng độ dài của giá trị băm
là 160 bit có độ bảo mật cao hơn MD5, khó bị bẻ
khóa bởi Brute Force
Dữ liệu vào được nhóm thành khối 16 từ mã 32-bit dạng Hex (khối 512-bit) dữ liệu ra 160 bit
Dữ liệu khối 512-bit được đưa vào xử lý tuần tự B1,, B2, B3,
… Bn
Việc tính toán được thực hiện trên 80 từ mã W0, W1, …,
W79 được đưa vào 2 bộ đệm có kích thước 5 từ mã
Bộ đệm 1: A, B, C, D, E
Bộ đệm 2: H0, H1 , H2, H3 , H4
Trang 12Secure Hash Algorithm-1 (SHA-1)
Từ mã W16 – W79 được tính như sau:
H0 H1 H2 H3 H4
Ví dụ
Plaintext: viethan
SHA-1: 61223A9F54B6AA8D15F93D1E04E8ADC225F2E9DC
Trang 13© 2011, Vietnam-Korea Friendship IT College
Secure Hash Algorithm-2 (SHA-2)
SHA-2 256
SHA-2 348
SHA-2 512
Trang 14Các giải thuật mã hóa
Giải thuật mã hóa đồng
C
function decryption
:
function encryption
keys
plaintexts
k
E D
E
K k
M m
Trang 15© 2011, Vietnam-Korea Friendship IT College
Các giải thuật mã hóa
Giải thuật mã hóa đồng bộ/đối xứng (Symmetric)
Đặc điểm:
Các loại
Có thể bẻ khóa bằng tấn công vét cạn (Brute Force)
Trang 16Data Encryption Standard (DES)
Sơ đồ mã hóa
Nếu khóa k được chọn, ta có
Quá trình mã hóa gồm 16 bước (round), mỗi bước sử dụng 1 key 48-bit (round key), bản tin được chia thành 2 khối 32-bit
Trang 17© 2011, Vietnam-Korea Friendship IT College
Data Encryption Standard (DES)
Cứ sau mỗi round, khối 32-bit được hoán vị cho đến round cuối cùng thì xuất mã DES
Đặc điểm
Tốc độ mã hóa nhanh, được sử dụng rộng rãi
Khóa có thể bị dò tìm bằng cách thử tất cả các tổ hợp có thể có của khóa
n i
c m
k DES
k
i
i ) , 1 , , ,
(
) 1 , 0
( 56
=
=
∈
Trang 18Triple DES (3-DES)
Là một phiên bản của DES
Sử dụng 2-3 khóa thay vì 1 khóa đối với DES và mã hóa liên tục 3 lần
Trang 19© 2011, Vietnam-Korea Friendship IT College
Advanced Encryption Standard
(AES)
Xử lý khối dữ liệu 128-bit
AES-128
AES-192
AES-256
10 round sử dụng thuật toán Rijdael xuất mã AES 128 bit
Trang 20Các giải thuật mã hóa
Giải thuật mã hóa không đồng bộ/không đối xứng
(Asymmetric)
Khóa dùng để mã hóa và giải mã là khác nhau
Có 2 loại khóa
Khóa bí mật (Private key): giữ riêng
Khóa công khai (Public key): đưa ra công cộng
Trang 21© 2011, Vietnam-Korea Friendship IT College
Các giải thuật mã hóa
xứng (tt)
Các giải thuật
RSA (Ron Rivest, Adi Shamir, and Leonard Adleman)
DSA (Digital Signature Standard)
Diffie-Hellman (W.Diffie and Dr.M.E.Hellman)
Ý nghĩa thực tiễn
Mã hóa
Chữ ký điện tử
Trang 22Chọn khóa chung (public) kp(số nguyên tố)
Tính khóa riêng kr sao cho: E mod (kp*kr) =1
Mã hóa bản tin C = mkr mod n
Giải mã tín hiệu nhận được = mkp mod n
Trang 23© 2011, Vietnam-Korea Friendship IT College
Công cụ
Trang 24Thực hành
Tìm kiếm trên Internet ứng dụng sau và cài vào máy:
Trang 25© 2011, Vietnam-Korea Friendship IT College
trantheson@mic.gov.vn
1-Cài đặt ThunderBird ThunderBird
2-Cài đặt Enigmail (add-on) tải về tại Enigmail
http://enigmail.mozdev.org
3-Tạo khóa (RSA hoặc DES)
4-Gửi một email với nội dung đã được mã hóa
5-Xuất key và gửi đến người nhận
6-Giải mã nội dung email
Trang 26Thực hành
Tạo form nhập chuỗi bất kỳ
Mã hóa MD5, DES, RSA
Xuất dữ liệu
Trang 27© 2011, Vietnam-Korea Friendship IT College
Chữ ký số
Trang 28Chữ ký số
Chữ ký số (chương III, mục 1, điều 21, Luật giao dịch
điện tử)
âm thanh hoặc các hình thức khác bằng phương tiện
điện tử, gắn liền hoặc kết hợp một cách lôgic với thông điệp dữ liệu, có khả năng xác nhận người ký thông điệp
dữ liệu và xác nhận sự chấp thuận của người đó đối với nội dung thông điệp dữ liệu được ký.
cấp dịch vụ chứng thực chữ ký.”
Trang 29© 2011, Vietnam-Korea Friendship IT College
Chữ ký số
Chữ ký điện tử : Digital Signature
Là một phương pháp chứng thực thông tin sử dụng kỹ thuật mã hóa
Trang 30Chứng chỉ số
Certificate Authority - CA
Trang 31© 2011, Vietnam-Korea Friendship IT College
PKI
PKI là cấu trúc nền tảng của mã hóa không đối
xứng, nó không định nghĩa các công nghệ cụ thể.
Việc thực hiện PKI là khác nhau, phụ thuộc vào các công nghệ sử dụng
Khái niệm hạ tầng khóa công khai (PKI) thường
được dùng để chỉ toàn bộ hệ thống bao gồm nhà cung cấp chứng thực số (CA) cùng các cơ chế liên quan đồng thời với toàn bộ việc sử dụng các thuật toán mật mã hóa khóa công khai trong trao đổi thông tin
Trang 32Các thành phần của PKI
Certificate Authority – CA: là bên thứ 3 đứng ra nhận trách nhiệm cung cấp, thu hồi và phân phối khóa
Digital Certificate: chứng chỉ số
Certificate Policy
Certificate Pratice Statement - CPS
Trang 33© 2011, Vietnam-Korea Friendship IT College
PKI
Certificate Authority (CA) và Digital Certificate
Trang 35© 2011, Vietnam-Korea Friendship IT College
Trang 36Tạo khóa: tập trung và phân tán
Lưu trữ và phân phối khóa
Trang 37© 2011, Vietnam-Korea Friendship IT College
Tiêu chuẩn và giao thức mã hóa
Nguồn gốc của các tiêu chuẩn và giao thức mã hóa
IEEE (Institute of Electrical and Electroncis Engineers)
Trang 38Tiêu chuẩn và giao thức mã hóa
Định nghĩa cấu trúc và các trường trong khóa
công khai (Public key)
Định nghĩa thủ tục phân phối khóa
Trang 39© 2011, Vietnam-Korea Friendship IT College
Tiêu chuẩn và giao thức mã hóa
SSL (Secure Socket Layer) và TLS (Transport
Layer Security)
Mã hóa
Chứng thực
Đảm bảo tính toàn vẹn
TLS dựa trên SSL, tăng cường mã hóa, nhưng
không tương thích với SSL Application Server
`
Connection Request Security Capabilities Secure Connection Needed
SSL Connection Established
Application Server
`
Session Establishment Cryptography/Key Exchange TLS Session Established
PC
Private Key
Public Key
Private Key Public Key
Trang 40Tiêu chuẩn và giao thức mã hóa
Giao thức quản lý giao tiếp trong sử dụng khóa
S/MIME (Secure Multipurpose Internet Mail Extensions)
Tiêu chuẩn dùng để mã hóa e-mail
Trang 41© 2011, Vietnam-Korea Friendship IT College
Tiêu chuẩn và giao thức mã hóa
Chuẩn dùng để mã hóa thông tin của các thẻ tín dụng
Sử dụng trong các ứng dụng terminal thay thế cho telnet, rlogin, remote
Trang 42Tiêu chuẩn và giao thức mã hóa
Chuẩn mã hóa e-mail
Trang 43© 2011, Vietnam-Korea Friendship IT College
Tiêu chuẩn và giao thức mã hóa
Có thể sử dụng nhiều phương pháp mã hóa khác nhau
Sử dụng cổng 443
IPSec (Internet Protocol Security)
Sử dụng trong mạng riêng ảo VPN
Dùng 2 giao thức
AH (Authentication Header): chứng thực, toàn vẹn
ESP (Encapsulating Security Payload): chứng thực, toàn vẹn, mã hóa
Trang 44Tiêu chuẩn và giao thức mã hóa
IPSec (tt)
Trang 45© 2011, Vietnam-Korea Friendship IT College
Tiêu chuẩn và giao thức mã hóa
Tập các tiêu chuẩn quốc tế dùng để đánh giá hệ thống
Cung cấp chứng thực và kết nối mã hóa giữa Client và Server trong hệ thống mạng không dây
Giao thức mã hóa cho các thiết bị không dây, đảm bảo hoạt động như các thiết bị có dây
Tiêu chuẩn quốc tế về an toàn bảo mật thông tin
Trang 46Thực hành
dịch vụ email, mã hóa nội dung email
Trang 47© 2011, Vietnam-Korea Friendship IT College
Incomming: pop.gmail.com (port: 995, SSL) pop.gmail.com
Outgoing: smtp.gmail.com (port: 465, SSL) smtp.gmail.com
Trang 48Submit để gửi y/c
Đăng nhập vào http://localhost/certsrv Đăng nhập vào http://localhost/certsrv để tải
chứng chỉ về
Trang 49© 2011, Vietnam-Korea Friendship IT College
Trang 50Thảo luận
tả thuật toán (lưu đồ), viết chương trình mô
phỏng thuật toán (C#, PHP,…)
PKI:
PGP(1,3): mã hóa email, thư mục, phân vùng
CA(2,4): mã hóa email, cấp chứng chỉ số