UUID জেনারেটর ও যাচাইকারী

ক্রিপ্টোগ্রাফিকভাবে র‍্যান্ডম v4 বা সাজানোযোগ্য v7 UUID তৈরি করুন, একটি বা একসাথে এক হাজার, এবং যেকোনো UUID বা GUID পরীক্ষা করে এর ভার্সন ও অন্তর্ভুক্ত টাইমস্ট্যাম্প দেখুন।

ব্রাউজারেই চলেসাইন-আপ লাগে নাকিছুই আপলোড হয় না

তৈরি করা UUID

UUID জেনারেটর কীভাবে ব্যবহার করবেন

  1. সম্পূর্ণ র‍্যান্ডম ID-এর জন্য v4, অথবা তৈরির সময় অনুযায়ী সাজানো ID-এর জন্য v7 বেছে নিন।
  2. কতগুলো লাগবে (১,০০০ পর্যন্ত) সেট করে তৈরি করুন ক্লিক করুন।
  3. চাইলে বড় হাতের অক্ষরে নিন, হাইফেন সরান বা Microsoft-ধাঁচের GUID-এর জন্য বন্ধনীতে মুড়ে দিন।
  4. বড় UUID-টিতে ক্লিক করে কপি করুন, অথবা একটি ব্যাচের জন্য সব কপি / .txt ডাউনলোড ব্যবহার করুন।
  5. যেকোনো UUID পরীক্ষকে পেস্ট করে যাচাই করুন এবং এর ভার্সন, ভ্যারিয়েন্ট ও টাইমস্ট্যাম্প দেখুন।

UUID কী?

একটি UUID (Universally Unique Identifier), Microsoft প্ল্যাটফর্মে যাকে GUID বলা হয়, হলো পাঁচটি গ্রুপে ৩২টি hex অঙ্কে লেখা একটি 128-bit মান: 8-4-4-4-12। ফরম্যাটটি RFC 9562-এ সংজ্ঞায়িত, যা ২০২৪ সালে RFC 4122-এর স্থান নিয়েছে। একটি অঙ্ক ভার্সন নির্দেশ করে (১৩তম hex অঙ্ক) এবং ১৭তম অঙ্কের উপরের বিটগুলো ভ্যারিয়েন্ট নির্দেশ করে।

UUID v4 বনাম UUID v7

v4v7
বিষয়বস্তু122টি র‍্যান্ডম বিট48-bit Unix মিলিসেকেন্ড টাইমস্ট্যাম্প + 74টি র‍্যান্ডম বিট
সাজানোর ক্রমএলোমেলোসময়ানুক্রমিক
ডেটাবেস ইনডেক্সএলোমেলো ইনসার্ট B-tree ইনডেক্সকে খণ্ডিত করেশেষে যোগ হয়, ইনডেক্সের জন্য অনেক বেশি সুবিধাজনক
তৈরির সময় প্রকাশ করেনাহ্যাঁ

যেখানে ইনসার্টের ক্রম গুরুত্বপূর্ণ, সেই ডেটাবেস প্রাইমারি কী ও ইভেন্ট ID-এর জন্য v7 ব্যবহার করুন। কোনো কিছু কখন তৈরি হয়েছে তা ID থেকে ফাঁস হওয়া উচিত না হলে v4 ব্যবহার করুন। একই মিলিসেকেন্ডে অনেকগুলো তৈরি হলেও এই জেনারেটর v7 ID-গুলোকে কঠোরভাবে ঊর্ধ্বক্রমে রাখে।

এগুলো কতটা অনন্য?

122টি র‍্যান্ডম বিটে একটিমাত্র কলিশনের ৫০% সম্ভাবনায় পৌঁছাতে প্রায় ২.৭ কুইন্টিলিয়ন v4 UUID তৈরি করতে হবে। এই পেজ ব্রাউজারের ক্রিপ্টোগ্রাফিকভাবে নিরাপদ র‍্যান্ডম জেনারেটর (crypto.getRandomValues) ব্যবহার করে, কখনো Math.random() নয়।

কোডে UUID তৈরি করা

// JavaScript (browsers, Node 19+)
crypto.randomUUID()
# Python
import uuid; uuid.uuid4()
-- PostgreSQL 13+
SELECT gen_random_uuid();

সচরাচর জিজ্ঞাসিত প্রশ্ন

এই UUID-গুলো কি প্রোডাকশনে ব্যবহার করা নিরাপদ?
হ্যাঁ। এগুলো Web Crypto API-এর নিরাপদ র‍্যান্ডম জেনারেটর দিয়ে লোকালি তৈরি হয় এবং RFC 9562 মেনে চলে। কিছুই কোনো সার্ভারে পাঠানো বা লগ করা হয় না।
UUID আর GUID-এর পার্থক্য কী?
দুটো একই জিনিস। GUID হলো Microsoft-এর দেওয়া নাম এবং প্রায়ই বড় হাতের অক্ষরে বন্ধনীসহ লেখা হয়, যেমন {3F2504E0-4F89-11D3-9A0C-0305E82C3301}। এই ফরম্যাট পেতে উপরের অপশনগুলো ব্যবহার করুন।
UUID থেকে কি তৈরির সময় জানা যায়?
শুধু সময়ভিত্তিক ভার্সনে। v7 এর প্রথম 48 বিটে Unix মিলিসেকেন্ড রাখে, আর v1 ও v6 রাখে 100-ন্যানোসেকেন্ডের টাইমস্ট্যাম্প। তারিখ দেখতে একটি পরীক্ষকে পেস্ট করুন। v4-এ কোনো সময়ের তথ্য থাকে না।
ডেটাবেস প্রাইমারি কী হিসেবে কি UUID ব্যবহার করা উচিত?
ডিস্ট্রিবিউটেড সিস্টেম ও পাবলিক ID-এর জন্য এগুলো ভালো কাজ করে। v4-এর বদলে v7 ব্যবহার করুন, যাতে নতুন সারি ইনডেক্সের শেষে যায়, এবং ৩৬ অক্ষরের স্ট্রিংয়ের বদলে নেটিভ uuid বা 16-বাইট বাইনারি কলামে রাখুন।
nil UUID কী?
সব-শূন্য মান 00000000-0000-0000-0000-000000000000, যা “কোনো UUID নেই” বোঝাতে প্লেসহোল্ডার হিসেবে ব্যবহৃত হয়। RFC 9562 সব-f max UUID-ও সংজ্ঞায়িত করে।

সম্পর্কিত টুল