Quản trị Password, bảo mật Password

Quản trị Password, bảo mật Password

Rate this post

Tuyến phòng thủ trước những kẻ xâm nhập là hệ thống mật khẩu. Hầu như tất cả các hệ thống đa người dùng đều yêu cầu người dùng không chỉ cung cấp tên hoặc mã định danh (ID) mà còn cả mật khẩu. Mật khẩu dùng để xác thực ID của cá nhân đăng nhập vào hệ thống. Đổi lại, ID cung cấp bảo mật theo những cách sau:

  • ID xác định xem người dùng có được phép truy cập vào hệ thống hay không. Trong một số hệ thống, chỉ những người đã có ID được lưu trên hệ thống mới được phép truy cập.
  • ID xác định các đặc quyền dành cho người dùng. Một số người dùng có thể có trạng thái giám sát hoặc “người giám sát” cho phép họ đọc tệp và thực hiện các chức năng được bảo vệ đặc biệt bởi hệ điều hành. Một số hệ thống có tài khoản khách hoặc tài khoản ẩn danh và người dùng các tài khoản này có nhiều đặc quyền hạn chế hơn những hệ thống khác.
  • ID được sử dụng trong những gì được gọi là kiểm soát truy cập tùy ý. Để kiểm tra, bằng cách liệt kê ID của những người dùng khác, người dùng có thể cấp quyền cho họ đọc các tệp do người dùng đó sở hữu.

Các bài viết liên quan:

Nguy cơ của PASSWORDS

Để hiểu bản chất của mối đe dọa đối với các hệ thống dựa trên mật khẩu, chúng ta hãy xem xét một sơ đồ được sử dụng rộng rãi trên UNIX, trong đó mật khẩu không bao giờ được lưu trữ rõ ràng.

Thay vào đó, quy trình sau được sử dụng (Hình 20.4a). Mỗi người dùng chọn một mật khẩu có độ dài tối đa tám ký tự có thể in được. Giá trị này được chuyển đổi thành giá trị 56-bit (sử dụng ASCII 7-bit) đóng vai trò là đầu vào chính cho quy trình mã hóa. Quy trình mã hóa, được gọi là crypt (3), dựa trên DES. Thuật toán DES được sửa đổi bằng cách sử dụng giá trị “salt” 12 bit. Thông thường, giá trị này liên quan đến thời gian mà mật khẩu được gán cho người dùng.

Xem thêm Thuật toán mã hóa khối(block cipher)- AES

Thuật toán DES sửa đổi được thực hiện với đầu vào dữ liệu bao gồm Khối số không 64-bit. Đầu ra của thuật toán sau đó đóng vai trò là đầu vào cho mã hóa thứ hai. Quá trình này được lặp lại với tổng số 25 mã hóa. Kết quả đầu ra 64-bit sau đó được dịch thành một chuỗi 11 ký tự. Mật khẩu băm sau đó được lưu trữ cùng với bản sao rõ ràng của muối, trong tệp mật khẩu cho ID người dùng tương ứng. Phương pháp này đã được chứng minh là an toàn trước nhiều loại tấn công phá mã [WAGN00].

Salt phục vụ ba mục đích:

  • Nó ngăn không cho các mật khẩu trùng lặp hiển thị trong tệp mật khẩu. Ngay cả khi hai người dùng chọn cùng một mật khẩu, những mật khẩu đó sẽ được gán vào những thời điểm khác nhau. Do đó, mật khẩu “mở rộng” của hai người dùng sẽ khác nhau.
  • Nó làm tăng độ dài của mật khẩu một cách hiệu quả mà không yêu cầu người dùng phải nhớ hai ký tự bổ sung. Do đó, số lượng từ khóa có thể tăng lên 4096, làm tăng độ khó đoán mật khẩu.
  • Nó ngăn cản việc sử dụng triển khai phần cứng của DES, điều này sẽ làm giảm bớt khó khăn của một cuộc tấn công phỏng đoán brute-force.

Khi người dùng cố gắng đăng nhập vào hệ thống UNIX, người dùng sẽ cung cấp ID và mật khẩu. Hệ điều hành sử dụng ID để lập chỉ mục vào tệp mật khẩu và truy xuất muối bản rõ và mật khẩu được mã hóa. Muối và mật khẩu do người dùng cung cấp được sử dụng làm đầu vào cho quy trình mã hóa. Nếu kết quả khớp với giá trị được lưu trữ, mật khẩu được chấp nhận.

Quy trình mã hóa được thiết kế để ngăn chặn các cuộc tấn công phỏng đoán. Việc triển khai phần mềm của DES chậm hơn so với các phiên bản phần cứng và việc sử dụng 25 lần lặp nhân thời gian cần thiết với 25. Tuy nhiên, kể từ thiết kế ban đầu của thuật toán này, hai thay đổi đã xảy ra. Đầu tiên, các triển khai mới hơn của bản thân thuật toán đã dẫn đến tăng tốc độ. Ví dụ, Morris được mô tả trong bài trước có thể đoán mật khẩu trực tuyến của vài trăm mật khẩu

Quản trị Password, bảo mật Password

Đang tải mật khẩu mới

Quản trị Password, bảo mật Password

Xác minh mật khẩu

trong một thời gian ngắn hợp lý bằng cách sử dụng thuật toán mã hóa hiệu quả hơn thuật toán tiêu chuẩn được lưu trữ trên hệ thống UNIX mà nó đã tấn công. Thứ hai, hiệu suất phần cứng tiếp tục tăng, do đó bất kỳ thuật toán phần mềm nào cũng thực thi nhanh hơn.

Do đó, có hai mối đe dọa đối với lược đồ mật khẩu UNIX. Đầu tiên, người dùng có thể có quyền truy cập trên máy bằng tài khoản khách hoặc bằng một số phương tiện khác và sau đó chạy một chương trình đoán mật khẩu, được gọi là trình bẻ khóa mật khẩu, trên máy đó. Kẻ tấn công sẽ có thể kiểm tra hàng trăm và có lẽ hàng nghìn từ có thể có với mức tiêu thụ tài nguyên ít. Ngoài ra, nếu đối thủ có thể lấy được bản sao của tệp mật khẩu, thì một chương trình bẻ khóa có thể được chạy trên một máy khác lúc rảnh rỗi. Điều này cho phép đối thủ chạy qua hàng ngàn mật khẩu có thể có trong một khoảng thời gian hợp lý.

Ví dụ, một trình bẻ khóa mật khẩu đã được báo cáo trên Internet vào tháng 8 năm 1993 [MADS93]. Sử dụng máy tính song song của Thinking Machines Corporation, một đạt được hiệu suất 1560 mã hóa mỗi giây trên mỗi đơn vị vectơ. Với bốn đơn vị vectơ trên mỗi nút xử lý (cấu hình tiêu chuẩn), điều này hoạt động với 800.000 mã hóa mỗi giây trên máy 128 nút (kích thước khiêm tốn) và triệu mã hóa mỗi giây trên máy 1024 nút.

Ngay cả những tỷ lệ đoán đáng kinh ngạc này cũng không khiến kẻ tấn công có thể sử dụng một kỹ thuật bạo lực ngu ngốc là thử tất cả các tổ hợp ký tự có thể có để phát hiện ra mật khẩu. Thay vào đó, những kẻ bẻ khóa mật khẩu dựa vào thực tế là một số người chọn mật khẩu dễ đoán.

Một số người dùng, khi được phép chọn mật khẩu của riêng họ, hãy chọn một mật khẩu Kết quả của một nghiên cứu tại Đại học Purdue được trình bày trong Bảng 20.4. Nghiên cứu đã quan sát các lựa chọn thay đổi mật khẩu trên 54 máy, đại diện cho khoảng 7000 tài khoản người dùng. Gần 3% mật khẩu có độ dài từ ba ký tự trở xuống. Kẻ tấn công có thể bắt đầu cuộc tấn công bằng cách kiểm tra toàn bộ tất cả các mật khẩu có độ dài từ 3 trở xuống. Một cách khắc phục đơn giản là hệ thống từ chối bất kỳ lựa chọn mật khẩu nào có ít hơn, chẳng hạn, sáu ký tự hoặc thậm chí yêu cầu tất cả các từ mật khẩu phải có độ dài chính xác là tám ký tự. Hầu hết người dùng sẽ không phàn nàn về một hạn chế như vậy.

