Tạo số ngẫu nhiên
Tạo số ngẫu nhiên với phạm vi tùy chỉnh.
Trình tạo số ngẫu nhiên trực tuyến: giá trị an toàn mật mã
Tạo số ngẫu nhiên là nhu cầu phổ biến trong nhiều lĩnh vực: từ rút thăm và trò chơi bàn đến mô phỏng thống kê, kiểm thử phần mềm và ứng dụng mật mã. Trình tạo dùng API crypto.getRandomValues tạo giá trị an toàn mật mã từ nguồn entropy hệ điều hành, khác Math.random() dùng thuật toán giả ngẫu nhiên dự đoán được.
Cho phép xác định phạm vi min/max, chọn số lượng tạo (đến 100 cùng lúc), cho phép trùng lặp hay không và sắp xếp kết quả. Khi tắt trùng lặp, dùng thuật toán Fisher-Yates để xáo trộn phạm vi và chọn N giá trị đầu, đảm bảo phân phối đều và công bằng.
Xử lý cục bộ trên trình duyệt, không gửi dữ liệu. Số được tạo dễ dàng sao chép vào clipboard. Lý tưởng cho rút thăm, xổ số, phân công ngẫu nhiên, tạo dữ liệu kiểm thử và bất kỳ tình huống cần ngẫu nhiên chất lượng.
Câu hỏi thường gặp
Số được tạo có thực sự ngẫu nhiên không?
Có. Dùng hàm crypto.getRandomValues của trình duyệt, truy cập nguồn entropy hệ điều hành để tạo giá trị an toàn mật mã. Mạnh hơn đáng kể so với Math.random() dùng bộ tạo giả ngẫu nhiên dự đoán được. Số phù hợp ngay cả cho ứng dụng bảo mật.
Có thể dùng cho rút thăm hay xổ số không?
Có, công cụ hoàn hảo cho rút thăm không chính thức. Cấu hình phạm vi theo số người tham gia, tắt trùng lặp để tránh lặp và tạo số người thắng cần thiết. Kết quả công bằng nhờ sử dụng mật mã trình duyệt.
crypto.getRandomValues và Math.random khác nhau thế nào?
Math.random() dùng thuật toán xác định, biết hạt giống ban đầu có thể dự đoán tất cả giá trị tương lai. crypto.getRandomValues() lấy byte từ nguồn entropy hệ điều hành (nhiễu phần cứng, timing CPU, v.v.), tạo giá trị không thể dự đoán. Cho rút thăm, trò chơi và bảo mật, luôn khuyên dùng crypto.getRandomValues().
Muốn tìm hiểu thêm? Đọc hướng dẫn đầy đủ →