Permudah alur kerja Anda: Cari miniwebtool.
Tambahkan
Beranda > Acak > Generator NanoID Acak
 

Generator NanoID Acak

Hasilkan NanoID yang aman secara kriptografis - alternatif modern dan ringkas untuk UUID. Dilengkapi dengan alfabet yang dapat disesuaikan (aman untuk URL, heksadesimal, alfanumerik, tanpa karakter mirip), panjang yang dapat disesuaikan (8-64 karakter), kalkulator probabilitas tabrakan, pembuatan massal, dan salin satu klik. Sangat cocok untuk pengembang yang membangun basis data, API, penyingkat URL, dan sistem terdistribusi.

Generator NanoID Acak
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_-
64 karakter unik
Awalan opsional yang ditambahkan sebelum setiap ID (misal "usr_", "doc_", "tx-")

Embed Generator NanoID Acak Widget

Tentang Generator NanoID Acak

Selamat datang di Generator NanoID Acak, alat online yang kuat untuk menghasilkan pengidentifikasi string unik yang aman dan ramah URL. NanoID adalah alternatif modern dan ringan untuk UUID (Universally Unique Identifiers), menawarkan ID yang lebih pendek dengan ketahanan tabrakan yang sebanding. Baik Anda membangun API, database, pemendek URL, atau sistem terdistribusi, generator ini menyediakan ID yang aman secara kriptografis dengan alfabet yang dapat disesuaikan, panjang yang dapat diatur, dan analisis probabilitas tabrakan waktu nyata.

Apa itu NanoID?

NanoID adalah generator ID string unik yang kecil, aman, dan ramah URL yang awalnya dibuat untuk JavaScript oleh Andrey Sitnik. Sejak itu, alat ini telah diporting ke setiap bahasa pemrograman utama. Inovasi utama NanoID adalah menggunakan alfabet yang lebih besar (64 karakter secara default) alih-alih 16 digit heksadesimal UUID, yang berarti lebih banyak entropi per karakter dan ID yang lebih pendek.

Contoh tampilan NanoID default: V1StGXR8_Z5jdHi6B-myT

Perbandingan NanoID vs UUID

Fitur NanoID UUID v4
Panjang Default 21 karakter 36 karakter (dengan tanda hubung)
Ukuran Alfabet 64 karakter (A-Za-z0-9_-) 16 karakter (0-9a-f)
Entropi ~126 bit (21 karakter) ~122 bit (32 digit hex)
Aman untuk URL ✓ Tidak perlu pengkodean ✗ Tanda hubung perlu pengkodean di beberapa konteks
Dapat Dikustomisasi ✓ Alfabet dan panjang ✗ Format tetap (8-4-4-4-12)
Efisiensi Ukuran ✓ 6 bit per karakter ✗ 4 bit per karakter
Format String ringkas xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx

Bagaimana Alat Ini Menghasilkan NanoID yang Aman

Keacakan Kriptografis

Generator ini menggunakan modul secrets Python di sisi server, yang menyediakan pembuatan nomor acak yang aman secara kriptografis yang didukung oleh sumber entropi sistem operasi (/dev/urandom di Linux/macOS, CryptGenRandom di Windows). Setiap karakter dalam NanoID dipilih secara independen dan tidak dapat diprediksi dari alfabet yang dipilih.

Preset Alfabet

Kami menawarkan 9 preset alfabet yang dikurasi dengan cermat untuk mencocokkan berbagai kasus penggunaan:

  • Default NanoID (64 karakter): Alfabet standar NanoID A-Za-z0-9_-. Aman untuk URL, ringkas, dan kompatibel secara luas. 6 bit entropi per karakter.
  • Alfanumerik (62 karakter): Huruf dan digit saja, tanpa karakter khusus. Aman untuk nama file, kolom database, dan konteks di mana simbol menyebabkan masalah.
  • Heksadesimal (16 karakter): Format hex tradisional. Berguna saat ID perlu diintegrasikan dengan sistem berbasis hex seperti warna CSS atau intisari hash.
  • Hanya Angka (10 karakter): Hanya ID numerik. Baik untuk nomor pesanan, kode referensi, atau sistem yang hanya menerima digit.
  • Huruf Kecil / Huruf Besar (26 karakter): Alfabet huruf tunggal untuk sistem yang tidak peka huruf besar-kecil atau konsistensi visual.
  • Tanpa Karakter Mirip (57 karakter): Menghapus karakter yang mudah membingungkan (1/l/I, 0/O/o). Ideal untuk kode yang dapat dibaca manusia seperti tautan undangan, nomor konfirmasi, dan apa pun yang perlu diketik pengguna secara manual.
  • Aman-URL (66 karakter): Alfabet diperluas dengan -._~ sesuai karakter tidak dicadangkan RFC 3986.
  • Alfabet Kustom: Tentukan set karakter Anda sendiri. Karakter secara otomatis dihapus jika ada yang duplikat.

Penjelasan Probabilitas Tabrakan

Probabilitas tabrakan mengukur seberapa besar kemungkinan dua ID yang dihasilkan secara independen identik. Ini diatur oleh masalah ulang tahun (birthday problem) dalam teori probabilitas:

  • Total kemungkinan ID: ukuran_alfabet ^ panjang_id. Untuk NanoID default: 64^21 = ~2^126
  • Untuk n ID yang dihasilkan: probabilitas tabrakan ~ n^2 / (2 * total_kemungkinan)
  • Dengan 1.000 ID: probabilitas sangat kecil secara astronomis (~10^-33)
  • Untuk mencapai peluang tabrakan 1% dengan pengaturan default: Anda membutuhkan ~10^18 ID (satu kuintiliun)

Kalkulator probabilitas tabrakan di halaman ini menunjukkan analisis waktu nyata berdasarkan alfabet dan panjang ID yang Anda pilih, membantu Anda membuat keputusan yang tepat tentang konfigurasi ID untuk skala spesifik Anda.

Cara Menggunakan Generator NanoID

  1. Pilih preset alfabet: Pilih dari 9 preset atau tentukan alfabet kustom. Pratinjau alfabet menunjukkan karakter tepat yang akan digunakan.
  2. Atur panjang ID: Pilih dari 8 hingga 64 karakter. Standarnya adalah 21, yang memberikan entropi ~126 bit dengan alfabet standar.
  3. Konfigurasikan pengaturan opsional: Tambahkan awalan untuk ID yang memiliki namespace (misalnya, "usr_", "doc_") dan pilih jumlah (1-50).
  4. Hasilkan dan salin: Klik "Hasilkan NanoID" untuk membuat ID Anda. Gunakan salin sekali klik untuk ID individu atau salin semua sekaligus.

Kasus Penggunaan untuk NanoID

Kunci Primer Database

NanoID menjadi kunci primer yang sangat baik untuk database. Mereka lebih pendek dari UUID (21 vs 36 karakter), menghemat ruang penyimpanan dan mengurangi ukuran indeks. Gunakan awalan seperti "usr_" atau "ord_" untuk membuat ID mendokumentasikan diri sendiri secara otomatis.

Pengidentifikasi Sumber Daya API

NanoID aman untuk URL secara default, menjadikannya ideal untuk titik akhir REST API: /api/users/V1StGXR8_Z5jdHi6B-myT. Tidak perlu pengkodean URL, dan terlihat bersih di log serta URL.

Pemendek URL

NanoID 10 karakter dengan alfabet default memberikan 64^10 = ~10^18 kemungkinan kombinasi - cukup untuk pemendek URL mana pun. Alfabet No-Lookalike sangat berguna di sini karena pengguna mungkin perlu mengetik URL pendek secara manual.

Token Sesi dan Token CSRF

Karena alat ini menggunakan keacakan kriptografis, ID yang dihasilkan cocok untuk token keamanan. Gunakan panjang yang lebih besar (32-64 karakter) untuk aplikasi keamanan yang sensitif.

Sistem Terdistribusi

NanoID dapat dihasilkan secara independen di beberapa server tanpa koordinasi, tidak seperti integer auto-increment. Probabilitas tabrakan sangat kecil bahkan pada skala masif.

Penamaan File

Gunakan preset Alfanumerik untuk nama file yang aman di semua sistem operasi. Tanpa karakter khusus berarti tidak ada masalah karakter lolos (escaping) di Windows, macOS, atau Linux.

