Tại sao 'mkpasswd -m sha-512' tạo ra kết quả khác nhau mỗi lần nó được gọi?


11

Tôi đang sử dụng chức năng này để tạo mật khẩu trong tập tin bóng

$ mkpasswd -m sha-512 password
$6$o50n4EfNOBzfs$K5l5AcOI5e0I9n2df0LmR11OLSPKSVM6AGBOnWVfDDfMubb46MrAj0zehdLNEoYzD2fj5q4XUdDwexj/dWLHy/
$ mkpasswd -m sha-512 password
$6$ADmDOhDpW$gsYQuiKPpV1ewaUpRq2VGAvrcocffLQ8XGF94e6LNLZfKIjy6Ku.cZoR/5exeCi1ESjPB9TRM6HxCiY5BCNCV0
$ mkpasswd -m sha-512 password
$6$Efj1agaI$HGkny3q1OTYT4KREh18gueHJae/3Bvil0iOEhfXj8bD.qy9Lg2UIQJMuBcq0XtG3xzueK.7cp0GfKr7tEo5YI/
$ mkpasswd -m sha-512 password
$6$zdVPlCPai4Y$x3CBvlP99xZXZcr4PTiE..YLpZx39h5OHDxqazd9wFLImPuwsXF0M6KmqLzlCCrnQhI2lmEPdCzfmHA/fDiOz.

Nó làm cho tôi tự hỏi làm thế nào để giá trị đầu ra hoạt động như một mật khẩu



2
Đầu ra của lệnh thực sự là cả muối (ngẫu nhiên) và hàm băm của mật khẩu + muối. Vì muối là ngẫu nhiên, đầu ra sẽ luôn khác nhau.

Câu trả lời:


20

Nếu bạn kiểm tra manpage bằng "man mkpasswd", bạn sẽ thấy lệnh đó cũng chấp nhận một tham số tùy chọn -S, --salt=STRING Nếu bạn bỏ qua nó, nó sẽ sử dụng một giá trị muối ngẫu nhiên, và do đó giá trị mật khẩu được mã hóa cũng sẽ khác.

Nếu bạn cung cấp muối,

mkpasswd -m sha-512 password -s "11223344"
$6$11223344$YzaRt.fnidpXmKw.Dl20htfOrJ8X2Yx3V.h5zUlhlN2SdczempQmQcDcMYd6mHiXlaMqyGt200zDwuZiC8ZZw1

bạn luôn nhận được kết quả tương tự

Nhân tiện, bạn có thể thấy giá trị muối ở đầu chuỗi đầu ra: đó là giá trị dài từ $8 đến 16 ký tự.

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.