Độ dài mật khẩu chỉ là một phần của vấn đề. Nhiều người, khi được phép chọn mật khẩu của riêng họ, hãy chọn một mật khẩu có thể đoán được, chẳng hạn như mật khẩu của họ tên, tên đường của họ, một từ thông dụng trong từ điển, v.v. Điều này làm cho công việc bẻ khóa mật khẩu trở nên đơn giản. Người bẻ khóa chỉ cần kiểm tra tệp mật khẩu dựa trên danh sách các mật khẩu có khả năng xảy ra. Bởi vì nhiều người sử dụng mật khẩu có thể đoán được, một chiến lược như vậy sẽ thành công trên hầu như tất cả các hệ thống.

Một minh chứng về hiệu quả của việc phỏng đoán được báo cáo trong [KLEI90]. Từ nhiều nguồn khác nhau, tác giả đã thu thập các tệp mật khẩu UNIX, chứa gần 14.000 mật khẩu được mã hóa. Kết quả mà tác giả mô tả đúng

Bảng 20.4 Độ dài mật khẩu quan sát được

Chiều dàiCon sốPhần của tổng số
155.004
287.006
3212.02
4449.03
51260.09
63035.22
72917.21
số 85772.42
Toàn bộ137871,0

như đáng sợ, được thể hiện trong Bảng 20.5. Tổng cộng, gần một phần tư số mật khẩu đã được đoán. Chiến lược sau đã được sử dụng:

  1. Thử tên người dùng, tên viết tắt, tên tài khoản và thông tin cá nhân có liên quan khác. Tổng cộng, 130 phép hoán vị khác nhau cho mỗi người dùng đã được thử.
  2. Thử các từ từ các từ điển khác nhau. Tác giả đã biên soạn một từ điển hơn 60.000 từ, bao gồm cả trực tuyếntừ điển trên chính hệ thống và nhiều danh sách khác như được hiển thị.

Bảng 20.5 Mật khẩu bị bẻ khóa từ một tập hợp mẫu gồm 13.797 tài khoản [KLEI90]

Quản trị Password, bảo mật Password

Được tính bằng số lượng kết quả phù hợp chia cho kích thước tìm kiếm. Càng nhiều từ cần được kiểm tra cho một đối sánh, tỷ lệ chi phí / lợi ích càng thấp.

  1. Hãy thử các phép hoán vị khác nhau trên các từ từ bước 2. Điều này bao gồm tạo chữ hoa đầu tiên hoặc ký tự điều khiển, làm cho toàn bộ từ viết hoa, đảo ngược từ, thay đổi chữ cái “o” thành chữ số “không”, v.v. Nàyhoán vị đã thêm 1 triệu từ khác vào danh sách.
  2. Hãy thử các hoán vị viết hoa khác nhau trên các từ từ bước 2 không được xem xét trong bước 3. Điều này đã thêm gần 2 triệu từ bổ sung vào danh sách.

Vì vậy, các thử nghiệm liên quan đến các khu vực lân cận của 3 triệu từ. Sử dụng triển khai Máy tư duy nhanh nhất được liệt kê trước đó, thời gian để mã hóa tất cả các từ này cho tất cả các giá trị muối có thể là dưới một giờ. Hãy nhớ rằng một tìm kiếm dù gai góc như vậy có thể tạo ra tỷ lệ thành công khoảng 25%, trong khi ngay cả một lần truy cập duy nhất cũng có thể đủ để đạt được nhiều đặc quyền trên hệ thống.

ACCESS CONTROL

