Bộ tạo UUID
Tạo UUID v4 (định danh duy nhất toàn cầu ngẫu nhiên). Mỗi lần nhấp tạo ra một UUID mới.
Cách sử dụng công cụ này
- 1
Click the Generate UUID button to produce a fresh random v4 UUID.
- 2
Read the 36-character identifier shown in the canonical 8-4-4-4-12 format below the button.
- 3
Click Copy to put the UUID on your clipboard for pasting into code, a database, or a config file.
- 4
Click Generate UUID again whenever you need another one — every click replaces the value with a brand-new random UUID.
UUID là gì và tại sao phần mềm lại dùng nó?
UUID (Universally Unique Identifier, đôi khi được gọi là GUID trong ngữ cảnh Microsoft) là một giá trị 128 bit được dùng để định danh các thực thể mà không cần sự phối hợp giữa các hệ thống. Ý tưởng của UUID là hai chương trình khác nhau, chạy trên hai máy khác nhau và không hề biết về nhau, có thể tạo ra các UUID và tin tưởng rằng chúng sẽ không bao giờ trùng nhau. Thuộc tính đó tạo điều kiện cho thiết kế hệ thống phân tán: bạn có thể để bất kỳ dịch vụ nào tự tạo định danh tại chỗ mà không cần một bộ đếm trung tâm, hợp nhất các cơ sở dữ liệu mà không cần đánh số lại các hàng, và tạo trước các định danh ở phía máy khách trước cả khi máy chủ nhìn thấy yêu cầu. UUID có năm phiên bản chuẩn được định nghĩa bởi RFC 4122: v1 (dựa trên thời gian + địa chỉ MAC, làm lộ thời điểm tạo và danh tính của máy), v3 (hàm băm MD5 của một không gian tên + tên), v4 (ngẫu nhiên, phổ biến nhất), v5 (hàm băm SHA-1 của một không gian tên + tên). RFC 9562 đã bổ sung v6 (sắp xếp theo thời gian, giống v1 nhưng không làm lộ MAC) và v7 (Unix timestamp + ngẫu nhiên, được thiết kế riêng cho khóa chính của cơ sở dữ liệu vì nó được sắp xếp theo trình tự thời gian). Công cụ này tạo UUID v4 bằng crypto.randomUUID(), vốn sử dụng tính ngẫu nhiên mạnh về mặt mật mã từ hệ điều hành nền tảng của trình duyệt, cùng một nguồn mà các khóa TLS được tạo ra. Đầu ra giống hệt từng byte với đầu ra của uuid.uuid4() trong Python, crypto.randomUUID() của Node và google/uuid.NewRandom() của Go.
Các trường hợp sử dụng phổ biến
Khóa chính cơ sở dữ liệu — thay thế số nguyên tự tăng khi bạn cần hợp nhất cơ sở dữ liệu hoặc tạo ID ở phía client.
Định danh phiên trong cookie — đủ dài để việc dò tìm một ID phiên hợp lệ bằng brute-force là bất khả thi về mặt tính toán.
Khóa idempotency cho các yêu cầu API — lặp lại yêu cầu một cách an toàn; máy chủ khử trùng lặp theo UUID.
Định danh tải tệp lên — đặt tên tệp được tải lên bằng UUID để tránh xung đột đường dẫn và không lộ tên tệp gốc.
ID truy vết phân tán — mỗi yêu cầu nhận một UUID, được lan truyền qua các dịch vụ để tương quan nhật ký.
Định danh fixture kiểm thử — tính ngẫu nhiên có thể dự đoán cho dữ liệu kiểm thử mà không cần phối hợp ID giữa các ca kiểm thử.
Câu hỏi thường gặp
v4 nghĩa là gì?▼
UUID thực sự duy nhất đến mức nào?▼
Tôi nên dùng v4 hay v7 cho khóa chính của cơ sở dữ liệu?▼
Dùng crypto.randomUUID() có an toàn không?▼
Sự khác biệt giữa UUID và GUID là gì?▼
Tôi có thể rút gọn một UUID để dùng trong URL không?▼
Tại sao UUID của tôi bắt đầu bằng các ký tự giống với một UUID khác?▼
Công cụ liên quan
Bộ giải mã JWT
Giải mã JSON Web Tokens (JWT) ngay lập tức. Chạy trong trình duyệt của bạn: các token không bao giờ rời khỏi thiết bị, an toàn để dùng với các bí mật của môi trường production.
Trình định dạng và kiểm tra JSON
Định dạng, kiểm tra và thu gọn JSON trực tuyến. Hoạt động hoàn toàn trong trình duyệt của bạn: dữ liệu của bạn không bao giờ rời khỏi thiết bị.
Trình định dạng XML
Định dạng và làm đẹp các tài liệu XML. Hữu ích cho SOAP, sitemap, feed RSS và tệp cấu hình.
Bộ mã hóa và giải mã Base64
Mã hóa các chuỗi sang Base64 hoặc giải mã Base64 thành văn bản. Tôn trọng quyền riêng tư của bạn: chạy ngay trong trình duyệt.
Bộ mã hóa và giải mã URL
Chuyển đổi văn bản sang dạng mã hóa an toàn cho URL (mã hóa theo phần trăm) và ngược lại. Hữu ích cho chuỗi truy vấn, chuyển hướng và luồng OAuth.
Bộ mã hóa và giải mã thực thể HTML
Chuyển đổi các ký tự đặc biệt thành thực thể HTML (&, <, v.v.) và ngược lại. Hữu ích để nhúng văn bản vào HTML một cách an toàn.