Vì vậy, tôi có một trang web đọc/xác minh (và viết) băm mật khẩu từ cơ sở dữ liệu, và tôi có thứ gì đó làm cho mật khẩu kiểu SHA-512 trông giống như:Tạo kiểu mã băm Sha-512 glibc 2.7 trong Perl
$6$GloHensinmyampOc$AxvlkxxXk36oDOyu8phBzbCfLn8hyWgoYNEuqNS.3dHf4JJrwlYCqha/g6pA7HJ1WwsADjWU4Qz8MfSWM2w6F.
Trang web dựa trên java, vì vậy tôi đã viết SHA-512. Vấn đề là, có một loạt các công việc perl cron chạy mà cũng cần phải xác minh băm mật khẩu đôi khi vào cơ sở dữ liệu, và kể từ khi chạy trên một hộp Solaris, nó crypt không hỗ trợ định dạng $ 6 $.
Vì vậy, khi tôi làm:
printf("crypt => '%s'\n",crypt("Hello",'$1$CygnieHyitJoconf$'));
tôi nhận lại một cách hợp lý:
crypt => '$1$CygnieHy$n9MlDleP0qmGCfpbnVYy11'
Trong khi đó, nếu tôi làm
printf("crypt => '%s'\n",crypt("Hello",'$6$CygnieHyitJoconf$'));
tôi nhận được một vô ích
crypt => ''
Có cách nào để lấy các băm mật khẩu SHA-512 trong Perl trên một hộp không sử dụng glibc không? (Đó là những gì tôi đã đươc nghe khi tôi thực hiện tìm kiếm chủ yếu ("sử dụng hầm mộ").
tôi thực sự không thích tái thực hiện SHA-512 băm mật khẩu trong perl.
Cảm ơn!
Nó không phải là quá nhiều thuật toán tùy chỉnh vì nó là một thuật toán khác. Đó là sha512crypt. SHA512 được thiết kế là FAST, ngược lại với những gì bạn muốn cho một hàm băm mật khẩu. Nó tuân theo chuẩn crypt (3) cùng với bcrypt, và hỗ trợ độ phức tạp biến (một số biến 'vòng' để làm cho nó mạnh hơn trong tương lai khi 5000 vòng mặc định không đủ nữa). crypt (3) luôn là những gì bạn nên sử dụng cho băm mật khẩu. không có gì khác, bao giờ hết. –