2010-01-14 42 views
9

Tôi đang nghĩ đến việc băm mật khẩu người dùng bằng hai chuỗi muối khác nhau, một mã được lưu trữ trong mã giống nhau cho tất cả người dùng và mã khác được lưu trữ trong cơ sở dữ liệu mà mỗi người dùng có giá trị duy nhất của riêng họ.Muối kép cho mật khẩu băm?

Điều này có hiệu quả hơn việc lưu trữ các giá trị trong cơ sở dữ liệu không?

Mọi lời khuyên, ý kiến ​​được sắp xếp.

Cảm ơn

+0

đó không phải là những gì mà quá trình toán học dành cho: mục đích của nó rất khác với trang này ... –

+0

@jldupont: Khía cạnh bảo mật của nó rất khoa học máy tính mặc dù :). – kennytm

Trả lời

19

Hiệu ứng sẽ rất nhỏ nếu có bất cứ điều gì. Hãy xem xét rằng một muối mã hóa tĩnh, cứng có thể được xem như không có gì hơn là một sự thay đổi cho thuật toán băm - nó xảy ra chính xác theo cùng một cách mọi thời gian, vì vậy nó cũng có thể được coi là một phần của thuật toán. Tuy nhiên, mục đích của muối là tạo ra một số ngẫu nhiên tương tự với việc mở rộng (tối thiểu) sức mạnh của mật khẩu, với mục đích làm cho nứt ngoại tuyến (bao gồm cả bảng cầu vồng) nhiều tài nguyên chuyên sâu hơn (bảng phi cầu vồng). nứt sẽ đòi hỏi nhiều thời gian CPU hơn, và các bảng cầu vồng sẽ yêu cầu tất cả các muối cho tất cả các chuỗi).

Cách duy nhất để bạn nhận được bất kỳ giá trị nào từ điều này là trong khi muối tĩnh không xác định - tương đương với thuật toán chưa được biết. Nếu mã nhị phân hoặc nguồn của bạn có sẵn cho kẻ tấn công, thì kỹ thuật đảo ngược sẽ chứng minh thuật toán và muối mã hóa cứng. Và nếu vấn đề này được công khai, có thể bạn sẽ phải đối phó với những người đam mê an ninh tin rằng bất cứ điều gì không hoàn hảo là hoàn toàn bị hỏng, mặc dù sản phẩm của bạn đã làm điều đúng và bước bổ sung chỉ là vô dụng. Và tất nhiên, bạn sẽ phải đối phó với các vấn đề bảo trì có khả năng tương thích ngược với muối tĩnh - sửa lỗi và sửa lỗi xung quanh mã băm có thể là một sự đau đớn.

Lợi ích rất nhỏ của các khóa tĩnh (hoặc muối) đơn giản là không đáng giá. Luôn luôn làm cho chìa khóa và muối năng động.

+0

Cảm ơn điều đó, thực sự hữu ích! – Dan

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