© 2011, Vietnam-Korea Friendship IT College
KỸ THUẬT MÃ HÓA
KỸ THUẬT MÃ HÓA
Encryption
© 2011, Vietnam-Korea F
riendship IT College
Mã hóa
Căn bản về mã hóa
Khái niệm
Phân loại
PKI
Tiêu chuẩn và các giao thức về mã hóa
© 2011, Vietnam-Korea F
riendship IT College
Khái niệm về mã hóa
Mã hóa nhằm đảm bảo các yêu cầu sau:
Tính bí mật
Tính bí mật (confidentiality): dữ liệu không bị xem
bởi “bên thứ 3”
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
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
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
© 2011, Vietnam-Korea F
riendship 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)
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:
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ự B
1,
, B
2,
B
3,
…
B
n
Việc tính toán được thực hiện trên 80 từ mã W
0
, W
1
, …,
W
79
đượ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: H
0
, H
1
, H
2
SHA-1: 61223A9F54B6AA8D15F93D1E04E8ADC225F2E9DC
© 2011, Vietnam-Korea F
riendship IT College
Secure Hash Algorithm-2 (SHA-2)
Các phiên bản của SHA-1
Độ dài của giá trị băm: 256, 348 và 512
SHA-2 256
SHA-2 348
SHA-2 512
© 2011, Vietnam-Korea F
riendship IT College
Các giải thuật mã hóa
Giải thuật mã hóa đồng
bộ/đối xứng (Symmetric)
Sử dụng cùng một khóa
để mã hóa và giải mã
Sơ đồ mã hóa là một
song ánh
E = K x M → C
E
k
: M → C, m → E(k,m)
3DES (Triple DES): 168 bit key
AES (Advanced Encryption Standard): 128, 192, 256 bit key
Vernam’s One-time pad: khóa thay đổi “giả ngẫu nhiên”
Có thể bẻ khóa bằng tấn công vét cạn (Brute Force)
© 2011, Vietnam-Korea F
riendship IT College
Data 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
© 2011, Vietnam-Korea F
riendship 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
AES-256
Đối với AES-128, mã hóa được thực hiện qua
10 round sử dụng thuật toán Rijdael xuất mã
AES 128 bit
© 2011, Vietnam-Korea F
riendship IT College
Cá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
© 2011, Vietnam-Korea F
riendship IT College
Các giải thuật mã hóa
Giải thuật mã hóa không đồng bộ/không đối
xứng (tt)
Các giải thuật
RSA (Ron Rivest, Adi Shamir, and Leonard
r
sao cho: E mod (k
p
*k
r
) =1
Mã hóa bản tin C = m
kr
mod n
Giải mã tín hiệu nhận được = m
kp
mod n
© 2011, Vietnam-Korea F
riendship IT College
Công cụ
PGP Desktop
TrueCrypt
GPG
© 2011, Vietnam-Korea F
riendship IT College
Thực hành
Mã hóa file dữ liệu bằng PGP
Tìm kiếm trên Internet ứng dụng sau và cài vào
6-Giải mã nội dung email