thông điệp
5.1 Các loại hàm băm và MAC thông dụng 5.2 Băm với OpenSSL 5.2 Băm với OpenSSL
5.3 Băm dữ liệu với CryptoAPI
5.4 Xác thực thông điệp với HMAC 5.5 Salt 5.5 Salt
• Hàm băm (hashes)
– Nhận đầu vào là một xâu và đầu ra là một chuỗi bit có chiều dài xác định.
– Tỉ lệ đụng độ rất nhỏ.
– Dùng để kiểm tra tính toàn vẹn của dữ liệu nhưng không đảm bảo tính xác thực của dữ liệu.
– Thường kết hợp với mô hình mã hóa công khai chứ không sử dụng một mình.
– Các giải thuật băm thông dụng: MD5, SHA1
• Hàm băm (hashes)
5.1 Các hàm băm và MAC thông dụng
Algorithm Digest size Security conqidence
Small message speed (64 bytes), in
cycles per byte[2]
Large message speed (8K), in
cycles per byte
Uses block cipher
Davies-‐Meyer-‐
AES-‐128
128 bits (same length
as cipher block size) Good 46.7 cpb 57.8 cpb Yes
MD2 128 bits Good to low 392 cpb 184 cpb No
MD4 128 bits Insecure 32 cpb 5.8 cpb No
MD5 128 bits Very low, may be insecure
40.9 cpb 7.7 cpb No
MDC-‐2-‐AES-‐128 256 bits Very high 93 cpb 116 cpb Yes
MDC-‐2-‐DES 128 bits Good 444 cpb 444 cpb Yes
RIPEMD-‐160 160 bits High 62.2 cpb 20.6 cpb No