Tại sao mật khẩu md5 được băm khác nhau?


22

Tôi đã tự hỏi một thời gian, tại sao chạy "echo 'hellowworld' | openssl passwd -1 -stdin" mang lại kết quả khác nhau mỗi lần? Nếu tôi đặt bất kỳ băm nào trong / etc / bóng của mình, tôi có thể sử dụng chúng làm mật khẩu và đăng nhập vào hệ thống của tôi, nó hoạt động như thế nào?

computer:/ user$ echo 'helloworld' | openssl passwd -1 -stdin
$1$xlm86SKN$vzF1zs3vfjC9zRVI15zFl1
computer:/ user$ echo 'helloworld' | openssl passwd -1 -stdin
$1$/0.20NIp$pd4X9xTZ6sF8ExEGqAXb9/
computer:/ user$ echo 'helloworld' | openssl passwd -1 -stdin
$1$sZ65uxPA$pENwlL.5a.RNVZITN/zNJ1
computer:/ user$ echo 'helloworld' | openssl passwd -1 -stdin
$1$zBFQ0d3Z$SibkYmuJvbmm8O8cNeGMx1
computer:/ user$ echo 'helloworld' | openssl passwd -1 -stdin
$1$PfDyDWER$tWaoTYym8zy38P2ElwoBe/

Tôi nghĩ rằng vì tôi sử dụng hàm băm này để mô tả cho hệ thống mật khẩu của mình nên là gì, tôi sẽ nhận được kết quả tương tự mỗi lần. Tại sao tôi không?


3
Nếu chúng giống nhau mỗi lần, kẻ tấn công có thể băm hàng tỷ mật khẩu phổ biến và dễ dàng kiểm tra chúng.
David Schwartz

Câu trả lời:


37

Họ đều có một loại muối khác nhau . Một loại muối độc đáo được chọn mỗi lần, vì muối không bao giờ nên được sử dụng lại. Sử dụng một loại muối duy nhất cho mỗi mật khẩu làm cho chúng chống lại các cuộc tấn công bảng cầu vồng .



6
Có thể là một ý tưởng tốt để đề cập rằng đầu ra bao gồm muối sau $ 1 $ (ký hiệu đô la là dấu phân cách).
chọc

6
Vì vậy, trong hàm băm của '$ 1 $ xlm86SKN $ vzF1zs3vfjC9zRVI15zFl1' xlm86SKN là muối và vzF1zs3vfjC9zRVI15zFl1 có phải là hàm băm của muối không?
Peter

2
@Peter: chính xác.
Joachim Sauer

3

Thật vậy, nếu bạn cung cấp muối cho dòng lệnh, bạn luôn nhận được kết quả tương tự.

$ echo 'helloworld' | openssl passwd -1 -stdin -salt my-salt
$1$my-salt$S/PsLSioHR8ffN8bpIzsk/
$ echo 'helloworld' | openssl passwd -1 -stdin -salt my-salt
$1$my-salt$S/PsLSioHR8ffN8bpIzsk/
$ echo 'helloworld' | openssl passwd -1 -stdin -salt my-salt
$1$my-salt$S/PsLSioHR8ffN8bpIzsk/
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.