Intro - No stand alone

UUID generator online — tạo UUID v4, v7 ngẫu nhiên nhanh chóng

Admin
May 31, 2026
6 phút đọc
4

Mỗi lần tạo user mới, order mới, hay bất kỳ record nào trong database — bạn cần một ID duy nhất. Dùng auto-increment integer? Đơn giản nhưng dễ bị đoán, dễ lộ thông tin nghiệp vụ, và gây đau đầu khi merge nhiều database. Dùng UUID? Ngẫu nhiên, toàn cầu duy nhất, và không ai đoán được số tiếp theo. Tool này tạo UUID cho bạn ngay lập tức — một cái hoặc hàng trăm cái cùng lúc.

UUID là gì?

UUID (Universally Unique Identifier) là định danh 128-bit được thiết kế để duy nhất trên toàn cầu — lý thuyết là không bao giờ có hai UUID giống nhau, dù được tạo ra ở hai máy tính khác nhau vào cùng một thời điểm. UUID được chuẩn hoá bởi RFC 4122 và thường được biểu diễn dưới dạng chuỗi hex 32 ký tự, phân tách bằng dấu gạch ngang theo định dạng:

plain
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

Ví dụ: 550e8400-e29b-41d4-a716-446655440000

UUID có tổng cộng 2^128 ≈ 340 undecillion giá trị có thể — con số lớn đến mức nếu bạn tạo 1 tỷ UUID mỗi giây trong 100 năm, xác suất trùng vẫn gần như bằng 0.

Các phiên bản UUID

Phiên bảnCơ chế tạoĐặc điểmKhi nào dùng
UUID v1Timestamp + MAC addressCó thứ tự thời gian, lộ MAC address của máy tạo raÍt dùng do lo ngại privacy — lộ thông tin máy chủ
UUID v3MD5 hash của namespace + nameDeterministic — cùng input luôn cho cùng UUIDTạo UUID nhất quán từ tên cố định (URL, email…)
UUID v4Hoàn toàn ngẫu nhiênPhổ biến nhất, không có thông tin nhận dạng, khó đoánHầu hết use case: ID record, session token, API key
UUID v5SHA-1 hash của namespace + nameDeterministic như v3 nhưng dùng SHA-1 an toàn hơnThay thế v3 khi cần bảo mật tốt hơn
UUID v7Unix timestamp + randomMới nhất — có thứ tự thời gian như v1, an toàn như v4Database index, distributed system cần sắp xếp theo thời gian

Khuyến nghị thực tế: Dùng UUID v4 cho hầu hết trường hợp. Chọn UUID v7 nếu bạn cần UUID có thứ tự thời gian để tối ưu database index (B-tree index hoạt động tốt hơn với giá trị tăng dần).

Cách sử dụng tool

  • Bước 1: Chọn phiên bản UUID muốn tạo — mặc định là v4 (phổ biến nhất).
  • Bước 2: Nhập số lượng UUID cần tạo — từ 1 đến hàng trăm cái cùng lúc.
  • Bước 3: Chọn định dạng: chữ thường (lowercase), chữ hoa (uppercase), hoặc không có dấu gạch ngang.
  • Bước 4: Nhấn Generate — copy từng UUID hoặc copy toàn bộ danh sách.

UUID vs các loại ID khác

Loại IDVí dụƯu điểmNhược điểm
Auto-increment1, 2, 3, 4…Nhỏ gọn, dễ đọc, index nhanhLộ số lượng record, không dùng được khi merge database
UUID v4550e8400-e29b-41d4-a716…Toàn cầu duy nhất, không đoán được, dùng được ở clientDài (36 ký tự), index kém hơn do random
ULID01ARZ3NDEKTSV4RRFFQ69G5FAVCó thứ tự, URL-safe, ngắn hơn UUIDÍt phổ biến hơn UUID
NanoIDV1StGXR8_Z5jdHi6B-myTNgắn, URL-safe, tùy chỉnh được độ dàiKhông có chuẩn chính thức như UUID
Snowflake ID1541815603606036480Có thứ tự thời gian, 64-bit integer hiệu quảCần cấu hình worker ID, phức tạp hơn

Ứng dụng thực tế của UUID

Use caseLý do dùng UUID
Primary key trong databaseTạo ID ở client trước khi gửi lên server — giúp idempotent request, không cần server trả về ID
Session token, API keyNgẫu nhiên, không đoán được — bảo mật hơn ID tuần tự
Tên file uploadTránh trùng tên file, tránh path traversal attack
Correlation ID trong logTheo dõi một request xuyên suốt nhiều service trong microservices
Idempotency keyĐảm bảo request chỉ xử lý một lần dù gửi nhiều lần (payment, order)
Merge nhiều databaseKhông xung đột ID khi gộp dữ liệu từ nhiều nguồn khác nhau

Dùng UUID trong các ngôn ngữ lập trình

Ngôn ngữCách tạo UUID v4
JavaScriptcrypto.randomUUID() (browser & Node 19+) hoặc thư viện uuid
Pythonimport uuid; str(uuid.uuid4())
PHPStr::uuid() trong Laravel, hoặc ramsey/uuid library
Gogithub.com/google/uuiduuid.New().String()
JavaUUID.randomUUID().toString()
MySQLSELECT UUID();
PostgreSQLSELECT gen_random_uuid(); (PostgreSQL 13+)

Kết luận

UUID là một trong những khái niệm nền tảng mà developer nào làm việc với database và API đều cần nắm. Đơn giản ở bề mặt — một chuỗi ký tự trông ngẫu nhiên — nhưng đằng sau là thiết kế thông minh giải quyết bài toán định danh trong hệ thống phân tán. Tool này giúp bạn tạo UUID ngay khi cần mà không phải mở terminal hay chạy script.

Khám phá thêm các tool hữu ích tại codetuthub.com/tools.

Toàn Nguyễn
Toàn NguyễnTác giả

Tác giả tại CodeTutHub

Xin chào, mình là Toàn 👋
Là Senior Full-Stack Developer ở HCM, đồng thời là người đứng sau CodeTutHub. Mình viết về những gì mình thực sự dùng hàng ngày — từ Laravel, Next.js, đến cách workflow lập trình với AI agents như Claude Code và Cursor.
Nếu bạn thấy bài này hữu ích, hãy subscribe newsletter hoặc kết nối với mình. Mình luôn sẵn sàng thảo luận về dự án thú vị, cơ hội remote, hoặc đơn giản là chat về tech.
Ho Chi Minh City · Open for collaboration

0 Bình luận

Chưa có bình luận nào. Hãy là người đầu tiên!
Đang trả lời
Xoá bình luận

Bạn có chắc muốn xoá bình luận này?
Hành động này không thể hoàn tác.

Thông báo hệ thống
Thông tin