Từ năm 2010 · Hơn 2 triệu lượt chạy công cụ mỗi tháng
Từ năm 2010
Thêm vào Chrome

Hộp Công Cụ Của Tôi

Chế Độ Tự Động

Chưa có công cụ nào được lưu.

Nâng Cấp Lên Phiên Bản Cao Cấp
Công cụ liên quan
Trình Tạo Slug URLTrình tạo khóa WPATrình tạo SECRET_KEY cho DjangoTrình tạo khóa bảo mật WordPress
Trang chủ > Ngẫu nhiên
 

Trình tạo NanoID ngẫu nhiên

Tạo NanoID an toàn về mật mã, lựa chọn thay thế UUID gọn nhẹ hiện đại. Tùy chỉnh bảng ký tự (an toàn URL, hex, chữ và số, không nhầm lẫn), đặt độ dài từ 8 đến 64, tạo hàng loạt và kiểm tra xác suất trùng lặp.

Sử dụng miễn phíKhông cần đăng kýCập nhật 02/2026
Trình tạo NanoID ngẫu nhiênDùng thử ngay — miễn phí ▼
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_-
64 ký tự duy nhất
Tiền tố tùy chọn được thêm vào trước mỗi ID (ví dụ: "usr_", "doc_", "tx-")

Embed Trình tạo NanoID ngẫu nhiên Widget

Giới thiệu về Trình tạo NanoID ngẫu nhiên

Chào mừng bạn đến với Trình tạo NanoID ngẫu nhiên, một công cụ trực tuyến mạnh mẽ để tạo các mã định danh chuỗi duy nhất an toàn, thân thiện với URL. NanoID là một giải pháp thay thế hiện đại, nhẹ cho UUID (Universally Unique Identifiers), cung cấp các ID ngắn hơn với khả năng chống va chạm tương đương. Cho dù bạn đang xây dựng API, cơ sở dữ liệu, trình rút gọn URL hay hệ thống phân tán, trình tạo này đều cung cấp các ID an toàn về mặt mật mã với bảng chữ cái có thể tùy chỉnh, độ dài có thể điều chỉnh và phân tích xác suất va chạm trong thời gian thực.

NanoID là gì?

NanoID là một trình tạo ID chuỗi duy nhất nhỏ gọn, an toàn, thân thiện với URL ban đầu được tạo cho JavaScript bởi Andrey Sitnik. Kể từ đó, nó đã được chuyển sang mọi ngôn ngữ lập trình chính. Cải tiến chính của NanoID là sử dụng bảng chữ cái lớn hơn (mặc định là 64 ký tự) thay vì 16 chữ số thập lục phân của UUID, nghĩa là có nhiều entropy hơn trên mỗi ký tự và ID ngắn hơn.

Một NanoID mặc định trông như thế nào: V1StGXR8_Z5jdHi6B-myT

So sánh NanoID và UUID

Tính năng NanoID UUID v4
Độ dài mặc định 21 ký tự 36 ký tự (có dấu gạch ngang)
Kích thước bảng chữ cái 64 ký tự (A-Za-z0-9_-) 16 ký tự (0-9a-f)
Entropy ~126 bit (21 ký tự) ~122 bit (32 chữ số hex)
An toàn cho URL ✓ Không cần mã hóa ✗ Dấu gạch ngang cần mã hóa trong một số ngữ cảnh
Có thể tùy chỉnh ✓ Bảng chữ cái và độ dài ✗ Định dạng cố định (8-4-4-4-12)
Hiệu quả về kích thước ✓ 6 bit mỗi ký tự ✗ 4 bit mỗi ký tự
Định dạng Chuỗi nhỏ gọn xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx

Cách công cụ này tạo ra các NanoID an toàn

Tính ngẫu nhiên của mật mã

