tigtools

Trình tạo UUID

Tạo mã định danh duy nhất trên toàn cầu ngay trong trình duyệt, hàng loạt và theo định dạng bạn cần. Dán UUID hiện có bên dưới để kiểm tra phiên bản và biến thể.

Chạy ngay trên trình duyệt Không cần đăng ký

Phiên bản

122 bit ngẫu nhiên từ bộ tạo số ngẫu nhiên mật mã của trình duyệt. Lựa chọn phù hợp cho hầu hết mục đích.

    Kiểm tra UUID

    Cách sử dụng

    1. Chọn v4 để tạo ID ngẫu nhiên hoặc v7 để tạo ID được sắp xếp theo thời điểm tạo.
    2. Chọn số lượng cần tạo (1 đến 1,000) và định dạng: chữ hoa, có hoặc không có dấu gạch nối, có hoặc không có dấu ngoặc nhọn.
    3. Sao chép từng UUID bằng nút tương ứng, sao chép tất cả hoặc tải xuống dưới dạng tệp văn bản với mỗi UUID trên một dòng.
    4. Để kiểm tra UUID hiện có, hãy dán UUID vào mục “Kiểm tra UUID”.

    Cách hoạt động

    UUID (còn gọi là GUID) là mã định danh 128 bit, thường được viết dưới dạng 32 chữ số thập lục phân chia thành năm nhóm theo thứ tự 8-4-4-4-12. Chữ số đầu tiên của nhóm thứ ba là phiên bản, còn chữ số đầu tiên của nhóm thứ tư mã hóa biến thể (8, 9, a hoặc b đối với UUID tiêu chuẩn). Định dạng này được quy định trong RFC 9562, thay thế RFC 4122 vào năm 2024.

    UUID phiên bản 4 được tạo ngẫu nhiên. Công cụ này sử dụng crypto.randomUUID nếu có, nếu không sẽ dùng crypto.getRandomValues; cả hai đều đảm bảo an toàn bằng mật mã và công cụ không bao giờ dùng Math.random. Với 122 bit ngẫu nhiên, khả năng hai UUID v4 trùng nhau là không đáng kể: cần tạo khoảng 2.7 × 10^18 UUID mới có 50% khả năng xuất hiện một bản trùng.

    UUID phiên bản 7 bắt đầu bằng dấu thời gian Unix 48 bit tính bằng mili giây, tiếp theo là phiên bản, một trường 12 bit và 62 bit ngẫu nhiên. Vì thời gian nằm ở đầu, các giá trị v7 được sắp xếp theo thứ tự tạo, giúp chỉ mục cơ sở dữ liệu gọn hơn và thao tác chèn nhanh hơn so với khóa v4 ngẫu nhiên. Khi tạo nhiều UUID v7 trong cùng một mili giây, công cụ này dùng trường 12 bit làm bộ đếm (theo phương pháp mô tả trong RFC 9562, mục 6.2), nhờ đó các UUID trong một lô luôn tăng dần nghiêm ngặt. Lưu ý rằng UUID v7 tiết lộ thời điểm tạo.

    Công cụ kiểm tra chấp nhận UUID có hoặc không có dấu gạch nối, chữ hoa hoặc chữ thường, có dấu ngoặc nhọn hoặc có tiền tố urn:uuid:. Công cụ cho biết phiên bản và biến thể, nhận diện các UUID đặc biệt nil và max, đồng thời hiển thị thời điểm tạo được mã hóa trong các phiên bản 1, 6 và 7.

    Ví dụ

    Khóa chính cho bảng mới

    Tạo 100 UUID v7 làm dữ liệu thử nghiệm, chẳng hạn 0192b3c4-5d6e-7f80-9a1b-2c3d4e5f6a7b. Các UUID này được sắp xếp theo thời điểm tạo, vì vậy những hàng được chèn sau sẽ có khóa lớn hơn, tương tự cột tự tăng.

    GUID cho dự án Windows hoặc .NET

    Bật Chữ hoa và Dấu ngoặc nhọn để dùng định dạng kiểu registry {3F2504E0-4F89-41D3-9A0C-0305E82C3301} thường thấy trong tệp dự án Visual Studio, class ID COM và Windows Registry.

    Kiểm tra ID trong nhật ký

    Dán 018f6e2c-1a2b-7c3d-8e4f-5a6b7c8d9e0f vào công cụ kiểm tra. Công cụ cho biết đây là phiên bản 7 với biến thể tiêu chuẩn, đồng thời giải mã 12 chữ số đầu thành dấu thời gian vào tháng 5 năm 2024, cho biết thời điểm tạo bản ghi.

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

    Nên dùng UUID v4 hay v7?

    Dùng v4 khi ID không được tiết lộ thông tin nào, chẳng hạn mã thông báo công khai hoặc tên tệp. Dùng v7 cho khóa cơ sở dữ liệu và ID sự kiện, khi việc sắp xếp theo thời gian giúp cải thiện hiệu năng chỉ mục. Cả hai đều có đủ bit ngẫu nhiên để khả năng trùng lặp không đáng lo ngại trong thực tế.

    Các UUID này có thực sự duy nhất không?

    Các UUID này không được đối chiếu với bất kỳ danh sách nào, nhưng được tạo bằng bộ sinh số ngẫu nhiên an toàn bằng mật mã nên khả năng trùng lặp thấp đến mức có thể bỏ qua trong các hệ thống thực tế. Giá trị v7 cũng chứa thời gian hiện tại.

    UUID có giống GUID không?

    Có. GUID (mã định danh duy nhất toàn cục) là tên Microsoft dùng cho cùng định dạng 128 bit này. GUID thường được hiển thị bằng chữ hoa và đặt trong dấu ngoặc nhọn; bạn có thể bật các tùy chọn này tại đây.

    Có thể dùng UUID làm mật khẩu hoặc mã thông báo bí mật không?

    UUID v4 có 122 bit ngẫu nhiên nên khó đoán, nhưng UUID được thiết kế làm mã định danh chứ không phải bí mật, và thường xuất hiện trong nhật ký cũng như URL. Với khóa API hoặc liên kết đặt lại, hãy dùng công cụ tạo mã thông báo ngẫu nhiên chuyên dụng.

    Dấu thời gian v7 có dùng đồng hồ máy tính của tôi không?

    Có. Thời gian được lấy từ đồng hồ thiết bị của bạn, tính bằng mili giây UTC. Nếu đồng hồ sai thì thời gian được mã hóa cũng sẽ sai, nhưng các ID trong cùng một lô vẫn tăng dần.

    Quyền riêng tư

    UUID được tạo trong trình duyệt bằng bộ tạo số ngẫu nhiên mật mã của trình duyệt. UUID không được gửi đến máy chủ, lưu trữ hay ghi nhật ký, vì vậy không ai khác có thể xem các giá trị bạn tạo hoặc kiểm tra.