logo
GeekFormat

Trình tạo mật khẩu

0
Do dai mat khau
16chars
64
Bo ky tu bao gom
Tao hang loat

Trình tạo mật khẩu trực tuyến miễn phí, tạo mật khẩu mạnh ngẫu nhiên, cụm từ dễ nhớ và mã PIN số dựa trên nguồn ngẫu nhiên an toàn Web Crypto. Hỗ trợ kiểm tra độ mạnh, loại trừ ký tự dễ nhầm lẫn, xuất hàng loạt. Tạo cục bộ trong trình duyệt, không tải lên.

Đề xuất Liên quan

Trường hợp sử dụng

  • Tạo mật khẩu mạnh ngẫu nhiên khi đăng ký tài khoản mới, xem entropy và thời gian bẻ khóa, đảm bảo an toàn tài khoản
  • Tạo hàng loạt mật khẩu tạm thời cho nhóm hoặc môi trường kiểm tra, phân phối nhanh chóng
  • Tạo cụm từ dễ nhớ cho mật khẩu Wi-Fi hoặc mật khẩu thiết bị cần ghi nhớ thủ công
  • Đặt mã PIN thiết bị, khởi tạo tài khoản quản trị hoặc đặt lại mật khẩu
  • Thay thế mật khẩu yếu, thay thế mật khẩu nhân tạo dễ đoán bằng mật khẩu ngẫu nhiên cường độ cao

Tính năng

  • Tạo ngẫu nhiên an toàn: Dựa trên nguồn ngẫu nhiên an toàn mật mã học của trình duyệt Web Crypto API (crypto.getRandomValues), tạo mật khẩu ngẫu nhiên không thể dự đoán
  • Ba chế độ mật khẩu: Hỗ trợ ba chế độ mật khẩu ngẫu nhiên, cụm từ dễ nhớ (tổ hợp từ) và mã PIN số, bao gồm các mức độ bảo mật khác nhau
  • Kiểm tra độ mạnh đầy đủ: Xem kích thước nhóm ký tự, tính toán entropy, phát hiện trùng khớp mật khẩu yếu, rủi ro ký tự lặp lại/liên tục, ước tính thời gian bẻ khóa vũ phu
  • Loại trừ ký tự dễ nhầm lẫn: Có thể loại trừ các ký tự dễ nhầm lẫn như 0/O/1/l/I, phù hợp cho tình huống nhập thủ công, đọc qua điện thoại
  • Tạo và xuất hàng loạt: Hỗ trợ tạo hàng loạt 5/10/20 mật khẩu, tải xuống TXT một cú nhấp, thuận tiện cho phân phối nhóm và khởi tạo môi trường kiểm tra
  • Tạo cục bộ không tải lên: Tất cả mật khẩu được tạo cục bộ trong trình duyệt, không gửi đến bất kỳ máy chủ nào

Cách Sử dụng

  1. Chọn chế độ mật khẩu: mật khẩu ngẫu nhiên, cụm từ dễ nhớ hoặc mã PIN số
  2. Đặt độ dài mật khẩu, tùy chọn tập ký tự (khuyến nghị trên 16 ký tự), có thể bật loại trừ ký tự dễ nhầm lẫn
  3. Xem kết quả kiểm tra độ mạnh: entropy, ước tính thời gian bẻ khóa, phát hiện mật khẩu yếu
  4. Sao chép mật khẩu hoặc xuất hàng loạt tệp TXT để đăng ký, đặt lại hoặc phân phối

Câu hỏi Thường gặp

Tại sao sử dụng Web Crypto API thay vì Math.random()?

Math.random() là bộ tạo số giả ngẫu nhiên thông thường, không được thiết kế cho các tình huống bảo mật, trạng thái nội bộ có thể bị suy ngược. crypto.getRandomValues() sử dụng nguồn ngẫu nhiên an toàn mật mã học (CSPRNG) của hệ điều hành, tạo số ngẫu nhiên không thể dự đoán, phù hợp cho các tình huống bảo mật như mật khẩu, khóa.

Mật khẩu tạo ra có được tải lên máy chủ không?

Không. Tất cả mật khẩu được tạo cục bộ trong trình duyệt, phân tích độ mạnh, tính toán entropy và ước tính thời gian bẻ khóa cũng hoàn toàn thực hiện cục bộ. Mở bảng điều khiển mạng của công cụ nhà phát triển có thể xác nhận không có yêu cầu mạng ngoài.

Mật khẩu dài bao lâu thì an toàn?

Khuyến nghị ít nhất 12 ký tự bao gồm chữ hoa+chữ thường+số+ký hiệu. Mật khẩu ngẫu nhiên 16 ký tự cần hàng trăm triệu năm để bẻ khóa vũ phu với sức mạnh tính toán hiện đại. Mỗi khi tăng độ dài thêm một ký tự, không gian tìm kiếm tăng theo cấp số nhân. Tham khảo bảng thời gian bẻ khóa ở trên.

Mật khẩu ngẫu nhiên hay cụm từ dễ nhớ an toàn hơn?

Với cùng độ dài, mật khẩu ngẫu nhiên có entropy cao hơn. Nhưng cụm từ dễ nhớ (bao gồm 4-6 từ ngẫu nhiên) cũng có tổng entropy đủ cao (trên ~60bit), và dễ ghi nhớ hơn, phù hợp cho các tình huống cần nhập thủ công. Điểm quan trọng là các từ phải được chọn ngẫu nhiên thực sự, không phải cụm từ do bạn tự nghĩ ra.

Tại sao nên loại trừ các ký tự dễ nhầm lẫn (0/O/1/l/I)?

Các ký tự này khó phân biệt trong một số phông chữ, dễ gây lỗi nhập. Nếu mật khẩu cần được nhập thủ công, đọc qua điện thoại hoặc in ra để phân phối, khuyến nghị bật tùy chọn loại trừ. Nếu chỉ được sử dụng bởi trình quản lý mật khẩu, giữ lại tất cả các ký tự sẽ có entropy cao hơn.

Thay đổi mật khẩu định kỳ có an toàn hơn không?

Hướng dẫn mới nhất của NIST (SP 800-63B) không còn khuyến nghị thay đổi mật khẩu định kỳ, trừ khi xác nhận mật khẩu đã bị rò rỉ. Việc buộc thay đổi định kỳ ngược lại khiến người dùng chọn mật khẩu yếu hoặc viết ra. Cách tốt hơn là: sử dụng mật khẩu ngẫu nhiên dài + trình quản lý mật khẩu + bật xác thực hai yếu tố (2FA).

Entropy mật khẩu là gì?

Entropy đo lường tính không thể dự đoán của mật khẩu, đơn vị là bit. Entropy = log₂(kích thước nhóm ký tự^độ dài mật khẩu). Ví dụ mật khẩu 16 ký tự được chọn ngẫu nhiên từ 94 ký tự ASCII có thể in, entropy là log₂(94¹⁶) ≈ 104 bit. Entropy càng cao, bẻ khóa vũ phu càng khó.

Trình tạo mật khẩu an toàn là gì?

Trình tạo mật khẩu là một công cụ tạo mật khẩu ngẫu nhiên, không thể dự đoán. Khác với mật khẩu do con người thiết kế, trình tạo mật khẩu thực sự sử dụng **Bộ tạo số giả ngẫu nhiên an toàn mật mã học (CSPRNG)** để chọn ngẫu nhiên các ký tự từ nhóm ký tự được chỉ định, tránh các mô hình có thể dự đoán vốn có khi con người đặt mật khẩu (tên+ngày sinh, phím liên tiếp trên bàn phím như qwerty, tên công ty+năm, v.v.), từ đó giảm đáng kể rủi ro bị tấn công nhồi nhét thông tin xác thực, tấn công từ điển và bẻ khóa vũ phu.

**Tại sao không thể sử dụng Math.random()**: Trạng thái nội bộ của bộ tạo số giả ngẫu nhiên thông thường có thể được suy ngược từ một lượng nhỏ đầu ra, kẻ tấn công có thể dự đoán các số «ngẫu nhiên» được tạo ra sau đó. Công cụ này sử dụng crypto.getRandomValues() của Web Crypto API của trình duyệt, gọi cấp thấp CSPRNG cấp hệ điều hành (như getrandom của Linux, SecRandomCopyBytes của macOS, BCryptGenRandom của Windows), các số ngẫu nhiên tạo ra vượt qua kiểm tra ngẫu nhiên mật mã học, không thể dự đoán.

**Cốt lõi của độ mạnh mật khẩu là entropy**: Entropy = log₂(kích thước nhóm ký tự^độ dài mật khẩu), đơn vị là bit. Ví dụ mật khẩu 16 ký tự được chọn ngẫu nhiên từ 94 ký tự ASCII có thể in, entropy khoảng 104 bit, có nghĩa là kẻ tấn công trung bình cần thử 2¹⁰³ lần để tìm thấy mật khẩu đúng — ngay cả khi thử 1 nghìn tỷ lần mỗi giây, cũng cần khoảng 200 tỷ năm.

**Cụm từ dễ nhớ (Passphrase)**: Bao gồm nhiều từ được chọn ngẫu nhiên (như Brave-Cloud-Star42), mặc dù trông «đơn giản» hơn mật khẩu ngẫu nhiên, nhưng nếu các từ được chọn ngẫu nhiên thực sự, tổng entropy có thể đạt trên 60 bit, đủ an toàn cho hầu hết các tình huống, và dễ ghi nhớ hơn nhiều so với mật khẩu ngẫu nhiên có cùng cường độ. Đây cũng là tư tưởng cốt lõi của truyện tranh kinh điển XKCD #936 và phương pháp Diceware.

**Tất cả mật khẩu được tạo cục bộ trong trình duyệt**, không gửi đến bất kỳ máy chủ nào. Công cụ đồng thời cung cấp kiểm tra độ mạnh: tính toán entropy, ước tính thời gian bẻ khóa vũ phu, phát hiện mô hình mật khẩu yếu (ký tự lặp lại, số/chữ cái liên tục, khớp với mật khẩu yếu phổ biến), giúp bạn hiểu độ mạnh bảo mật thực tế của mật khẩu được tạo.

术语表

CSPRNG (Bộ tạo số giả ngẫu nhiên an toàn mật mã học)
Cryptographically Secure Pseudo-Random Number Generator, bộ tạo số ngẫu nhiên vượt qua kiểm tra ngẫu nhiên mật mã học nghiêm ngặt. Đầu ra không thể dự đoán, ngay cả khi kẻ tấn công biết nhiều đầu ra lịch sử cũng không thể suy luận đầu ra sau đó. Web Crypto API của trình duyệt cấp thấp sử dụng CSPRNG.
Entropy mật khẩu
Chỉ số đo lường tính không thể dự đoán của mật khẩu, đơn vị là bit. Công thức tính: entropy = log₂(N^L), trong đó N là kích thước nhóm ký tự, L là độ dài mật khẩu. Entropy càng cao, bẻ khóa vũ phu càng khó. Thường trên 60 bit là an toàn, trên 100 bit là cực mạnh.
Tấn công vũ phu (Brute Force Attack)
Phương thức tấn công thử tất cả các tổ hợp ký tự có thể để đoán mật khẩu. Phương pháp phòng thủ là sử dụng mật khẩu ngẫu nhiên đủ dài, làm cho số tổ hợp lớn đến mức không thể liệt kê về mặt vật lý.
Tấn công từ điển (Dictionary Attack)
Phương thức tấn công sử dụng danh sách mật khẩu phổ biến (như 123456, password, qwerty, v.v.) để đoán. Hiệu quả hơn nhiều so với tấn công vũ phu, vì đại đa số người dùng sử dụng mật khẩu yếu phổ biến. Mật khẩu tạo ngẫu nhiên miễn dịch tự nhiên với tấn công từ điển.
Tấn công nhồi nhét thông tin xác thực (Credential Stuffing)
Sử dụng tên người dùng và mật khẩu bị rò rỉ từ một trang web để thử đăng nhập vào các trang web khác. Phương pháp phòng thủ là sử dụng mật khẩu duy nhất cho mỗi trang web và kiểm tra mật khẩu đã bị rò rỉ thông qua Have I Been Pwned.
Cụm từ dễ nhớ (Passphrase)
Mật khẩu/cụm từ bao gồm nhiều từ ngẫu nhiên. So với mật khẩu ký tự ngẫu nhiên, cụm từ từ dễ ghi nhớ hơn, khi số từ đủ lớn entropy cũng rất cao. Diceware là phương pháp tạo cụm từ dễ nhớ nổi tiếng nhất, sử dụng xúc xắc để chọn ngẫu nhiên từ danh sách 7772 từ.
Diceware
Phương pháp tạo cụm từ do Arnold Reinhold phát minh vào năm 1995, sử dụng 5 con xúc xắc để xác định một từ (chọn từ danh sách 7776 từ). 6 từ Diceware có entropy khoảng 77 bit, đủ an toàn để chống lại tấn công vũ phu.
NIST SP 800-63B
Hướng dẫn xác nhận danh tính kỹ thuật số do Viện Tiêu chuẩn và Công nghệ Quốc gia Hoa Kỳ ban hành, là tài liệu tham khảo có thẩm quyền nhất trong lĩnh vực bảo mật mật khẩu. Sau khi cập nhật năm 2017, không còn khuyến nghị thay đổi mật khẩu định kỳ, không còn bắt buộc ký tự đặc biệt, thay vào đó nhấn mạnh độ dài mật khẩu, phát hiện danh sách đen và xác thực đa yếu tố.
Xác thực hai yếu tố (2FA/MFA)
Yêu cầu phương thức xác minh danh tính thứ hai ngoài mật khẩu (như mã xác minh điện thoại, TOTP, khóa phần cứng), ngay cả khi mật khẩu bị rò rỉ cũng có thể bảo vệ an toàn tài khoản. NIST khuyến nghị bật 2FA cho tất cả các tài khoản quan trọng.
Danh sách đen mật khẩu yếu
Danh sách mật khẩu đã bị rò rỉ công khai, cực kỳ phổ biến hoặc chứa mô hình có thể dự đoán. Như 123456, password, admin, qwerty, v.v. NIST khuyến nghị kiểm tra xem có trong danh sách đen khi đăng ký và thay đổi mật khẩu hay không.

Ước tính độ dài mật khẩu và thời gian bẻ khóa (chữ hoa+chữ thường+số+ký hiệu)

Độ dài mật khẩuEntropy(bit)Số tổ hợpThời gian bẻ khóa vũ phu (1 nghìn tỷ lần/giây)Xếp hạng an toàn
6 ký tự~37khoảng 139 tỷ< 1 giây❌ Rất yếu
8 ký tự~52khoảng 2.2×10¹⁴khoảng 2.5 ngày❌ Yếu
10 ký tự~65khoảng 3.7×10¹⁸khoảng 116 năm⚠️ Trung bình
12 ký tự~78khoảng 6.1×10²²khoảng 1.93 triệu năm✅ Mạnh
16 ký tự~104khoảng 6.3×10³⁰khoảng 200 tỷ năm✅✅ Rất mạnh
20 ký tự~131khoảng 6.7×10³⁸hàng nghìn tỷ lần tuổi vũ trụ✅✅✅ Không thể bẻ khóa

So sánh ba chế độ mật khẩu

Chế độVí dụ định dạngEntropy điển hìnhKhả năng ghi nhớTrường hợp khuyến nghị
Mật khẩu ngẫu nhiênxK9#mP2$vL8@nQ4!~6.5bit/ký tựKémMật khẩu chính cho trình quản lý mật khẩu, mật khẩu cơ sở dữ liệu, khóa API
Cụm từ dễ nhớBrave-Cloud-Star42~10bit/từTốtMật khẩu Wi-Fi, mật khẩu đăng nhập cần ghi nhớ thủ công
Mã PIN số4829173.3bit/sốTốtMàn hình khóa thiết bị, PIN thẻ ngân hàng, mã xác minh một lần

Authoritative References