আমি রুবির জন্য ইউআইডি জেনারেটর / পার্সার লিখেছি, তাই আমি নিজেকে বিষয়টিতে যুক্তিসঙ্গতভাবে সুবহিত বলে মনে করি। চারটি বড় ইউআইডি সংস্করণ রয়েছে:
সংস্করণ 4 ইউআইডিগুলি মূলত একটি ক্রিপ্টোগ্রাফিক সুরক্ষিত র্যান্ডম সংখ্যা জেনারেটর থেকে টানা এলোমেলোতার মাত্র 16 বাইট, ইউআইডি সংস্করণ এবং বৈকল্পিক সনাক্ত করতে কিছু বিট-টুইডলিং সহ। এগুলির সংঘর্ষের চূড়ান্ত সম্ভাবনা নেই, তবে এটি ঘটতে পারে যদি কোনও পিআরএনজি ব্যবহার করা হয় বা যদি আপনি কেবল সত্যিই, সত্যিকারের, সত্যই, সত্যই দুর্ভাগ্যজনক হয়ে থাকেন।
সংস্করণ 5 এবং সংস্করণ 3 ইউআইডিগুলি ইউএইউডি তৈরির জন্য ইতিমধ্যে স্বতন্ত্র ডেটার একটি অংশের সাথে একটি নেমস্পেস একত্রিত করতে যথাক্রমে SHA1 এবং MD5 হ্যাশ ফাংশন ব্যবহার করে। এটি উদাহরণস্বরূপ, আপনাকে একটি ইউআরএল থেকে একটি ইউইউডি উত্পাদন করতে দেয়। অন্তর্নিহিত হ্যাশ ফাংশনটিরও যদি সংঘর্ষ হয় তবে এখানে সংঘর্ষগুলি সম্ভব।
সংস্করণ 1 ইউআইডিগুলি সবচেয়ে সাধারণ। তারা ইউএসইউডি তৈরির জন্য নেটওয়ার্ক কার্ডের ম্যাক ঠিকানা (যা ছদ্মবেশী না করে অনন্য হওয়া উচিত) ব্যবহার করে একটি টাইমস্ট্যাম্প, এবং সাধারণ বিট-টুইডলিং ব্যবহার করে। ম্যাকের ঠিকানা না থাকা এমন কোনও মেশিনের ক্ষেত্রে, 6 নোড বাইটগুলি ক্রিপ্টোগ্রাফিকভাবে সুরক্ষিত র্যান্ডম নম্বর জেনারেটর দিয়ে তৈরি করা হয়। যদি দুটি ইউআইডিউ যথাযথভাবে যথাসময়ে উত্পন্ন হয় যে টাইমস্ট্যাম্পটি পূর্বের ইউআইডির সাথে মেলে, টাইমস্ট্যাম্পটি 1 দ্বারা বাড়ানো হয়: নিম্নলিখিতগুলির মধ্যে একটি না ঘটলে সংঘর্ষ হওয়া উচিত নয়: ম্যাকের ঠিকানাটি স্পুফ করা হয় না; দুটি মেশিন দুটি ভিন্ন ইউআইডি উত্পাদক অ্যাপ্লিকেশন চালাচ্ছে ঠিক একই মুহুর্তে ইউআইডি তৈরি করে; কোনও নেটওয়ার্ক কার্ড ছাড়াই বা ম্যাক ঠিকানায় ব্যবহারকারীর স্তরের অ্যাক্সেস ছাড়াই দুটি মেশিনকে একই র্যান্ডম নোড ক্রম দেওয়া হয় এবং একই মুহুর্তে ইউআইডিগুলি তৈরি করা হয়;
বাস্তবিকভাবে, এই ইভেন্টগুলির কোনওটিই একক অ্যাপ্লিকেশনটির আইডি স্পেসের মধ্যে দুর্ঘটনার কারণে ঘটে না। আপনি যদি ইন্টারনেট বিস্তৃত স্কেল, বা একটি অবিশ্বস্ত পরিবেশের সাথে আইডি গ্রহণ না করে থাকেন, তবে দূষিত ব্যক্তিরা আইডি সংঘর্ষের ক্ষেত্রে খারাপ কিছু করতে সক্ষম হতে পারে, এটি আপনার চিন্তার মতো কিছু নয় not এটি বোঝার জন্য সমালোচনা করা হয় যে আপনি যদি আমার মতো একই সংস্করণ 4 ইউআইডি উত্পন্ন করে থাকেন তবে বেশিরভাগ ক্ষেত্রে, এটি কোনও বিষয় নয়। আমি আপনার থেকে সম্পূর্ণ আলাদা আইডি স্পেসে আইডি তৈরি করেছি। সংঘর্ষের বিষয়ে আমার অ্যাপ্লিকেশনটি কখনই জানতে পারবে না যাতে সংঘর্ষের বিষয়টি বিবেচনা করে না। সত্যই, দূষিত অভিনেতাদের ছাড়াই একক অ্যাপ্লিকেশন স্পেসে, পৃথিবীর সমস্ত জীবন বিলুপ্তির ঘটনা আপনার সংঘর্ষের অনেক আগেই ঘটবে, এমনকি একটি সংস্করণ 4 ইউইউডি-তে এমনকি আপনি '
এছাড়াও, 2 ^ 64 * 16 256 এক্সাবাইট। যেমনটি, আপনার একক অ্যাপ্লিকেশন স্পেসে আইডি সংঘর্ষের 50% সম্ভাবনা থাকার আগে আপনাকে 256 এক্সবাইটের আইডি সংরক্ষণ করতে হবে।