Kết nối qua MCP →

Nhập phép tính

Công thức

Quảng cáo

Kết quả

Kết quả
918754
6-digit random PIN
Độ dài mã PIN 6 digits
Số tổ hợp có thể 151.200

Trình Tạo Mã PIN Ngẫu Nhiên là gì?

Công cụ này tạo ra một mã PIN ngẫu nhiên (Personal Identification Number — số nhận dạng cá nhân) — một chuỗi chữ số dùng cho thẻ ATM, ngân hàng trực tuyến, khóa điện thoại và nhiều loại mã bảo mật đăng nhập khác. Bạn chỉ cần chọn số lượng chữ số mong muốn (từ 1 đến 100) và quyết định xem một chữ số có được phép xuất hiện nhiều lần hay không. Mỗi lần nhấn tạo, bạn sẽ nhận được một mã hoàn toàn mới.

Cách sử dụng

Nhập số chữ số bạn cần vào ô "Tạo mã PIN có số chữ số là" (phổ biến nhất là 4 và 6 chữ số). Giữ tùy chọn "Cho phép số trùng lặp" được tích để cho phép các chữ số lặp lại (đây là thiết lập thông thường), hoặc bỏ tích nếu muốn mỗi chữ số đều khác nhau. Nhấn tính toán để nhận mã của bạn. Vì kết quả là một chuỗi chữ số nên các số 0 ở đầu vẫn được giữ nguyên — "036784" là một mã PIN 6 chữ số hoàn toàn hợp lệ.

Giải thích công thức

Khi cho phép trùng lặp, mỗi vị trí được điền bằng một lần bốc ngẫu nhiên độc lập theo phân phối đều: \(d = \lfloor \text{rand()} \times 10 \rfloor\), trong đó rand() trả về giá trị trong khoảng \([0,1)\). Nhờ vậy, mỗi chữ số từ 0 đến 9 đều có xác suất bằng nhau là \(\frac{1}{10}\), và tổng cộng có $$N_{\text{possible}} = 10^{\,\text{PIN Length}}$$ mã PIN có thể tạo ra. Khi không cho phép trùng lặp, mười chữ số [0-9] được xáo trộn bằng thuật toán Fisher-Yates rồi lấy N chữ số đầu tiên, nên tất cả chữ số đều khác nhau; lúc này số khả năng là số chỉnh hợp $$N_{\text{possible}} = \frac{10!}{\left(10 - \text{PIN Length}\right)!}.$$ Vì chỉ có đúng mười chữ số khác nhau, một mã PIN không trùng lặp tối đa chỉ dài 10 chữ số — với độ dài lớn hơn, công cụ sẽ tự động cho phép trùng lặp.

So sánh giữa cho phép chữ số lặp lại và chữ số duy nhất
Cho phép lặp lại sẽ dùng lại cả mười chữ số; chế độ duy nhất loại bỏ mỗi chữ số sau khi đã chọn.
Mỗi ô mã PIN bốc một chữ số ngẫu nhiên từ 0 đến 9
Mỗi vị trí của mã PIN được điền bằng một lần bốc ngẫu nhiên độc lập từ các chữ số 0-9.

Ví dụ minh họa

Với độ dài 6 và cho phép trùng lặp, giả sử các giá trị ngẫu nhiên là 0.36, 0.61, 0.38, 0.74, 0.85, 0.42. Nhân mỗi giá trị với 10 rồi lấy phần nguyên ta được \(3, 6, 3, 7, 8, 4\), vậy mã PIN là "363784" — lưu ý chữ số 3 xuất hiện hai lần, điều này được phép. Với độ dài 4 và không cho phép trùng lặp, một lần xáo trộn [0-9] có thể bắt đầu bằng \([7,2,9,0,\ldots]\); lấy bốn chữ số đầu sẽ cho ra "7290", tất cả đều khác nhau.

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

Mã PIN có thể bắt đầu bằng số 0 không? Có. Kết quả được xử lý dưới dạng văn bản nên các số 0 ở đầu luôn được giữ nguyên, không bao giờ bị lược bỏ.

Tại sao tôi không thể tạo mã PIN 12 chữ số không trùng lặp? Vì chỉ có đúng mười chữ số khác nhau (0-9). Bất kỳ mã PIN nào dài hơn mười chữ số đều buộc phải dùng lại chữ số, nên công cụ sẽ tự động chuyển sang chế độ cho phép trùng lặp.

Mã này có đủ an toàn cho tài khoản thực tế không? Công cụ sử dụng bộ tạo số giả ngẫu nhiên thông thường, không có bảo đảm về mặt mã hóa. Nó rất tiện lợi cho nhu cầu hằng ngày, nhưng với các khóa đòi hỏi bảo mật cao, bạn nên dùng công cụ mã hóa chuyên dụng.

Cập nhật lần cuối: