مبدل رایگان

UUID / GUID ژنراتور

مقادیر UUID v4 (GUID) را فوراً در مرورگر خود ایجاد کنید. رایگان، خصوصی و سمت سرویس گیرنده - هیچ داده ای به هیچ سروری ارسال نمی شود.

درباره این ابزار

UUID ها (شناسه های منحصر به فرد جهانی که در زمینه های مایکروسافت GUID نیز نامیده می شود) شناسه های 128 بیتی هستند که می توانند به طور مستقل در بین سیستم ها با احتمال برخورد ناچیز تولید شوند. فرم استاندارد 32 کاراکتر هگز در گروه های 8-4-4-4-12 است که با خط فاصله (550e8400-e29b-41d4-a716-446655440000) از هم جدا شده اند. نسخه های متعدد با استراتژی های نسل مختلف وجود دارد. v4 (تصادفی) رایج ترین است.

V4 UUID منحصربه‌فرد بودن خود را از 122 بیت تصادفی استخراج می‌کنند (شش بیت برای نسخه و نوع ثابت هستند). احتمال برخورد آنقدر کم است که برای اهداف عملی، UUID ها را می توان بدون هماهنگی در سطح جهانی منحصر به فرد دانست - دو سیستمی که به طور مستقل UUID ها را تولید می کنند، در هیچ مقیاس زمانی واقعی، موارد تکراری تولید نمی کنند.

این ژنراتور UUID های v4 را در قالب استاندارد hex-with-hyphens تولید می کند. تصادفی بودن از مولد اعداد تصادفی ایمن رمزنگاری مرورگر (window.crypto.getRandomValues) می آید که برای اهداف حساس امنیتی مناسب است. تولید انبوه برای پر کردن وسایل آزمایشی یا پایگاه‌های داده بذر پشتیبانی می‌شود.

چرا UUID تولید کنیم؟

UUID ها به سیستم های توزیع شده اجازه می دهند بدون هماهنگی با پایگاه داده مرکزی، شناسه ها را تولید کنند. هر سرویس می تواند شناسه های محلی را بدون رفت و برگشت به پیشخوان تولید کند و شناسه های حاصل تضمین می شود که با شناسه های تولید شده در جاهای دیگر برخورد نکنند. این معماری‌های کوچک‌شده را قادر می‌سازد که در آن تولید ID یک گلوگاه نیست.

UUID ها همچنین شناسه ها را غیرقابل حدس زدن می کنند. شناسه های عددی متوالی اطلاعات درز می کند - تعداد کل کاربر، سن حساب، سرعت ثبت نام. UUID ها چیزی را نشان نمی دهند. API هایی که شناسه ها را در معرض دید کاربران قرار می دهند از UUID ها هم برای امنیت و هم برای سازگاری رو به جلو با backend های خرد شده بهره می برند.

نحوه استفاده

روی ایجاد کلیک کنید، یک UUID v4 دریافت کنید.

  1. تعداد را انتخاب کنید: هر بار یک UUID تولید کنید، یا برای پر کردن داده‌های آزمایشی، تا چندین هزار انبوه تولید کنید.
  2. قالب را انتخاب کنید: قالب استاندارد با خط فاصله (550e8400-e29b-41d4-a716-446655440000) پیش فرض است. انواع فشرده (بدون خط تیره)، حروف بزرگ و بسته بندی مهاربند {550e8400-...} نیز ارائه شده است.
  3. ایجاد کنید: crypto.randomUUID() مرورگر (یا نسخه بازگشتی v4 با استفاده از crypto.getRandomValues) UUID های جدیدی تولید می کند. هر نسلی مستقل و غیر قطعی است.
  4. کپی یا دانلود کنید: UUID های تک را در کلیپ بورد کپی کنید یا لیست های انبوه را به صورت متن یا CSV دانلود کنید.

موارد استفاده رایج

جزئیات فنی

UUID ها 128 بیتی هستند که به صورت 32 رقم هگزادسیمال در پنج گروه که با خط فاصله از هم جدا شده اند نمایش داده می شوند. گروه بندی (8-4-4-4-12) صرفا آرایشی است. مقدار یک عدد صحیح 128 بیتی است. v4 UUID 122 بیت تصادفی را رمزگذاری می‌کند و 6 بیت باقی‌مانده ثابت است: فیلد نسخه (4 بیت، مقدار 4) نوع را مشخص می‌کند.

پشتیبانی از مرورگر: crypto.randomUUID() در مرورگرهای مدرن (Chrome 92+، Firefox 95+، Safari 15.4+) موجود است و به طور مستقیم UUID های v4 را تولید می کند. مرورگرهای قدیمی تر به ترکیب دستی 16 بایت تصادفی از crypto.getRandomValues ​​با بیت های نسخه/نوع به درستی باز می گردند.

احتمال برخورد: با 2^122 UUID تصادفی احتمالی، شانس تولید دو مقدار یکسان ناچیز است. حتی در 10^9 UUID تولید شده، احتمال یک برخورد منفرد در حدود 10^-18 است - تقریباً 10 تریلیون برابر کمتر از انتخاب یک اتم روی زمین به طور تصادفی.

بهترین شیوه ها

سوالات متداول

UUID چیست؟
UUID (Universally Unique Identifier) یک برچسب 128 بیتی است که برای شناسایی منحصر به فرد اطلاعات بدون هماهنگی بین طرفین استفاده می شود. یک UUID v4 به نظر می رسد: 550e8400-e29b-41d4-a716-446655440000. این عملاً تضمین شده است که در تمام سیستم‌های سراسر جهان منحصربه‌فرد است.
آیا دو UUID هرگز یکسان خواهند بود؟
از نظر تئوری ممکن است اما عملا غیر ممکن است. UUID v4 دارای 2^122 مقدار ممکن (5.3 × 10^36) است. برای داشتن 50 درصد احتمال یک برخورد، باید 1 میلیارد UUID در ثانیه برای 100 سال تولید کنید.
چه زمانی باید از UUID ها در مقابل شناسه های افزایش خودکار استفاده کنم؟
UUID ها برای سیستم های توزیع شده، برنامه های آفلاین و زمانی که نمی خواهید شناسه ها اطلاعاتی را نشان دهند (مانند تعداد کاربران) بهتر هستند. افزایش خودکار برای نمایه سازی پایگاه داده ساده تر، فشرده تر و سریعتر است.
آیا این UUID ها از نظر رمزنگاری ایمن هستند؟
این ابزار از crypto.getRandomValues() استفاده می کند که اعداد تصادفی ایمن رمزنگاری را فراهم می کند. UUID v4 برای توکن‌ها و شناسه‌های جلسه مناسب است، اما برای برنامه‌های کاربردی با امنیت بالا، ژنراتورهای توکن ساخته شده را در نظر بگیرید.
در مورد UUID v5 یا v7 چطور؟
v5 یک UUID به طور قطعی از نامی در فضای نام (مفید برای شناسه های آدرس پذیر محتوا) استخراج می کند. نسخه 7 (جدیدتر، 2022) یک مُهر زمانی میلی ثانیه ای را برای ترتیب زمانی واژگانی نشان می دهد. این ژنراتور بر روی v4 تمرکز دارد. در صورت نیاز می توان نسخه های خاصی را اضافه کرد.
آیا UUID ها به حروف کوچک و بزرگ حساس هستند؟
بر اساس مشخصات، هیچ - حروف بزرگ و کوچک هگز معادل هستند. اکثر ژنراتورها به صورت پیش فرض حروف کوچک تولید می کنند. مقایسه باید بدون حروف بزرگ باشد.
آیا تولید در مرورگر من انجام شده است؟
بله. UUID ها در سمت مشتری با استفاده از API های رمزنگاری مرورگر تولید می شوند.
آیا می توانم UUID ها را بر اساس زمان ایجاد مرتب کنم؟
نه برای v4 - ساختار تصادفی ترتیب زمانی ندارد. برای UUID های قابل مرتب سازی زمان، از v7 (و یا نسخه قبلی در صورت قبول مفاهیم حریم خصوصی) استفاده کنید.