Một cách để ngăn chặn cuộc tấn công bằng mật khẩu là từ chối đối thủ truy cập vào tệp mật khẩu. Nếu phần mật khẩu được mã hóa của tệp chỉ có thể truy cập bởi người dùng đặc quyền, thì đối thủ không thể đọc nó nếu không biết mật khẩu của người dùng đặc quyền. [SPAF92a] chỉ ra một số sai sót trong chiến lược này:

  • Nhiều hệ thống, bao gồm hầu hết các hệ thống UNIX, dễ bị đột nhập không lường trước được. Khi kẻ tấn công đã có được quyền truy cập bằng một số phương tiện, họ có thể muốn có được một bộ sưu tập mật khẩu để sử dụng các tài khoản khác nhau cho các phiên đăng nhập khác nhau nhằm giảm nguy cơ bị phát hiện. Hoặc người dùng có tài khoản có thể muốn tài khoản của người dùng khác truy cập dữ liệu đặc quyền hoặc phá hoại hệ thống.
  • Một sự cố bảo vệ có thể làm cho tệp mật khẩu có thể đọc được, do đó hứa hẹn tất cả các tài khoản.
  • Một số người dùng có tài khoản trên các máy khác trong các miền bảo vệ khác và họ sử dụng cùng một mật khẩu. Do đó, nếu mật khẩu có thể được đọc bởi bất kỳ ai trên một máy, thì một máy ở vị trí khác có thể bị xâm phạm.

Do đó, một chiến lược hiệu quả hơn sẽ là buộc người dùng chọn mật khẩu khó đoán.

Cách lựa chọn Password

Bài học từ hai thí nghiệm vừa mô tả (Bảng 20.4 và 20.5) là, để lại cho thiết bị của họ, nhiều người dùng chọn mật khẩu quá ngắn hoặc quá dễ đoán. Ở một khía cạnh khác, nếu người dùng được gán mật khẩu bao gồm tám ký tự có thể in được chọn ngẫu nhiên, thì việc bẻ khóa mật khẩu là không thể thực hiện được. Nhưng hầu hết người dùng sẽ không thể nhớ được mật khẩu của họ. May mắn thay, ngay cả khi chúng ta giới hạn vũ trụ mật khẩu thành các chuỗi ký tự đáng nhớ một cách hợp lý, kích thước của vũ trụ vẫn quá lớn để cho phép bẻ khóa trên thực tế. Do đó, mục tiêu của chúng tôi là loại bỏ các mật khẩu có thể đoán được trong khi cho phép người dùng chọn một mật khẩu dễ nhớ. Bốn kỹ thuật cơ bản đang được sử dụng:

  • User education 
  • Computer-generated passwords 
  • Reactive password checking 
  • Proactive password checking 

User education 

Người dùng có thể được biết tầm quan trọng của việc sử dụng mật khẩu khó đoán và có thể được cung cấp các hướng dẫn để chọn mật khẩu mạnh. Chiến lược giáo dục người dùng này khó có thể thành công ở hầu hết các cài đặt, đặc biệt là ở những nơi có lượng người dùng lớn hoặc nhiều doanh thu. Nhiều người dùng sẽ đơn giản bỏ qua các hướng dẫn. Những người khác có thể không đánh giá tốt đâu là mật khẩu mạnh. Ví dụ, nhiều người dùng (nhầm lẫn) tin rằng việc đảo ngược một từ hoặc viết hoa chữ cái cuối cùng khiến mật khẩu không thể đọc được.

Computer-generated passwords 