Memilih Panjang yang Tepat

Panjang Entropi (64-karakter) Terbaik Untuk Ambang Batas Tabrakan 1%
8 48 bit URL pendek, dataset kecil ~16 juta ID
12 72 bit Tujuan umum, dataset menengah ~68 miliar ID
16 96 bit Sistem besar, throughput tinggi ~280 triliun ID
21 126 bit Default, sebagian besar aplikasi ~10^18 ID
32 192 bit Token keamanan, ultra-aman ~10^28 ID
64 384 bit Keamanan maksimum ~10^57 ID

Contoh Kode

JavaScript (menggunakan paket nanoid)

import { nanoid } from 'nanoid';

// Default: 21 karakter, alfabet aman-URL
const id = nanoid(); // "V1StGXR8_Z5jdHi6B-myT"

// Panjang kustom
const shortId = nanoid(10); // "IRFa-VaY2b"

// Alfabet kustom
import { customAlphabet } from 'nanoid';
const hexId = customAlphabet('0123456789abcdef', 12);

Python (menggunakan paket nanoid)

from nanoid import generate

# NanoID Default
id = generate() # "V1StGXR8_Z5jdHi6B-myT"

# Panjang dan alfabet kustom
id = generate('0123456789abcdef', 12)

Pertanyaan yang Sering Diajukan

Apa itu NanoID dan apa bedanya dengan UUID?

NanoID adalah generator ID string unik yang kecil, aman, dan ramah URL. Secara default panjangnya 21 karakter (vs 36 karakter pada UUID), menggunakan alfabet yang lebih besar (A-Za-z0-9_-) untuk lebih banyak entropi per karakter, aman untuk URL tanpa pengkodean, dan tidak memiliki format tetap atau tanda hubung. NanoID mencapai ketahanan tabrakan yang serupa dengan UUID v4 dalam karakter yang lebih sedikit karena menggunakan 64 simbol alih-alih 16 digit hex.

Seberapa amankah NanoID yang dihasilkan oleh alat ini?

Alat ini menggunakan modul secrets Python, yang menyediakan pembuatan nomor acak yang aman secara kriptografis yang didukung oleh sumber entropi sistem operasi. Setiap karakter dipilih secara independen dan tidak dapat diprediksi. NanoID 21 karakter default dengan alfabet standar memiliki entropi ~126 bit, sebanding dengan UUID v4 yang memiliki ~122 bit.

Panjang NanoID berapa yang harus saya gunakan untuk proyek saya?

Panjang default 21 karakter menyediakan ~126 bit entropi dengan alfabet standar, yang cukup untuk sebagian besar aplikasi. Untuk pemendek URL atau ID yang menghadap pengguna, 8-12 karakter mungkin cukup tergantung pada total jumlah ID Anda. Untuk sistem terdistribusi yang menghasilkan jutaan ID, 21+ karakter menjamin probabilitas tabrakan yang sangat kecil. Gunakan kalkulator probabilitas tabrakan untuk menemukan panjang yang tepat bagi kasus penggunaan spesifik Anda.

Can I use NanoIDs as database primary keys?

Ya, NanoID berfungsi dengan baik sebagai kunci primer database. Mereka ringkas (21 karakter vs 36 pada UUID), aman untuk URL, dan memiliki ketahanan tabrakan yang sangat baik. Namun, tidak seperti integer auto-increment, mereka tidak berurutan - jadi jika database Anda menggunakan indeks B-tree, ID acak dapat menyebabkan lebih banyak pemisahan halaman. Pertimbangkan untuk menggunakan awalan (seperti "usr_" atau "ord_") untuk membuat ID mendokumentasikan diri sendiri secara otomatis.

Apa itu preset alfabet "Tanpa Karakter Mirip" (No-Lookalike)?

Preset No-Lookalike menghapus karakter yang terlihat mirip di banyak font: 1/l/I (angka satu, L kecil, I besar) dan 0/O/o (nol, O besar, o kecil). Ini membuat ID jauh lebih mudah dibaca, ditranskripsi, dan dikomunikasikan secara lisan. Sangat ideal untuk ID yang menghadap pengguna seperti kode undangan, nomor konfirmasi, atau ID apa pun yang perlu diketik manusia secara manual.

