tôi đã tìm kiếm về băm đơn giản với mật khẩu trong biểu mẫu đăng nhập. tôi đã xem qua số http://tinsology.net/2009/06/creating-a-secure-login-system-the-right-way/ này. ở đây ông băm mật khẩu, tạo ra một muối, và sau đó một lần nữa băm mật khẩu & muối. Tôi đang xây dựng một đăng nhập thành bản thân mình, đây là abc.phpMật khẩu có được gửi dưới dạng văn bản sau khi gửi PHP không?
<form name="register" action="register.php" method="post">
Username: <input type="text" name="username" maxlength="30" />
Password: <input type="password" name="pass1" />
Password Again: <input type="password" name="pass2" />
<input type="submit" value="Register" />
</form>
sau khi nộp đi, register.php, nó có
$u=$_REQUEST['username'];
$p=$_REQUEST['pass1'];
//salt create function
//hashing code
//final hash password
và sau đó gửi $ u & 'mật khẩu thức' trong kho dữ liệu.
Hỏi: câu hỏi của tôi là khi gửi biểu mẫu từ abc.php, mật khẩu có phải là văn bản không?
và nếu có, thì có khả năng ai đó đọc nó, và sau đó cần mật khẩu băm là gì, vì ngay cả khi tôi đăng nhập, tôi sẽ gửi trang và truy xuất thẻ và tên người dùng từ $ _REQUEST trên có thể một trang khác, nơi nó sẽ được kiểm tra, nó sẽ được chuyển thành văn bản, và do đó có thể được đọc bởi ai đó.
Có hai vấn đề với mật khẩu: lưu trữ và truyền tải. Lưu trữ là quan trọng nhất, bạn * phải * băm được lưu trữ mật khẩu. Bảo vệ nó trong quá trình truyền cũng là một ý tưởng hay, nhưng không quan trọng. Nó dễ dàng hơn rất nhiều để hack một máy chủ và đọc toàn bộ cơ sở dữ liệu, hơn là chèn cho mình một nơi nào đó ở giữa mọi yêu cầu HTTP đến/từ máy chủ để đăng nhập mật khẩu. Vì vậy, băm (như được mô tả trong bài viết này) là một điều cần thiết.Nhưng nếu bạn có phương tiện, thì bạn nên đặt toàn bộ khu vực đăng nhập của bạn dưới SSL/https. Mẫu mã ở đây sẽ hoàn toàn an toàn nếu SSL đang hoạt động. –
@AbhiBeckert cảm ơn. – Nikhar