Nếu mật khẩu có bản chất khá ngẫu nhiên, người dùng sẽ không thể nhớ chúng. Ngay cả khi mật khẩu có thể phát âm được, người dùng có thể gặp khó khăn trong việc ghi nhớ nó và do đó, bị cám dỗ để viết ra. Nhìn chung, các lược đồ mật khẩu do máy tính tạo có lịch sử ít được người dùng chấp nhận. FIPS PUB 181 xác định một trong những trình tạo mật khẩu tự động được thiết kế tốt nhất. Tiêu chuẩn không chỉ bao gồm mô tả về cách tiếp cận mà còn liệt kê đầy đủ mã nguồn C của thuật toán. Thuật toán tạo ra các từ bằng cách hình thành các âm tiết có thể phát âm và nối chúng để tạo thành một từ. Một bộ tạo số ngẫu nhiên tạo ra một dòng ký tự ngẫu nhiên được sử dụng để tạo ra các âm tiết và từ.

Reactive password checking

là một chiến lược trong đó hệ thống định kỳ chạy trình bẻ khóa mật khẩu của riêng mình để tìm mật khẩu có thể đoán được. Hệ thống hủy bất kỳ mật khẩu nào được đoán và thông báo cho người dùng. Chiến thuật này có một số trận hòa. Đầu tiên, nó sẽ tốn nhiều tài nguyên nếu công việc được thực hiện đúng. Bởi vì một đối thủ được xác định có khả năng đánh cắp tệp mật khẩu có thể dành toàn bộ thời gian CPU cho nhiệm vụ trong nhiều giờ hoặc thậm chí vài ngày, trình kiểm tra mật khẩu phản ứng hiệu quả có một ưu điểm khác biệt. Hơn nữa, mọi mật khẩu hiện có vẫn dễ bị tấn công cho đến khi trình kiểm tra mật khẩu phản ứng tìm thấy chúng.

Proactive password checking 

Cách tiếp cận hứa hẹn nhất để cải thiện bảo mật mật khẩu là trình kiểm tra 

mật khẩu chủ động. Trong lược đồ này, người dùng được phép chọn mật khẩu của riêng mình. Tuy nhiên, tại thời điểm lựa chọn, hệ thống sẽ kiểm tra xem mật khẩu có được phép hay không và nếu không, sẽ từ chối mật khẩu đó. Việc kiểm tra như vậy dựa trên triết lý rằng, với sự hướng dẫn đầy đủ từ hệ thống, người dùng có thể chọn mật khẩu dễ nhớ từ không gian mật khẩu khá lớn mà không có khả năng bị đoán trong một cuộc tấn công từ điển.

Mẹo với trình kiểm tra mật khẩu chủ động là cân bằng giữa khả năng chấp nhận của người dùng và sức mạnh. Nếu hệ thống từ chối quá nhiều mật khẩu, người dùng sẽ phàn nàn rằng quá khó để chọn mật khẩu. Nếu hệ thống sử dụng một số thuật toán đơn giản để xác định những gì có thể chấp nhận được, điều này sẽ cung cấp hướng dẫn cho những người bẻ khóa mật khẩu để tinh chỉnh kỹ thuật đoán của họ. Trong phần còn lại của tiểu mục này, chúng tôi xem xét các phương pháp có thể có để kiểm tra mật khẩu chủ động.

Cách tiếp cận đầu tiên là một hệ thống đơn giản để thực thi quy tắc. Ví dụ: các quy tắc sau có thể được thực thi:

  • Tất cả mật khẩu phải dài ít nhất tám ký tự.
  • Trong tám ký tự đầu tiên, mật khẩu phải bao gồm ít nhất một trong mỗi ký tự viết hoa, viết thường, chữ số và dấu chấm câu.

Những quy tắc này có thể được kết hợp với lời khuyên cho người dùng. Mặc dù cách tiếp cận này vượt trội hơn so với việc chỉ đơn giản là giáo dục người dùng, nhưng nó có thể không đủ để ngăn chặn mật khẩu bánh quy giòn. Chương trình này cảnh báo những kẻ bẻ khóa mật khẩu nào không nên thử nhưng vẫn có thể làm cho nó có thể bẻ khóa mật khẩu.