Sumber Daya Tambahan

Kutip konten, halaman, atau alat ini sebagai:

"Generator NanoID Acak" di https://MiniWebtool.com/id/generator-nanoid-acak/ dari MiniWebtool, https://MiniWebtool.com/

oleh tim miniwebtool. Diperbarui: 07 Feb 2026

Alat terkait lainnya:

Acak:

Alat unggulan:

Pembuat Grup AcakKalkulator Kecocokan CintaPengacak DaftarKalkulator Zodiak Matahari, Bulan & Ascendant 🌞🌙✨Nama Generator AcakKalkulator Persentase KenaikanKalkulator UsiaKonverter Desimal ke BinerMengurutkan Berdasarkan AbjadKonverter Biner ke DesimalPengacak NomorKalkulator NumerologiKonverter FPSKompresor VideoKalkulator OktalKalkulator Durasi WaktuPembuat Teka Teki SilangKalkulator Nomor NamaKalkulator Pace LariKompresor GambarBerapa Nomor Keberuntungan Saya?Kalkulator hasil bagi dan sisakonverter ppm ke persenKalkulator ModuloUrutkan AngkaGenerator Bracket Turnamen AcakKonverter Ukuran FileKonverter Persen ke PPMKalkulator TanggaKalkulator Deviasi Standar Relatif⏱️ Kalkulator JamPembuat Kode MorsePemisah AudioGabungkan VideoGenerator Kode BatangKalkulator Membandingkan PecahanPemilih Nama AcakKalkulator Kemiringan dan KelasPengembang Kalimat AIHapus SpasiKalkulator Angka TakdirKalkulator Hari dalam Tahun - Hari ke Berapa Hari Ini?Generator Acak KataGenerator IMEI AcakKonverter Hex ke BinerGenerator AnagramKonverter Lbs ke KgGenerator Teka-Teki Cari KataAlat penghitung barisParafrase AIHari Per BulanKonverter Biner ke HexSimulator Gerbang LogikaKalkulator RasioGenerator Nomor LotereKonverter Cm ke Kaki dan InciKalkulator HexKonverter DMS ke Derajat DesimalKonverter Hex ke DesimalKonverter Desimal ke HeksadesimalLooper MP3Analisis Kompatibilitas Zodiak Lanjutan📅 Kalkulator TanggalKonverter Desimal ke OktalKonverter Oktal ke BinerKalkulator MarkupTeks TerbalikKalkulator Depresiasi MobilPemeriksa Nama Pengguna Media SosialKalkulator BinerKonverter Oktal ke DesimalPelemparan KoinKalkulator AtapKalkulator FaktorKalkulator Golongan DarahKonverter Angka RomawiKalkulator Diskon PersenKalkulator Hari KelahiranKalkulator Pengurangan PersenKonverter Kaki dan Inci ke SentimeterKalkulator Ukuran BanKalkulator Bilangan KompleksGenerator Skema WarnaKalkulator Notasi Ilmiah⏱️ Timer Hitung Mundur🥧 Pembuat Diagram LingkaranKonverter Hex ke CMYKPembuat Diagram Kotak dan GarisKalkulator Konversi Skala ModelKalkulator Akar KuadratKalkulator Rasio BUN ke KreatininEkstraktor Tag YouTubeKalkulator Defisit Kalorikalkulator-hba1cKonverter Alamat IP ke BinerPemilih AcakGenerator FaviconHapus Nomor BarisHuruf Kecil Huruf BesarKalkulator Tes yang Dapat DibagiGenerator Teks CoretVisualisator SpasiKalkulator Waktu MembacaKalkulator Waktu BicaraPenghitung ParagrafPenghitung KalimatPenghitung Suku KataKonverter Teks ke Biner/Hex/ASCIIPembuat Gambar Placeholder Lorem PicsumPembuat File .envGit Command GeneratorKonverter Kode Warna Semua FormatGenerator dan Pemeriksa Hash BcryptGenerator JWTCSS Grid GeneratorKalkulator Integrasi NumerikKalkulator Transformasi ZKalkulator Transformasi Fourier Cepat (FFT)Kalkulator Produk TensorKalkulator Eksponensial MatriksKalkulator Bentuk Normal JordanKalkulator Ring dan LapanganKalkulator Orde Teori GrupPemecah Sistem ODEPenyelesai ODE BernoulliKalkulator Metode EulerPlotter Medan Arah / Medan KemiringanPenyelesai ODE Orde KeduaPenyelesai ODE Orde PertamaPemecah Masalah Pernikahan StabilKalkulator Aliran Jaringan (Aliran Maksimum)Pemeriksa Grafik PlanarPemeriksa Jalur HamiltonPemecah Masalah Penjual Keliling (TSP)Pemecah Pemrograman LinearKalkulator Inklusi-EksklusiPenyelesai Relasi RekurensiKalkulator Matriks KetetanggaanKalkulator Pengurutan TopologiKalkulator Pewarnaan GrafPemecah Peta Karnaugh (K-Map)Penyederhana Aljabar BooleanKalkulator Fungsi PartisiKalkulator Akar DigitalPemeriksa Angka FibonacciKalkulator Pecahan MesirKalkulator Fungsi MöbiusVerifikator Konjektur GoldbachPemeriksa Bilangan Prima MersennePencari Prima KembarPemeriksa Bilangan BersahabatPemeriksa Bilangan SempurnaKalkulator Eksponensial ModularKalkulator Permutasi dengan PengulanganKalkulator Ukuran EfekKalkulator Risiko RelatifKalkulator Odds RatioKalkulator Tabel KontingensiKalkulator Uji Pasti FisherKalkulator Korelasi Peringkat SpearmanKalkulator Distribusi BetaKalkulator Distribusi WeibullKalkulator Distribusi EksponensialKalkulator Distribusi GeometrikKalkulator Distribusi Binomial NegatifKalkulator Distribusi HipergeometrikKalkulator Uji F dan Distribusi FKalkulator Teorema BayesKalkulator Polinomial KarakteristikKalkulator Pangkat MatriksKalkulator Dekomposisi CholeskyKalkulator Dekomposisi QRKalkulator Diagonalisasi MatriksKalkulator Aturan CramerKalkulator Ruang KolomKalkulator Ruang NolKalkulator Sudut Antara VektorKalkulator Vektor SatuanKalkulator Magnitudo VektorKalkulator Perkalian Silang VektorKalkulator Perkalian TitikKalkulator Perkalian MatriksKalkulator Matriks InversKalkulator RREF (Bentuk Eselon Baris)Kalkulator Metode NewtonKalkulator Matriks JacobianKalkulator Integral PermukaanKalkulator Integral GarisKalkulator cURLKalkulator DivergensiKalkulator Gradien MultivariabelKalkulator Optimasi KalkulusKalkulator Laju TerkaitKalkulator Laju Perubahan SesaatKalkulator Laju Perubahan Rata-rataKalkulator Jumlah Deret Tak HinggaKalkulator Uji Konvergensi DeretKalkulator Deret PangkatKalkulator Deret MaclaurinKalkulator Aturan L'HôpitalKalkulator Integral Tak WajarKalkulator Aturan SimpsonKalkulator Aturan TrapesiumKalkulator Jumlah RiemannPembuat Grafik Kurva ParametrikKalkulator Permukaan RevolusiKalkulator Volume RevolusiKalkulator Jarak Geometri KoordinatKalkulator Rumus HeronKalkulator Garis Singgung LingkaranKalkulator Garis Bagi SudutKalkulator Lingkaran Dalam (Incircle)Kalkulator Lingkaran Luar (Circumcircle)Kalkulator Jarak Lingkaran BesarKalkulator Jarak 3DKalkulator TorusKalkulator Frustum KerucutKalkulator Luas Poligon Tidak BeraturanKalkulator Poligon BeraturanPengidentifikasi Bagian KerucutKalkulator HiperbolaKalkulator ParabolaKalkulator Ekspansi Teorema BinomialGenerator Segitiga PascalKalkulator Notasi Produk PiKalkulator Notasi Sigma PenjumlahanKalkulator Teorema Akar RasionalKalkulator Aturan Tanda DescartesKalkulator Garis Sejajar dan Tegak LurusKalkulator Persamaan GarisKonverter Bentuk Standar ke Bentuk Slope-InterceptKalkulator Bentuk Titik-KemiringanPemecah Sistem Persamaan NonlinearPenyelesaian Persamaan RasionalPemecah Persamaan LiteralPemecah Persamaan TrigonometriPenyelesai Persamaan EksponensialPemecah Persamaan LogaritmaKalkulator Persamaan KuartikKalkulator Persamaan KubikKalkulator EstimasiKonverter Angka ke PecahanGenerator Hitung LoncatKalkulator Harga SatuanKalkulator Fungsi Ceiling dan FloorKalkulator Nilai AbsolutPencari Pola AngkaGenerator Grafik Nilai TempatKalkulator Urutan Operasi (PEMDAS)Kalkulator Penjumlahan dan Pengurangan BersusunKalkulator Perkalian PanjangGenerator Tabel Perkalian🎮 Konverter Mata Uang Game🎲 Kalkulator Probabilitas Loot Drop🎰 Kalkulator Pity Gacha⚔️ Kalkulator DPS🎮 Konverter Sensitivitas Game❄️ Kalkulator Hari Salju🚚 Kalkulator Biaya Pindahan🔍 Pemeriksa Plagiarisme📷 OCR / Gambar ke Teks📈 Pembuat Grafik Garis📊 Pembuat Grafik Batang🔊 Generator Nada🖱️ Penghitung KlikNotepad Online⬛ Kalkulator Rasio Aspek🌍 Kalkulator Jejak Karbon👙 Kalkulator Ukuran BraKalkulator Biaya Bahan Bakar💧 Kalkulator Titik Embun🌡️ Kalkulator Indeks Panas🌬️ Kalkulator Angin Dingin⏰ Jam Alarm Online⏰ Kalkulator Kartu Absensi📅 Kalkulator Selisih Tanggal🕐 Konverter Waktu Militer⏱️ Stopwatch Online🌐 Konverter Zona WaktuKalkulator KarpetKalkulator Dinding PenahanKalkulator Ukuran HVACKalkulator InsulasiKalkulator PavingKalkulator Besi BetonKalkulator KayuKalkulator LuasKalkulator Perkalian SilangKalkulator Ringkasan Lima AngkaKalkulator PersentilKalkulator Distribusi NormalKalkulator Nilai PKalkulator Melengkapkan Kuadrat SempurnaKalkulator PembulatanKalkulator Pembagian PanjangKalkulator IlmiahTimer Belajar PomodoroKalkulator Angka PentingKalkulator Nilai UjianKalkulator Nilai TertimbangKalkulator Nilai AkhirKalkulator NilaiKalkulator Frekuensi ResonansiKalkulator ImpedansiKalkulator Desibel (dB)Kalkulator Faktor DayaKalkulator Konstanta Waktu RCKalkulator TransformatorKalkulator Ukuran KabelKalkulator Timer 555Kalkulator KapasitorKalkulator Resistor ParalelKalkulator Pembagi TeganganKalkulator Resistor LEDKonverter Mol/Gram/PartikelKalkulator TitrasiKalkulator Titik DidihKalkulator Rumus EmpirisKalkulator Hasil PersentaseKalkulator StoikiometriPenyeimbang Persamaan KimiaKalkulator PengenceranKalkulator Tenaga KudaKalkulator TorsiKalkulator Jatuh BebasKalkulator Hukum Gas IdealKalkulator TekananKalkulator KepadatanKalkulator Usaha dan DayaKalkulator Energi PotensialKalkulator Energi KinetikKalkulator Gerak ProyektilKalkulator MomentumKalkulator KecepatanKalkulator AkselerasiKalkulator GayaKalkulator ROI InfluencerKalkulator ROASKalkulator CTRPengoptimal Waktu Posting Media SosialKalkulator ROI Media SosialKalkulator Biaya Iklan FacebookKalkulator Monetisasi YouTube ShortsKalkulator Penghasilan TwitchYouTube Watch Time CalculatorKonverter Timestamp Twitter/XStatistik Saluran YouTubeKalkulator Uang TikTokPanduan Ukuran Gambar Media SosialGenerator Font InstagramPenghitung Karakter Twitter/XPemilih Komentar YouTubePengunduh Thumbnail YouTubeKalkulator Penghasilan YouTubeGenerator Karakter RPG Acak