DDos
VIP Members
-
22/10/2013
-
524
-
2.191 bài viết
Các loại mật khẩu được mã hóa HASH và SALTS phổ biến
Có lẽ trong số chúng ta, ai cũng biết được câu trả lời vì sao thông tin, mật khẩu... cần phải được mã hóa? Câu trả lời đơn giả là vì chúng ta cần nâng cao yếu tố bảo mật.
Vậy Hash là gì?
Hash là một công nghệ phổ biến sử dụng bởi các lập trình viên để lưu trữ mật khẩu trong cơ sở dữ liệu với một định dạng được mã hóa do đó một người bình thường không thể nhìn thấy giấy xác thực (credentials) trong một văn bản thuần. Mỗi khi người sử dụng đăng nhập để xác thực danh tính của họ, mật khẩu của họ sẽ được so sánh với giá trị hash đã được lưu trữ trên cơ sở dữ liệu và nếu nó được tìm thấy trên cơ sở dữ liệu thì người sử dụng sẽ được cấp quyền truy cập và ngược lại.
Hiện tại có rất nhiều loại hash, nhưng ở trong topic này mình chỉ giới thiệu một vài loại phổ biến nhất:
+ MD5 (Message Digest algorithm) - Đây là loại hash phổ biến nhất mà bạn đã từng nhìn thấy hoặc sử dụng nó.
Đặc điểm:
Nếu bất kỳ loại hash không có cả hai đặc điểm trên thì đó không phải là mã MD5.
+ SHA1 (Secure Hash Algorithms)- Loại mã này cũng được dùng khá phổ biến trên Internet.
Đặc điểm:
Nếu bất kỳ loại hash không có cả hai đặc điểm trên thì đó không phải là mã SHA1.
+ MySQL < 4.1: Loại mã này ít được sử dụng hơn và thường được sử dụng trong các phiên bản cũ của Mysql.
Đặc điểm:
Vậy Hash là gì?
Hash là một công nghệ phổ biến sử dụng bởi các lập trình viên để lưu trữ mật khẩu trong cơ sở dữ liệu với một định dạng được mã hóa do đó một người bình thường không thể nhìn thấy giấy xác thực (credentials) trong một văn bản thuần. Mỗi khi người sử dụng đăng nhập để xác thực danh tính của họ, mật khẩu của họ sẽ được so sánh với giá trị hash đã được lưu trữ trên cơ sở dữ liệu và nếu nó được tìm thấy trên cơ sở dữ liệu thì người sử dụng sẽ được cấp quyền truy cập và ngược lại.
Hiện tại có rất nhiều loại hash, nhưng ở trong topic này mình chỉ giới thiệu một vài loại phổ biến nhất:
+ MD5 (Message Digest algorithm) - Đây là loại hash phổ biến nhất mà bạn đã từng nhìn thấy hoặc sử dụng nó.
Đặc điểm:
- Độ dài của mã là 32 ký tự (128 Bits)
- Các ký tự luôn thuộc hệ thống số có cơ sở là 16 ( 0-9 và A-F)
Nếu bất kỳ loại hash không có cả hai đặc điểm trên thì đó không phải là mã MD5.
+ SHA1 (Secure Hash Algorithms)- Loại mã này cũng được dùng khá phổ biến trên Internet.
Đặc điểm:
- Độ dài của đoạn mã là 40 kí tự (160 bits)
- Các ký tự luôn thuộc hệ thống số có cơ sở là 16 ( 0-9 và A-F)
Nếu bất kỳ loại hash không có cả hai đặc điểm trên thì đó không phải là mã SHA1.
+ MySQL < 4.1: Loại mã này ít được sử dụng hơn và thường được sử dụng trong các phiên bản cũ của Mysql.
Đặc điểm:
- Độ dài của đoạn mã là 16 kí tự (64 bits)
- Các ký tự luôn thuộc hệ thống số có cơ sở là 16 ( 0-9 và A-F)