Trình tạo này sử dụng mô-đun secrets của Python ở phía máy chủ, cung cấp tính năng tạo số ngẫu nhiên an toàn về mặt mật mã được hỗ trợ bởi nguồn entropy của hệ điều hành (/dev/urandom trên Linux/macOS, CryptGenRandom trên Windows). Mỗi ký tự trong NanoID được lựa chọn một cách độc lập và không thể dự đoán được từ bảng chữ cái đã chọn.

Cài đặt sẵn bảng chữ cái

Chúng tôi cung cấp 9 bảng chữ cái được tuyển chọn kỹ lưỡng để phù hợp với các trường hợp sử dụng khác nhau:

  • Mặc định NanoID (64 ký tự): Bảng chữ cái NanoID tiêu chuẩn A-Za-z0-9_-. An toàn cho URL, nhỏ gọn và tương thích rộng rãi. 6 bit entropy mỗi ký tự.
  • Chữ và số (62 ký tự): Chỉ gồm chữ cái và chữ số, không có ký tự đặc biệt. An toàn cho tên tệp, trường cơ sở dữ liệu và các ngữ cảnh mà ký hiệu gây ra sự cố.
  • Thập lục phân (16 ký tự): Định dạng hex truyền thống. Hữu ích khi ID cần tích hợp với các hệ thống dựa trên hex như màu CSS hoặc bản tóm tắt băm.
  • Chỉ số (10 ký tự): Chỉ gồm các ID số. Tốt cho số đơn hàng, mã tham chiếu hoặc các hệ thống chỉ chấp nhận chữ số.
  • Chữ thường / Chữ hoa (26 ký tự): Bảng chữ cái một trường hợp cho các hệ thống không phân biệt chữ hoa chữ thường hoặc để thống nhất về mặt trực quan.
  • Không ký tự dễ nhầm lẫn (57 ký tự): Loại bỏ các ký tự dễ bị nhầm lẫn trong nhiều phông chữ (1/l/I, 0/O/o). Lý tưởng cho các mã mà con người có thể đọc được như liên kết mời, số xác nhận và bất kỳ thứ gì người dùng cần nhập thủ công.
  • An toàn cho URL (66 ký tự): Bảng chữ cái mở rộng với -._~ theo các ký tự không được bảo vệ RFC 3986.
  • Bảng chữ cái tùy chỉnh: Xác định bộ ký tự của riêng bạn. Các ký tự trùng lặp sẽ được tự động loại bỏ.

Giải thích về xác suất va chạm

Xác suất va chạm đo lường khả năng hai ID được tạo độc lập giống hệt nhau. Điều này được điều chỉnh bởi bài toán ngày sinh trong lý thuyết xác suất:

  • Tổng số ID có thể có: alphabet_size ^ id_length. Đối với NanoID mặc định: 64^21 = ~2^126
  • Đối với n ID được tạo: xác suất va chạm ~ n^2 / (2 * tổng_số_có_thể)
  • Với 1.000 ID: xác suất cực kỳ nhỏ (~10^-33)
  • Để đạt tỷ lệ va chạm 1% với cài đặt mặc định: bạn sẽ cần ~10^18 ID (một tỷ tỷ)

Máy tính xác suất va chạm trên trang này hiển thị phân tích thời gian thực dựa trên bảng chữ cái và độ dài ID bạn đã chọn, giúp bạn đưa ra quyết định sáng suốt về cấu hình ID cho quy mô cụ thể của mình.

Cách sử dụng trình tạo NanoID

  1. Chọn một bảng chữ cái cài đặt sẵn: Chọn từ 9 cài đặt sẵn hoặc xác định bảng chữ cái tùy chỉnh. Xem trước bảng chữ cái sẽ hiển thị các ký tự chính xác sẽ được sử dụng.
  2. Đặt độ dài ID: Chọn từ 8 đến 64 ký tự. Mặc định là 21, mang lại entropy khoảng 126 bit với bảng chữ cái tiêu chuẩn.
  3. Cấu hình cài đặt tùy chọn: Thêm tiền tố cho ID theo không gian tên (ví dụ: "usr_", "doc_") và chọn số lượng (1-50).
  4. Tạo và sao chép: Nhấp vào "Tạo NanoID" để tạo các ID của bạn. Sử dụng tính năng sao chép bằng một cú nhấp chuột cho từng ID hoặc sao chép tất cả cùng một lúc.

Các trường hợp sử dụng cho NanoID

Khóa chính của cơ sở dữ liệu

NanoID làm khóa chính tuyệt vời cho cơ sở dữ liệu. Chúng ngắn hơn UUID (21 so với 36 ký tự), tiết kiệm không gian lưu trữ và giảm kích thước chỉ mục. Sử dụng tiền tố như "usr_" hoặc "ord_" để làm cho ID tự mô tả.

Mã định danh tài nguyên API

NanoID an toàn cho URL theo mặc định, khiến chúng trở nên lý tưởng cho các điểm cuối REST API: /api/users/V1StGXR8_Z5jdHi6B-myT. Không cần mã hóa URL và chúng trông sạch sẽ trong nhật ký và URL.

Trình rút gọn URL

Một NanoID 10 ký tự với bảng chữ cái mặc định cho phép 64^10 = ~10^18 tổ hợp có thể có - đủ cho bất kỳ trình rút gọn URL nào. Bảng chữ cái không ký tự dễ nhầm lẫn đặc biệt hữu ích ở đây vì người dùng có thể cần nhập URL rút gọn theo cách thủ công.

Token phiên và Token CSRF

Vì công cụ này sử dụng tính ngẫu nhiên về mặt mật mã, các ID được tạo phù hợp cho các token bảo mật. Sử dụng độ dài dài hơn (32-64 ký tự) cho các ứng dụng bảo mật nhạy cảm.

Hệ thống phân tán

NanoID có thể được tạo độc lập trên nhiều máy chủ mà không cần sự phối hợp, không giống như các số nguyên tự động tăng. Xác suất va chạm là không đáng kể ngay cả ở quy mô lớn.

Đặt tên tệp

Sử dụng cài đặt sẵn Chữ và số để đặt tên tệp an toàn trên tất cả các hệ điều hành. Không có ký tự đặc biệt có nghĩa là không có vấn đề thoát ký tự trên Windows, macOS hoặc Linux.

Chọn độ dài phù hợp

Độ dài Entropy (64 ký tự) Phù hợp nhất cho Ngưỡng va chạm 1%
8 48 bit URL ngắn, tập dữ liệu nhỏ ~16 triệu ID
12 72 bit Mục đích chung, tập dữ liệu trung bình ~68 tỷ ID
16 96 bit Hệ thống lớn, thông lượng cao ~280 nghìn tỷ ID
21 126 bit Mặc định, hầu hết các ứng dụng ~10^18 ID
32 192 bit Token bảo mật, cực kỳ an toàn ~10^28 ID
64 384 bit Bảo mật tối đa ~10^57 ID

Ví dụ về mã

JavaScript (sử dụng gói nanoid)

import { nanoid } from 'nanoid';

// Mặc định: 21 ký tự, bảng chữ cái an toàn cho URL
const id = nanoid(); // "V1StGXR8_Z5jdHi6B-myT"

// Độ dài tùy chỉnh
const shortId = nanoid(10); // "IRFa-VaY2b"

// Bảng chữ cái tùy chỉnh
import { customAlphabet } from 'nanoid';
const hexId = customAlphabet('0123456789abcdef', 12);

Python (sử dụng gói nanoid)

from nanoid import generate

# Mặc định NanoID
id = generate() # "V1StGXR8_Z5jdHi6B-myT"

#Độ dài và bảng chữ cái tùy chỉnh
id = generate('0123456789abcdef', 12)

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

NanoID là gì và nó khác với UUID như thế nào?

NanoID là một trình tạo ID chuỗi duy nhất nhỏ gọn, an toàn và thân thiện với URL. Nó có độ dài mặc định là 21 ký tự (so với 36 ký tự của UUID), sử dụng bảng chữ cái lớn hơn (A-Za-z0-9_-) để có nhiều entropy hơn trên mỗi ký tự, an toàn cho URL mà không cần mã hóa và không có định dạng cố định hoặc dấu gạch ngang. NanoID đạt được khả năng chống va chạm tương tự như UUID v4 trong ít ký tự hơn vì nó sử dụng 64 ký hiệu thay vì 16 chữ số thập lục phân.

Các NanoID được tạo bởi công cụ này an toàn đến mức nào?

Công cụ này sử dụng mô-đun secrets của Python, cung cấp tính năng tạo số ngẫu nhiên an toàn về mặt mật mã được hỗ trợ bởi nguồn entropy của hệ điều hành. Mỗi ký tự được lựa chọn một cách độc lập và không thể dự đoán được. Một NanoID 21 ký tự mặc định với bảng chữ cái tiêu chuẩn có entropy khoảng 126 bit, tương đương với khoảng 122 bit của UUID v4.

Tôi nên sử dụng độ dài NanoID nào cho dự án của mình?

Độ dài mặc định là 21 ký tự cung cấp entropy khoảng 126 bit với bảng chữ cái tiêu chuẩn, đủ cho hầu hết các ứng dụng. Đối với trình rút gọn URL hoặc ID hướng tới người dùng, 8-12 ký tự có thể là đủ tùy thuộc vào tổng số lượng ID của bạn. Đối với các hệ thống phân tán tạo ra hàng triệu ID, 21+ ký tự đảm bảo xác suất va chạm không đáng kể. Sử dụng máy tính xác suất va chạm để tìm độ dài phù hợp cho trường hợp sử dụng cụ thể của bạn.

Tôi có thể sử dụng NanoID làm khóa chính trong cơ sở dữ liệu không?

Có, NanoID hoạt động tốt dưới dạng khóa chính của cơ sở dữ liệu. Chúng nhỏ gọn (21 ký tự so với 36 của UUID), an toàn cho URL và có khả năng chống va chạm tuyệt vời. Tuy nhiên, không giống như các số nguyên tự động tăng, chúng không theo thứ tự - vì vậy nếu cơ sở dữ liệu của bạn sử dụng chỉ mục B-tree, các ID ngẫu nhiên có thể gây ra nhiều lần phân tách trang hơn. Cân nhắc sử dụng tiền tố (như 'usr_' hoặc 'ord_') để làm cho ID tự mô tả.

Cài đặt bảng chữ cái "Không ký tự dễ nhầm lẫn" là gì?

Cài đặt Không ký tự dễ nhầm lẫn (No-Lookalike) loại bỏ các ký tự trông giống nhau trong nhiều phông chữ: 1/l/I (số một, chữ l thường, chữ I hoa) và 0/O/o (số không, chữ O hoa, chữ o thường). Điều này làm cho ID dễ đọc, dễ ghi chép và truyền đạt bằng miệng hơn nhiều. Nó lý tưởng cho các ID hướng tới người dùng như mã mời, số xác nhận hoặc bất kỳ ID nào mà con người cần nhập thủ công.

Tài nguyên bổ sung

Tham khảo nội dung, trang hoặc công cụ này như sau:

"Trình tạo NanoID ngẫu nhiên" tại https://MiniWebtool.com/vi/trình-tạo-nanoid-ngẫu-nhiên/ từ MiniWebtool, https://MiniWebtool.com/

bởi miniwebtool team. Cập nhật: 07/02/2026

Ngẫu nhiên:

Công cụ phổ biến và mới cập nhật:

Trình tạo chuỗi ngẫu nhiênTrình tạo PIN ngẫu nhiênCông cụ tạo User-Agent ngẫu nhiênXem tất cả →
Trang chủ > Ngẫu nhiên > Trình tạo NanoID ngẫu nhiên