Tính toàn vẹn Tính toàn vẹn (Integrity): dữ liệu không bị thay đổi. trong quá trình truyền[r]
Trang 1© 2011, Vietnam-Korea Friendship IT College
KỸ THUẬT MÃ HÓA
Encryption
Trang 2 Khái niệm
Phân loại
Tiêu chuẩn và các giao thức về mã hóa
Trang 3Khái niệm về mã hóa
bởi “bên thứ 3”
trong quá trình truyền
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 4Security
Cyphertex
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 Stream Cipher
Khái niệm về mã hóa
Let
us
talk
one
to
one
a>1 b>2 c>3 d>4
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 6Ví d : mã ụ DES, SHA1
Trang 7Các giải thuật mã hóa
Giải thuật băm (mã hóa 1 chiều: one-way encrypt)
Hash value Hash value
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 8Nhằ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
MD5 (Message Digest 5): giá trị băm 128 bit (32 hex)
SHA-1 (Secure Hash Algorithm): giá trị băm 160 bit
Trang 9Message 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)
Bất cứ string nào cũng điều có duy nhất một
hash, không bao giờ có 2 hashes cho 1 string
Từ 1 hash không thể tìm ngược lại string của nó
Ý nghĩa: “vân tay của thông điệp”
Checksum
Password
Ví dụ: Plaintext: viethan
MD5: 6A6FAB2F8227790C0776019B9DF67C1F
Trang 10 Gắn thêm độ dài của dữ liệu vào sao cho + 64 bit chia hết cho 512
Chia dữ liệu thành 16 từ mã 32-bit (512-bit)
Khởi tạo bộ đệm MD
Xử lý bản tin theo khối 16 từ mã
Xuất mã MD5
Có thể bẻ khóa bằng tấn công Brute Force