it-swarm-vi.com

Tại sao mật khẩu giới hạn trong 16 ký tự?

Lý do mà hầu hết các trang web giới hạn ở 16 ký tự là gì?

Tôi có thể nghĩ rằng mật khẩu càng dài thì càng khó để người khác bẻ khóa?

Nó có phải là một cái gì đó để làm với va chạm băm?

36
orange

Nếu bạn phải tuân theo CWE-521: Yêu cầu mật khẩu yế . Sau đó, tất cả mật khẩu phải có độ dài mật khẩu tối thiểu và tối đa.

Có hai lý do để giới hạn kích thước mật khẩu. Đối với một người, việc băm một lượng lớn dữ liệu có thể gây ra sự tiêu thụ tài nguyên đáng kể thay cho máy chủ và sẽ là mục tiêu dễ dàng cho Từ chối dịch vụ. Đặc biệt là nếu máy chủ đang sử dụng khóa kéo dài như PBKDF2.

Các mối quan tâm khác là hàm băm các cuộc tấn công kéo dài hoặc cuộc tấn công tiền tố chống lại MD5. Tuy nhiên Nếu bạn đang sử dụng hàm băm không bị hỏng, chẳng hạn như bcrypt hoặc sha-256, thì đây không phải là vấn đề đáng lo ngại đối với mật khẩu.

IMHO 16 byte là quá nhỏ . bcrypt có giới hạn tích hợp 72 ký tự, có lẽ là kích thước hợp lý cho hàm băm nặng. Kéo dài khóa được sử dụng bởi các chức năng này tạo ra khả năng Tấn công phức tạp thuật toán hoặc ACA.

32
rook

Lý do mà hầu hết các trang web giới hạn ở 16 ký tự là gì?

Giới hạn thực hiện tùy ý.

Có lẽ họ chỉ muốn phân bổ bộ đệm 17 octet (16 ký tự ASCII/1 octet + chấm dứt NUL).

Có thể họ tin rằng có một mật khẩu có hơn 16 ký tự là vô ích hoặc ngớ ngẩn, bởi vì họ không hiểu gì về mật khẩu.

Tôi có thể nghĩ rằng mật khẩu càng dài thì càng khó để người khác bẻ khóa?

Thật. Một mật khẩu với 16 ký tự chữ cái độc lập ngẫu nhiên với phân phối đồng đều có đủ entropy. Nhưng con người rất tệ khi chọn ngẫu nhiên 16 ký tự chữ cái độc lập ngẫu nhiên có phân phối đồng đều và cực kỳ tệ khi nhớ các chuỗi ký tự vô nghĩa như vậy, vì vậy họ chọn mật khẩu mà họ có thể nhớ, nhưng với ít entropy hơn mỗi ký tự .

Điều quan trọng chỉ là tổng số entropy, không phải là entropy trên mỗi ký tự. Ví dụ: một chuỗi các từ trong từ điển ngẫu nhiên, được tạo bằng Word-die (Word-die: mở một trang ngẫu nhiên trong từ điển, v.v.) dễ nhớ hơn một chuỗi các chữ cái thu được bằng một chữ cái chết.

Các mật khẩu như vậy sẽ dài hơn các chuỗi chữ cái hoàn toàn ngẫu nhiên, nhưng chúng sẽ dễ nhớ hơn rất nhiều cho entropy bằng nhau; hoặc, nếu bạn thích, họ sẽ có nhiều entropy hơn cho nỗ lực trí nhớ tinh thần như nhau.

Để có đủ sức mạnh, những mật khẩu được tạo từ các từ trong từ điển có thể sẽ có nhiều hơn 16 ký tự.

Nói cách khác, giới hạn này là ngu ngốc.

Nó có phải là một cái gì đó để làm với va chạm băm?

Không.

Không có bảo đảm chính thức nào liên quan đến va chạm với mật khẩu ngắn, nhưng tác động thực tế của va chạm băm là không tồn tại.

18
curiousguy