Salting trong bảo mật mật khẩu là gì và nó hoạt động như thế nào?
Bảo mật mật khẩu là một phần quan trọng của an ninh mạng. Mật khẩu được sử dụng ở khắp mọi nơi. Khi bạn đăng nhập vào một tài khoản, bạn nhập mật khẩu, được sử dụng để xác minh danh tính của bạn.
Bạn có thể đã nghe nói về thuật ngữ “ướp muối” liên quan đến mật khẩu, vậy ướp muối là gì? Làm thế nào để mật khẩu thực sự được giữ an toàn trước tin tặc? Và việc ướp muối có giữ an toàn cho mật khẩu của bạn không?
Mục Lục
Muối là gì?
Salting là quá trình thêm các chuỗi ký tự ngẫu nhiên duy nhất vào mật khẩu trong cơ sở dữ liệu hoặc từng mật khẩu trước khi mật khẩu được băm (một thuật ngữ chúng ta sẽ quay lại). Điều này được thực hiện để thay đổi hàm băm và làm cho mật khẩu an toàn hơn. Chuỗi ký tự được thêm vào mật khẩu được gọi là muối. Một muối có thể được thêm vào trước hoặc sau mật khẩu.
Muối không được công khai và chỉ được biết đến với trang web.
Làm thế nào để muối hoạt động?
Khi bạn tạo tài khoản trên một trang web hoặc ứng dụng, mật khẩu bạn sử dụng phải được lưu trữ, để bạn có thể được xác minh vào lần tiếp theo khi bạn truy cập trang web. Nhưng mật khẩu này không thể được lưu trữ dưới dạng văn bản rõ nghĩa là không có bất kỳ hình thức định dạng hoặc mã hóa nào. Mật khẩu phải được băm để ngăn tin tặc dễ dàng truy cập vào tài khoản của bạn.
Giả sử bạn đăng nhập vào một trang web bằng mật khẩu này: myPassword. Trước khi mật khẩu đó được băm, một giá trị muối sẽ được thêm vào nó. Nếu giá trị muối cho trang web hoặc người dùng cụ thể đó là MUOrocks%, thì mật khẩu muối của bạn sẽ trở thành myPasswordMUOrocks%.
Mật khẩu muối sau đó được băm và lưu trữ trong cơ sở dữ liệu cùng với các phép băm mật khẩu khác.
Sự khác biệt giữa mã hóa, băm và muối là gì?
Salting, băm và mã hóa là các kỹ thuật bảo mật được sử dụng hàng ngày trên các trang web và hệ thống. Chúng là các thuật ngữ mật mã cần thiết để bảo mật mật khẩu. Nhưng chúng khác nhau như thế nào?
Mã hóa
Mã hóa là một dạng mật mã trong đó thông tin được mã hóa bằng toán học và chỉ người có khóa được ủy quyền mới có thể truy cập và giải mã. Thông tin cần được bảo mật được dịch từ bản rõ sang bản mã bằng cách sử dụng một thuật toán làm cho thông tin không thể giải mã được đối với người dùng trái phép.
Mã hóa là một quá trình hai chiều, có nghĩa là dữ liệu được mã hóa có thể được đảo ngược và đọc, nhưng chỉ bởi những dữ liệu có khóa giải mã phù hợp.
Băm
Hashing là quá trình chuyển đổi thông tin mà bạn muốn được bảo mật thành một chuỗi ký tự còn được gọi là băm. Về cơ bản, nó đang xáo trộn thông tin bằng cách sử dụng một thuật toán.
Hashing là một chức năng mật mã một chiều và điều này có nghĩa là, không giống như mã hóa, nó thường không thể được đảo ngược. Cách duy nhất bạn có thể giải mã một hàm băm là so sánh nó với một hàm băm khác có giá trị bản rõ đã biết.
Băm được sử dụng để xác nhận tính xác thực của bạn. Khi bạn đăng nhập vào một trang web và nhập mật khẩu của mình, mã băm của mật khẩu sẽ được so sánh với mã băm được xác định với tài khoản của bạn. Nếu hai hàm băm giống nhau, bạn được cấp quyền truy cập vào trang web.
Muối
Salting là một lớp bảo mật khác được thêm vào băm. Để làm cho hàm băm an toàn hơn, các chuỗi ký tự duy nhất được thêm vào mật khẩu trước khi băm để thay đổi hàm băm hoàn toàn.
Tại sao mật khẩu có muối?
Ướp muối là rất quan trọng trong bảo mật. Nó giúp giảm nguy cơ bị tin tặc xấu lấy được mật khẩu.
Đơn giản chỉ lưu trữ mật khẩu trong cơ sở dữ liệu là một phương pháp rất không an toàn để giữ quyền riêng tư của người dùng. Bất kỳ tin tặc lành nghề nào cũng có thể xâm nhập vào cơ sở dữ liệu và có quyền truy cập vào tất cả các tài khoản trên trang web.
Sau đó đến băm. Nó cải thiện tính bảo mật của mật khẩu cho đến khi tin tặc cải thiện được nó. Tin tặc sử dụng các cuộc tấn công brute-force, tấn công từ điển, phun mật khẩu hoặc bảng cầu vồng để thiết kế ngược lại mật khẩu để lấy thông tin đăng nhập.
Tăng cường mật khẩu yếu
Salting bổ sung một mức độ bảo mật khác cho trang web. Khi một giá trị muối được thêm vào mật khẩu, hàm băm sẽ thay đổi hoàn toàn. Điều này làm cho rất khó để đảo ngược mật khẩu và làm cho bảng cầu vồng trở nên vô dụng. Đây là một ví dụ.
| Văn bản mật khẩu | Băm | |
| Mật khẩu ban đầu | mật khẩu của tôi | deb1536f480475f7d593219aa1afd74c |
| Mật khẩu muối | myPasswordMUOrocks% | 51ae8ec80ae589f4270a1260841650a1 |
Như bạn có thể thấy trong bảng, các hàm băm hoàn toàn khác nhau. Mật khẩu vẫn giữ nguyên khi bạn truy cập trang web, nhưng hàm băm an toàn hơn để chống lại việc khai thác. Ướp muối đặc biệt quan trọng khi người dùng sử dụng các mật khẩu yếu và phổ biến như “password” hoặc “12345”. Ướp muối làm giảm rủi ro do mật khẩu yếu.
Để làm cho mã băm mật khẩu trở nên độc đáo
Việc ướp muối cũng rất quan trọng khi hai hoặc nhiều người dùng có cùng mật khẩu. Thêm các muối ngẫu nhiên khác nhau vào mỗi mật khẩu sẽ giúp tạo ra mỗi mật khẩu duy nhất. Ví dụ: nếu mật khẩu của bạn là iL0veCh3ese! và một người dùng khác, Chioma, có mật khẩu chính xác đó, muối được sử dụng để làm cho các băm mật khẩu đó là duy nhất.
| Mật khẩu | Giá trị muối | Mật khẩu muối | MD5 Hash | |
| Bạn | iL0veCh3ese! | Am4la! | iL0veCh3ese! am4la! | 31fda55ee57bc4c49ef6e0c99b0ba904 |
| Chioma | iL0veCh3ese! | ew3du? | iL0veCh3ese! ew3du? | cf0bea59647ba39e058a20c14fc10b0d |
Bây giờ các mật khẩu này, mặc dù giống nhau, nhưng có các hàm băm hoàn toàn khác nhau. Khi bạn nhìn vào bảng băm, bạn sẽ không bao giờ có thể nhận ra rằng hai người dùng dùng chung mật khẩu.
Chọn một muối tốt
Chọn một loại muối tốt cũng quan trọng như chọn mật khẩu. Một loại muối tốt phải là duy nhất. Đảm bảo rằng bạn sử dụng các ký tự và / hoặc ký hiệu duy nhất sẽ làm cho hàm băm của bạn an toàn hơn. Muối hoặc muối bạn chọn cho trang web của mình không được dự đoán hoặc dễ dàng đoán được, như tên của trang web hoặc người dùng. Một điểm cộng khác là sử dụng muối dài.
Cách tốt nhất để chọn một loại muối mạnh và độc đáo là sử dụng máy tạo giá trị muối. Những điều này giúp bạn tạo ra các muối mạnh và ngẫu nhiên để tăng tính bảo mật của mình.
Không lưu trữ các muối cùng với cơ sở dữ liệu mật khẩu và không sử dụng các muối giống nhau cho tất cả các mật khẩu. Một mẹo nhỏ muối khác là thay đổi muối mỗi khi người dùng thay đổi mật khẩu của họ.
Muối có hiệu quả trong việc tăng cường an ninh không?
Vâng. Ướp muối làm tăng tính bảo mật của mật khẩu. Khi bạn sử dụng mật khẩu, hacker sẽ không thể bẻ khóa mật khẩu bằng bảng từ điển hoặc bảng cầu vồng. Brute buộc mật khẩu băm cũng vô ích vì sẽ mất một thời gian rất dài trước khi tìm thấy sự kết hợp hoàn hảo của hàm băm. Bằng cách này, mật khẩu được bảo mật hơn và an toàn hơn khỏi tin tặc.
Đọc tiếp
Giới thiệu về tác giả