Chuyển đến nội dung
ToolMug

Tạo UUID online

Tạo ID duy nhất theo lô — UUID v4 ngẫu nhiên, UUID v7 và ULID sắp được theo thời gian, hoặc Nano ID ngắn — và kiểm tra bất kỳ UUID nào để đọc phiên bản, variant và thời gian tạo ẩn trong đó. ID được tạo bằng bộ sinh số ngẫu nhiên an toàn của trình duyệt.

Chạy trong trình duyệt — không có dữ liệu nào bạn nhập bị tải lên

Hoàn toàn ngẫu nhiên. Lựa chọn được hỗ trợ rộng rãi nhất.

Khoảng 326.915,1 NT ID trước khi có 1% khả năng xảy ra trùng lặp.

Kiểm tra một ID

Cách sử dụng

  1. Chọn loại ID. UUID v4 là lựa chọn mặc định; chọn v7 hoặc ULID cho khóa cơ sở dữ liệu.
  2. Đặt số lượng cần tạo và định dạng — chữ hoa, dấu gạch nối, dấu ngoặc nhọn hoặc độ dài Nano ID.
  3. Sao chép danh sách hoặc tải xuống dạng tệp văn bản. Nhấn Tạo để có một lô mới.
  4. Để kiểm tra một ID có sẵn, dán nó vào "Kiểm tra một ID".

Giải thích tùy chọn

UUID v4
122 bit ngẫu nhiên. Được mọi cơ sở dữ liệu và ngôn ngữ hỗ trợ, lựa chọn phổ biến nhất.
UUID v7
Định nghĩa trong RFC 9562 (2024). 48 bit đầu là dấu thời gian Unix theo mili giây, nên ID mới luôn sắp sau ID cũ. Nhờ đó chỉ mục B-tree gọn hơn và việc chèn dữ liệu nhanh hơn trong PostgreSQL và MySQL.
ULID
26 ký tự Crockford Base32 — gồm dấu thời gian 48 bit và 80 bit ngẫu nhiên. Sắp xếp được, an toàn cho URL và không phân biệt hoa thường.
Nano ID
ID ngẫu nhiên ngắn từ bảng chữ 64 ký tự an toàn cho URL. 21 ký tự cho độ an toàn chống trùng tương đương UUID v4.

Các định dạng ID

Loại Ví dụ Độ dài Sắp theo thời gian
UUID v4 9b2e4c1a-7f3d-4e8b-a1c2-5d6e7f8091a2 36 Không
UUID v7 0199855e-7a40-7c3b-9e1f-2a3b4c5d6e7f 36 Có
ULID 01K5JQ8H2G7R4T6W9X3Y5Z7A1B 26 Có
Nano ID V1StGXR8_Z5jdHi6B-myT 21 Không

Tạo UUID bằng code

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

Hai UUID được tạo ra có thể trùng nhau không?

Trên thực tế là không. Với 122 bit ngẫu nhiên, bạn cần tạo khoảng 2,7 × 10¹⁸ UUID v4 mới có 50% khả năng xảy ra một cặp trùng.

Nên dùng UUID v4 hay v7 làm khóa chính?

v7 thường tốt hơn cho bảng mới. Khóa v4 ngẫu nhiên rơi rải rác trong chỉ mục, gây phân trang (page split) và cache kém; khóa v7 đến theo thứ tự thời gian như auto-increment nhưng vẫn duy nhất giữa nhiều máy chủ.

UUID v7 có để lộ thời điểm tạo bản ghi không?

Có, chính xác đến mili giây. Nếu thời điểm tạo là thông tin nhạy cảm, hãy dùng v4 cho ID hiển thị công khai.

Các ID này có đủ an toàn để làm token không?

Phần ngẫu nhiên lấy từ crypto.getRandomValues nên không thể đoán được. Với token đăng nhập hay đặt lại mật khẩu, nên dùng ít nhất 128 bit ngẫu nhiên (ví dụ Nano ID 22 ký tự) thay vì UUID v7, vì phần dấu thời gian của v7 có thể đoán được.

GUID có giống UUID không?

Có. GUID là tên Microsoft đặt cho cùng định dạng 128 bit, thường viết chữ hoa trong dấu ngoặc nhọn, bạn có thể chọn kiểu này ở trên.

Quyền riêng tư

Công cụ này chạy hoàn toàn trong trình duyệt của bạn. Tệp và văn bản được xử lý ngay trên thiết bị và không bao giờ được tải lên máy chủ của chúng tôi.

Công cụ liên quan