Apa itu UUID?

UUID (Universal Unique Identifier) adalah sebuah nilai 128-bit yang digunakan untuk mengidentifikasi objek atau entitas secara unik di internet. Bergantung pada cara pembuatannya, UUID ini dijamin unik atau setidaknya sangat kecil kemungkinannya untuk sama dengan UUID lain, bahkan sampai tahun 3400.

UUID bisa dipakai buat ngidentifikasi macam-macam hal, misalnya database, instansi sistem, primary key, profil Bluetooth, atau bahkan objek yang cuma aktif dalam waktu singkat.

Istilah UUID mirip dengan GUID. Awalnya, GUID adalah varian dari UUID yang dipakai Microsoft. Tapi sejak spesifikasi RFC 4122, keduanya dianggap sama. UUID ini distandarkan oleh Open Software Foundation (OSF) sebagai bagian dari Distributed Computing Environment (DCE). Ada beberapa versi UUID sesuai dengan standar RFC 4122.

UUID dibuat dengan algoritma yang didasarkan pada timestamp dan beberapa faktor lain seperti alamat jaringan. Beberapa tools gratis untuk bikin UUID misalnya UUIDTools atau Online UUID Generator.

Bagaimana UUID bekerja?

UUID dibuat dari kombinasi beberapa komponen untuk menjamin keunikannya. Format UUID terdiri dari 128 bit dalam bentuk digit heksadesimal (angka 0-9 dan huruf A-F). Formatnya: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX, yang artinya terdiri dari 32 karakter heksadesimal dan 4 tanda hubung dengan pola 8-4-4-4-12. Bagian terakhir (disebut posisi N) menunjukkan format dan encoding-nya dalam 1-3 bit.

Contohnya, UUID berbasis waktu punya bagian-bagian yang menunjukkan low, mid, dan high timestamp serta versinya. Sementara bagian node biasanya menunjukkan alamat MAC.

Ada tiga varian UUID:

  • Varian 0. Varian ini disediakan untuk kompatibilitas mundur dengan Apollo Network Computing System dari tahun 1980-an. Strukturnya mirip UUID versi 1.
  • Varian 1. Ini yang paling umum dipakai sekarang. Disebut juga UUID RFC 4122 atau UUID Leach-Salz. GUID juga termasuk dalam varian ini.
  • Varian 2. Ini khusus untuk kompatibilitas dengan sistem lama milik Microsoft. GUID awal di platform Windows pakai varian ini. Bedanya ada di jumlah bit pada posisi N (varian 1 pakai 2 bit, varian 2 pakai 3 bit).

Versi-versi UUID

UUID varian 1 terdiri dari lima versi berbeda, masing-masing punya cara pembuatan sendiri. Berikut jenis-jenisnya:

  • Versi 1. Dibuat dari timestamp dan node tertentu. Biasanya berupa alamat MAC.
  • Versi 2. Mirip versi 1 tapi beberapa bit-nya diganti untuk tujuan keamanan (DCE Security UUIDs).
  • Versi 3. Dibuat dengan metode hashing nama dan namespace pakai algoritma MD5.
  • Versi 4. Dibuat secara acak (random). Walaupun pakai byte acak, tetap ada beberapa bit yang menunjukkan versi dan variannya. Tetap aman dari kemungkinan tabrakan (collision).
  • Versi 5. Sama kayak versi 3, tapi hashing-nya pakai algoritma SHA-1. Cocok untuk bikin ID unik di dalam sistem berbasis namespace.

Ada juga versi khusus yang disebut UUID Nil, yang isinya semua nol.

Apakah UUID bisa tabrakan?

Collision (tabrakan) itu ketika ada dua UUID yang sama tapi dipakai buat objek yang berbeda. Secara teori bisa aja kejadian, tapi karena UUID itu 128-bit, kemungkinan terjadinya sangat kecil, bahkan nyaris nol. Bahkan untuk UUID versi 4 yang pakai nilai acak, kemungkinan tabrakannya tetap bisa diabaikan.

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *