xét bài @jszbody, bạn cũng nên cập nhật trường mật khẩu của bạn để cho bạn muốn chương trình bạn đang sử dụng.
Bây giờ bạn có băm MD5, bạn có thể chỉ có "BAC232BC1334DE" hoặc một cái gì đó.
Khi bạn truy cập SHA hoặc bất cứ điều gì, bạn nên thay đổi thành: "SHA: YOURSHAHASHHERE".
Vì bạn không thể thay đổi bất kỳ mật khẩu hiện có nào của mình ngay bây giờ. Điều này sẽ làm cho nó tương thích ngược hơn, vì bây giờ bạn có thể hỗ trợ cả hai lược đồ.
Vì bạn nhận được mật khẩu ban đầu trong khi đăng nhập, bạn có thể tự động nâng cấp mật khẩu của mình tại chỗ khi mọi người đăng nhập.
Bạn nhận được hồ sơ người dùng của mình, kiểm tra mật khẩu. Nếu không có sơ đồ, hãy sử dụng MD5 và so sánh mật khẩu. Nếu đúng (nghĩa là họ có thể đăng nhập), bạn có thể cập nhật mật khẩu MD5 cũ của họ thành mật khẩu SHA mới.
Ngoài ra, có vẻ như bạn không đang sử dụng mật khẩu của mình. Bạn phải muối mật khẩu của bạn để khi Mary Sue sử dụng "ilovekittens" cho mật khẩu của mình, và Big Jake Mahoney sử dụng "ilovekittens" làm mật khẩu của mình, bạn không nhận được cùng một mật khẩu giống hệt nhau.
Bạn cũng có thể lưu trữ muối trong mật khẩu: "SHA: RANDOMSALTCHARACTERS: YOURSALTEDHASHHERE".
Việc đánh giá cao được khuyến khích. Unsalted, nó khá nhiều không quan trọng toàn bộ rất nhiều những gì chương trình bạn sử dụng.
Nguồn
2013-05-01 23:40:43
1. Sử dụng thư viện auth exiting 2. Sử dụng auth hiện có .. có nhiều vấn đề được đánh bại đến chết trên SO - search cho ["php hash password"] (http://stackoverflow.com/search? q = php + hash + password) và đọc tốt: SQL injection; lựa chọn băm không phù hợp (SHA-1 cũng không phù hợp); không có muối (mặc dù những gì được yêu cầu); các vấn đề khác ở nơi khác ..? – user2246674
ive đọc md5 là khủng khiếp nữa, sha256 và muối đã được giới thiệu, nhưng im sẽ xem xét những gì bạn đã đăng và thực hiện một số nghiên cứu. cảm ơn bạn vì đã đi đúng hướng. –
MD5 không nên được sử dụng để băm mật khẩu; nhưng chính xác lý do tại sao không áp dụng cho SHA-1. [MD5 băm vẫn * không thể * là khả thi "chưa được" "(http://stackoverflow.com/a/13446272/2246674) - tuy nhiên, * cả MD5 và SHA-1 đều dễ bị tấn công bởi vì chúng đều rất nhanh và có thể song song *. Sử dụng muối có thể ngăn chặn các cuộc tấn công của bảng cầu vồng (và không sử dụng muối là một mật khẩu băm vô giá vì các cuộc tấn công bảng cầu vồng), nhưng nó không thể ngăn chặn các cuộc tấn công brute force, đó là lý do tại sao SHA-1 không * phù hợp hơn MD5 cho nhiệm vụ cụ thể này. – user2246674