Tôi muốn tạo một hệ thống đăng nhập/đăng ký người dùng đơn giản bằng cách sử dụng PHP và mysql. Tôi không cần nhận bất kỳ thông tin nào ngoài những gì cần thiết để người dùng đăng nhập và đăng xuất. Tôi muốn đảm bảo rằng hệ thống được an toàn.Hệ thống Đăng nhập/Đăng ký với php và mysql
Cách mà tôi hiện đang hiểu nó như thế nào nên làm việc là:
Đăng ký
dùng nhập địa chỉ email của họ và mật khẩu và mật khẩu xác nhận.
Tập lệnh PHP đảm bảo mật khẩu khớp và email là địa chỉ hợp lệ và chưa có trong cơ sở dữ liệu.
Nó băm mật khẩu cùng với một muối ngẫu nhiên và lưu trữ muối và tạo ra mật khẩu băm trong cơ sở dữ liệu. (Chức năng md5 của php có phù hợp với điều này không? Tôi không chắc chắn về cách thức hoạt động của phần này.)
Lưu mã xác nhận email trong cơ sở dữ liệu và gửi địa chỉ email đã cho trở lại trang web chứa mã xác minh ?
Đăng nhập
tài nhập địa chỉ email và mật khẩu của họ.
Máy chủ tra cứu email trong cơ sở dữ liệu và truy xuất muối. Sau đó băm muối bằng mật khẩu mà người dùng vừa cung cấp để xem nó có khớp với mật khẩu trong cơ sở dữ liệu hay không.
Làm cách nào để làm cho phiên tồn tại sau khi đăng nhập. Với một phiên PHP? Một cookie? Điều gì sẽ được lưu trữ trong cookie để ghi nhớ người dùng giữa các lần truy cập?
Về cơ bản, tôi chỉ muốn xác minh rằng quy trình tôi mô tả là cách đăng ký/đăng nhập người dùng chính xác và an toàn. Ngoài ra, một số hướng dẫn hay có thêm thông tin là gì.
Tôi chỉ muốn thêm rằng tôi đã tìm thấy câu trả lời hay về một câu hỏi khác về phần băm đặc biệt. http://stackoverflow.com/questions/401656/secure-hash-and-salt-for-php-passwords – Mike