VnReview
Hà Nội

Máy tính đã có thể đoán 100 tỉ mật khẩu mỗi giây, bạn nghĩ mật khẩu của mình có đủ an toàn?

Mật khẩu đã được sử dụng hàng nghìn năm qua để nhận dạng bản thân với người khác và trong thế giới ngày nay là với máy tính. Đó là một khái niệm đơn giản, một phần thông tin được chia sẻ, được giữ bí mật bởi các cá nhân với nhau và nó được sử dụng để "chứng minh" danh tính.

Ảnh:;Paul Haskell-Dowland

Mật khẩu xuất hiện trên lĩnh vực IT từ những năm 1960 với những chiếc máy tính mainframe, là những máy tính tập trung kích thước lớn với những thiết bị "đầu cuối" cho phép người dùng truy cập. Đến nay, mật khẩu đã được sử dụng cho mọi thứ, từ mã PIN chúng ta nhập trên cây ATM cho đến đăng nhập vào máy tính hay các trang web.

Nhưng tại sao chúng ta lại cần phải "chứng minh" danh tính với hệ thống mà chúng ta truy cập? Và tại sao rất khó để đoán mật khẩu?

Điều gì giúp tạo nên một mật khẩu mạnh?

Mãi đến gần đây thì định nghĩa mật khẩu mạnh vẫn được cho là một từ hay cụm từ có từ 6 đến 8 ký tự. Nhưng hiện tại, chúng ta đã có những yêu cầu đối với độ dài tối thiểu. Đó là vì "entropy" (hỗn mang).

Khi nói về mật khẩu, entropy là thước đo khả năng dự đoán. Công thức toán học đằng sau phương pháp này không hề phức tạp nhưng chúng ta hãy thử kiểm chứng nó với một phép tính thậm chí còn đơn giản hơn: số lượng mật khẩu khả dụng, đôi lúc còn được gọi là "không gian mật khẩu" (passwords space).

Nếu mật khẩu có một ký tự chỉ chứa một chữ cái viết thường, sẽ có 26 mật khẩu khả dụng (từ "a" đến "z"). Nếu thêm vào chữ in hoa, chúng ta sẽ tăng số mật khẩu khả dụng lên 52.

Không gian mật khẩu sẽ tiếp tục tăng lên khi độ dài mật khẩu càng tăng và loại ký tự sử dụng càng nhiều.

Tạo mật khẩu càng dài hay càng phức tạp sẽ giúp mở rộng không gian mật khẩu. Không gian mật khẩu càng lớn thì mật khẩu càng an toàn.

Nhìn vào bảng trên, chúng ta dễ dàng hiểu được vì sao các hệ thống đều khuyến khích người dùng tạo mật khẩu càng dài càng phức tạp, sử dụng cả chữ, số và ký tự, càng tốt. Mật khẩu càng phức tạp, kẻ xấu càng mất nhiều công sức để tìm ra.

Tuy nhiên, vấn đề khi phụ thuộc vào độ phức tạp của mật khẩu là máy tính có khả năng lặp lại các tác vụ với độ hiệu quả cao, trong đó có cả việc dò mật khẩu.

Năm ngoái, một máy tính đã lập kỷ lục khi cố gắng tạo ra mọi mật khẩu có thể. Nó đã đạt tốc độ còn nhanh hơn con số 100 tỉ mật khẩu mỗi giây.

Nếu lợi dụng sức mạnh máy tính, tội phạm mạng có thể hack vào hệ thống bằng cách "bắn phá" bằng nhiều tổ hợp mật khẩu nhất có thể, quá trình này được gọi là Brute Force Attack.

Và với công nghệ điện toán đám mây, việc tìm ra một mật khẩu 8 ký tự chỉ mất khoảng 12 phút với chi phí chỉ khoảng 600 nghìn đồng.

Ngoài ra, vì mật khẩu gần như đều được dùng để truy cập vào dữ liệu nhạy cảm hay những hệ thống quan trọng, đây là động cơ cho tội phạm mạng dò tìm mật khẩu. Đồng thời, nó cũng thúc đẩy phát triển thị trường mua bán mật khẩu trực tuyến, một số còn kèm theo cả địa chỉ email và/hoặc username.

Chỉ với hơn 300 nghìn đồng, bạn đã có thể mua được danh sách gồm 600 triệu mật khẩu trực tuyến

Mật khẩu được lưu trữ trên trang web như thế nào?

Mật khẩu trên các trang web thường được lưu dưới một cơ chế bảo mật sử dụng thuật toán được gọi là hashing (băm nhỏ). Một mật khẩu sau khi được băm nhỏ sẽ không thể nhận diện và không thể truy ngược lại mật khẩu gốc (không thể đảo ngược quá trình hashing).

Khi bạn đăng nhập, mật khẩu bạn nhập vào sẽ được băm nhỏ bằng cùng một quy trình và so sánh với bản lưu trên trang web. Quá trình này được lặp lại mỗi lần đăng nhập.

Ví dụ, mật khẩu "Pa$$w0rd" sau khi sử dụng thuật toán SHA1 để hasing sẽ cho giá trị là "02726d40f378e716981c4321d60ba3a325ed6a4c".

Khi có một danh sách chứa mật khẩu đã được băm nhỏ, tội phạm mạng có thể tiến hành Brute Force Attack, chúng sẽ thử tất cả các tổ hợp ký tự trong một độ dài nhất định. Điều này dẫn đến sự phổ biến của những trang web liệt kê các mật khẩu thường gặp kèm theo giá trị sau khi được hashing. Bạn có thể dễ dàng dùng giá trị này để tìm kiếm mật khẩu thật trên mạng.

Ảnh chụp kết quả khi bạn tìm kiếm giá trị sau khi được hashing bằng thuật toán SHA của một mật khẩu trên Google.

Việc đánh cắp và bán danh sách mật khẩu đang ngày càng phổ biến, do đó, trang web haveibeenpwned.com đã được tạo ra để người dùng có thể kiểm tra xem liệu mật khẩu của họ đã bị phát hiện hay chưa. Số lượng tài khoản trang web này đang sỡ hữu lên đến con số 10 tỉ.

Nếu email của bạn đã được liệt kê trong danh sách này thì bạn cần đổi mật khẩu đó ngay lập tức, cũng như tất cả các trang khác mà bạn sử dụng thông tin đó để đăng nhập.

Đặt mật khẩu phức tạp hơn có phải giải pháp?

Bạn sẽ nghĩ rằng hiện nay đang có quá nhiều vụ lộ mật khẩu, nên chúng ta cần phải cải thiện phương pháp đặt mật khẩu của mình. Đáng tiếc là sự thay đổi trong 5 năm qua quá nhỏ bé, theo số liệu dựa trên khảo sát thường niên của SplashData.

Những mật khẩu được sử dụng nhiều nhất từ năm 2015 đến 2019 theo khảo sát của SplashData năm 2019.

Khả năng của máy tính ngày càng tiên tiến hơn, giải pháp đề ra sẽ là tăng độ phức tạp. Nhưng chúng ta là con người, hầu hết con người không giỏi (hoặc không có động lực) để ghi nhớ một mật khẩu có độ phức tạp cao.

Chúng ta cũng đã qua giai đoạn mà chỉ có 2 đến 3 hệ thống cần mật khẩu truy cập. Hầu hết các trang web ngày nay đều cần đến mật khẩu (thường có những yêu cầu khác nhau về độ phức tạp lẫn lượng ký tự). Một khảo sát gần đây cho thấy trung bình mỗi người cần từ 70-80 mật khẩu.

Tin tốt là hiện đã có những công cụ để giải quyết vấn đề này. Hầu hết máy tính hiện nay đều hỗ trợ lưu mật khẩu trên cả hệ điều hành lẫn trình duyệt web, và thường kèm với tùy chọn chia sẻ chúng giữa các thiết bị với nhau.

Ví dụ như tính năng iCloud Keychain của Apple hay tính năng lưu mật khẩu trên trình duyệt Chrome, Firefox (nhưng độ tin cậy của chúng khá thấp).

Các ứng dụng quản lý mật khẩu như KeePassXC, 1Password… cũng có thể giúp người dùng tạo ra những mật khẩu phức tạp và lưu trữ chúng tại nơi an toàn.

Dù vậy thì nơi lưu mật khẩu vẫn cần được bảo vệ (thường là với một mật khẩu master), do vậy, khi sử dụng ứng dụng quản lý mật khẩu, bạn sẽ chỉ cần một mật khẩu duy nhất cho tất cả các loại tài khoản.

Tuy nhiên, nó không ngăn chặn triệt để khả năng bạn bị đánh cắp mật khẩu từ một trang web không an toàn. Nhưng nếu có bị đánh cắp mật khẩu thì bạn cũng không cần phải khổ công thay đổi mật khẩu mới cho những tài khoản khác.

Tất nhiên là giải pháp này cũng có độ rủi ro nhất định, bạn có thể tìm hiểu thêm tại bài viết này.

Minh Bảo (Tham khảo The Conversation)

Chủ đề khác