Một thủ tục khác có thể thực hiện đơn giản là biên dịch một từ điển lớn các mật khẩu “xấu” có thể xảy ra. Khi người dùng chọn mật khẩu, hệ thống sẽ kiểm tra để đảm bảo rằng nó không có trong danh sách bị từ chối. Có hai vấn đề với cách tiếp cận này:

  • Space: Từ điển phải rất lớn để có hiệu quả. Ví dụ, điện thoại cố định được sử dụng trong nghiên cứu Purdue [SPAF92a] chiếm hơn 30 megabyte dung lượng lưu trữ.
  • Time: Thời gian cần thiết để tra cứu một từ điển lớn có thể lớn. Ngoài ra, để kiểm tra khả năng hoán vị của các từ trong từ điển, hoặc những từ đó hầu hết được đưa vào từ điển, làm cho nó thực sự khổng lồ, hoặc mỗi tìm kiếm cũng phải xử lý đáng kể.

Hai kỹ thuật để phát triển một mật khẩu chủ động hiệu quả và hiệu quả trình kiểm tra dựa trên việc từ chối các từ trên danh sách cho thấy lời hứa. Một trong số đó phát triển mô hình Markov để tạo ra các mật khẩu có thể đoán được [DAVI93]. Hình 20.5 cho thấy một phiên bản đơn giản của mô hình như vậy. Mô hình này cho thấy một ngôn ngữ bao gồm một bảng chữ cái gồm ba ký tự. Trạng thái của hệ thống tại bất kỳ thời điểm nào là danh tính của bức thư gần đây nhất. Giá trị khi chuyển đổi từ trạng thái này sang trạng thái khác phản ánh xác suất để một chữ cái tiếp sau chữ cái khác, do đó, xác suất để chữ cái tiếp theo là b, cho rằng chữ cái hiện tại là a, là 0,5.

Quản trị Password, bảo mật Password

ví dụ: chuỗi có thể từ ngôn ngữ này: ví dụ: abbcacaba, chuỗi có thể không phải từ ngôn ngữ này: aacccbaaa

Nói chung, một mô hình Markov là một phần tư [m, A, T, k], trong đó m là số trạng thái trong mô hình, A là không gian trạng thái, T là ma trận xác suất chuyển đổi và k là bậc của mô hình. Đối với mô hình bậc k, xác suất tạo ra một sự chuyển đổi sang một chữ cái cụ thể phụ thuộc vào k chữ cái trước đó đã được tạo ra. Hình 20.5 cho thấy một mô hình bậc nhất đơn giản.

Các tác giả báo cáo về sự phát triển và sử dụng mô hình bậc hai. Đếnbắt đầu, một từ điển các mật khẩu có thể đoán được đã được xây dựng. Sau đó, ma trận chuyển tiếp được tính như sau:

  1. Xác định ma trận tần số f, trong đó f (i, j, k) là số lần xuất hiện của bát quái bao gồm ký tự thứ i, thứ j và thứ k. Ví dụ, mật khẩu phân tích cú pháp mang lại các mệnh bát quái, ars, rsn, sni, nip và ips.
  2. Đối với mỗi bigram ij, tính f (i, j, ∞) là tổng số bát quái bắt đầu bằng ij. Ví dụ, f (a, b, ∞) sẽ là tổng số bát quái có dạng aba, abb, abc, v.v.
  3. Tính toán các mục của T như sau:
Quản trị Password, bảo mật Password

Kết quả là một mô hình phản ánh cấu trúc của các từ trong từ điển. Với mô hình này, câu hỏi “Đây có phải là một mật khẩu xấu?” được chuyển thành câu hỏi “Có phải chuỗi (mật khẩu) này được tạo bởi mô hình Markov này không?” Để chomật khẩu, xác suất chuyển đổi của tất cả các bát quái của nó có thể được tra cứu. Sau đó, một số kiểm tra thống kê tiêu chuẩn có thể được sử dụng để xác định xem mật khẩu có khả năng xảy ra hay không cho mô hình đó. Mật khẩu có khả năng được tạo bởi mô hình sẽ bị từ chối. Các tác giả báo cáo kết quả tốt cho mô hình bậc hai. Hệ thống của họ nắm bắt hầu như tất cả các mật khẩu trong từ điển của họ và không loại trừ rất nhiều mật khẩu có khả năng tốt nhưng lại không thân thiện với người dùng.

Một cách tiếp cận khá khác đã được Spafford [SPAF92a, SPAF92b] báo cáo. Nó dựa trên việc sử dụng bộ lọc Bloom [BLOO70]. Để bắt đầu, chúng tôi giải thích hoạt động của bộ lọc Bloom. Bộ lọc Bloom bậc k bao gồm tập k hàm băm độc lập H1(x), H2(x),……, Hk (x), trong đó mỗi hàm ánh xạ mật khẩu thành giá trị băm trong phạm vi từ 0 đến N – 1 . Đó là,

Quản trị Password, bảo mật Password

Quy trình sau sẽ được áp dụng cho từ điển:

  1. Một bảng băm gồm N bit được xác định, với tất cả các bit ban đầu được đặt thành 0.
  2. Đối với mỗi mật khẩu, k giá trị băm của nó được tính toán và các bit tương ứng trong bảng băm được đặt thành 1. Do đó, nếu Hi (Xj) = 67 đối với một số (i, j), thì bit thứ sáu mươi bảy của hàm băm bảng được đặt thành 1; nếu bit đã có giá trị 1, nó vẫn ở giá trị 1.

Khi một mật khẩu mới được xuất trình cho người kiểm tra, k giá trị băm của nó sẽ được tính. Nếu tất cả các bit tương ứng của bảng băm đều bằng 1, thì mật khẩu bị từ chối. Tất cả mật khẩu trong từ điển sẽ bị từ chối. Nhưng cũng sẽ có một số “xác thực sai” (nghĩa là mật khẩu không có trong từ điển nhưng tạo ra sự trùng khớp trong bảng băm). Để thấy điều này, hãy xem xét một lược đồ có hai hàm băm. Giả sử rằng mật khẩu undertaker và hulkhogan có trong từ điển, nhưng xG% # jj98 thì không. Hơn nữa, giả sử rằng

Quản trị Password, bảo mật Password

Nếu mật khẩu xG% # jj98 được hiển thị cho hệ thống, mật khẩu đó sẽ bị từ chối ngay cả mặc dù nó không có trong từ điển. Nếu có quá nhiều thông tin xác thực giả như vậy, người dùng sẽ khó chọn mật khẩu. Do đó, chúng tôi muốn thiết kế lược đồ băm để giảm thiểu các kết quả dương tính giả. Có thể chỉ ra rằng xác suất dương tính giả có thể được tính gần đúng bằng:

Hình 20.6 vẽ biểu đồ P như một hàm của R với các giá trị khác nhau của k. Giả sử chúng ta có một từ điển gồm 1 triệu từ và chúng ta muốn xác suất từ ​​chối mật khẩu không có trong từ điển là 0,01. Nếu chúng ta chọn sáu hàm băm, tỷ lệ bắt buộc là = 9,6. Do đó, chúng ta cần một bảng băm 9,6 * 106 bit hoặc khoảng 1,2 MByte dung lượng lưu trữ. Ngược lại, việc lưu trữ toàn bộ từ điển sẽ yêu cầu theo thứ tự 8 MByte. Do đó, chúng tôi đạt được độ nén gần như hệ số là 7. Hơn nữa, việc kiểm tra mật khẩu liên quan đến việc tính toán đơn giản của sáu hàm băm và không phụ thuộc vào kích thước của từ điển, trong khi với việc sử dụng từ điển đầy đủ, có rất nhiều tìm kiếm.

Quản trị Password, bảo mật Password

mô hình Markov, có một xác suất nhỏ là một số mật khẩu trong từ điển sẽ không bị bắt và một xác suất nhỏ là một số mật khẩu không có trong từ điển sẽ bị từ chối. Trong trường hợp của bộ lọc Bloom, có một xác suất nhỏ là một số mật khẩu không có trong từ điển sẽ bị từ chối.

Quản trị Password, bảo mật Password

Leave a Reply