2010-09-01 46 views
5

Ok. thats rõ ràng rằng người ta phải lưu trữ mật khẩu băm trong cơ sở dữ liệu nhưng trong trường hợp người dùng không nhớ mật khẩu và muốn lấy lại nó, thì rõ ràng người dùng sẽ không muốn có mật khẩu băm. Nếu mật khẩu được băm với md5 hoặc bổ sung như muối và sha1 thì làm thế nào để lấy lại mật khẩu.PHP bẻ khóa mật khẩu

+3

Hàm băm giống như máy xay thịt. Bạn có thể biến bò thành thịt bò xay, nhưng bạn không thể biến thịt bò xay thành bò. –

Trả lời

17

Chỉ có một câu trả lời đơn giản: Bạn không thể.

Vâng, về mặt lý thuyết bạn có thể, nhưng có thể mất nhiều năm cho mỗi mật khẩu nếu đủ dài. Sau cùng, đó là điểm băm mật khẩu ngay từ đầu: để làm cho dữ liệu có hiệu quả vô dụng đối với kẻ tấn công (hoặc ít nhất là bảo vệ mật khẩu thuần của người dùng, đó là dữ liệu nhạy cảm.)

Chỉ cần có trang gửi email "thay đổi mật khẩu của bạn" chứa liên kết đến trang nơi người dùng đó có thể thay đổi mật khẩu của họ. Đây là cách hầu hết các trang web chuyên nghiệp xử lý tình huống khó xử này.

+6

và đây là lý do tại sao độ mạnh mật khẩu của hầu hết các trang web chuyên nghiệp tương đương với độ mạnh mật khẩu của tài khoản email bạn sử dụng để đăng ký! –

+0

Đó là sự thật :) Nó vẫn đánh bại câu hỏi bảo mật cho điều này mặc dù. – hb2pencil

+1

http://tools.benramsey.com/md5/ md5 công cụ băm đảo ngược. Tuy nhiên, các mật khẩu tốt có thể sẽ không tồn tại trong db. –

3

Bảo mật băm thay vì mã hóa mật khẩu là bạn không thể đảo ngược mã băm. Nếu bạn có thể hủy mật khẩu và cung cấp cho người dùng mật khẩu văn bản thuần túy của họ, thì bất kỳ tin tặc nào cũng có thể đảo ngược mật khẩu băm bạn sử dụng để đăng ký và đăng nhập và "bỏ qua" mật khẩu của người dùng.
Đây là một tính năng, không phải là lỗi.

1

băm chính là viết tắt của "không thể truy xuất lại".

Nếu người dùng không thể nhớ mật khẩu của họ, họ không cần mật khẩu này cho chắc chắn.
Chỉ cần tạo một ngẫu nhiên khác và gửi chúng.
Không phải là vấn đề lớn.

0

yes..one có thể quên mật khẩu của mình .. thực hành tốt khi sử dụng mật khẩu băm sẽ làm cho người dùng nhập địa chỉ email của tài khoản có mật khẩu mà họ muốn đặt lại, hệ thống sẽ đặt lại mật khẩu người dùng với mật khẩu được tạo khác. MD5 giống như mật khẩu băm gần như không thể lấy lại mật khẩu ban đầu từ mật khẩu được băm

0

Luôn là các trang web nhận thức có thể gửi cho bạn mật khẩu bạn sử dụng. Điều đó có nghĩa là mật khẩu của bạn dễ dàng được nhìn thấy bởi bất kỳ ai có quyền truy cập vào cơ sở dữ liệu mật khẩu, đặc biệt nguy hiểm nếu bạn sử dụng lại mật khẩu.

Để đặt lại mật khẩu, tôi khuyên bạn nên sử dụng 'câu hỏi an toàn' với câu trả lời cũng được mã hóa.

Nó xử lý tất cả những người điều hành trang web để giữ khách hàng của họ an toàn hợp lý khỏi tin tặc.

Các vấn đề liên quan