VMAC
ভি. এম. এ. সি হল একটি ব্লক সাইফার-ভিত্তিক বার্তা প্রমাণীকরণ কোড (এম. এ. সি) অ্যালগরিদম যা 2007 সালের এপ্রিলে টেড ক্রোভেটজ এবং ওয়েই দাই দ্বারা প্রস্তাবিত একটি সর্বজনীন হ্যাশ ব্যবহার করে। অ্যালগরিদমটি একটি আনুষ্ঠানিক বিশ্লেষণ দ্বারা সমর্থিত উচ্চ কার্যকারিতার জন্য ডিজাইন করা হয়েছিল। ভিএমএসি 64-বিট সিপিইউ আর্কিটেকচারে সফ্টওয়্যারে ব্যতিক্রমী পারফরম্যান্সের জন্য ডিজাইন করা হয়েছে এবং এখনও 32-বিট আর্কিটেকচারে ভাল পারফর্ম করছে। পরিমাপ করা গতি 64-বিট আর্কিটেকচারে প্রতি বাইটে (সিপিবি) অর্ধেক সিপিইউ চক্রের মতো দ্রুত, ডেস্কটপ 32-বিট প্রসেসরে পাঁচটি সিপিবি-র নিচে এবং এমবেডেড 32-বিট আর্কিটেকচারে প্রায় দশ সিপিবি। 32-বিট স্থাপত্যের জন্য অপ্টিমাইজ করা ভিএমএসি-র একটি ঘনিষ্ঠভাবে সম্পর্কিত রূপটি ইউএমএসি দ্বারা দেওয়া হয়েছে। ভি. এম. এ. সি হল ওয়েগম্যান এবং কার্টারের শৈলীতে একটি এম. এ. সি। একটি দ্রুত "সার্বজনীন" হ্যাশ ফাংশন একটি ইনপুট বার্তা এম-কে একটি ছোট স্ট্রিং-এ হ্যাশ করতে ব্যবহৃত হয়। এই ছোট স্ট্রিংটি তারপর একটি সিউডোরান্ডম প্যাডের সাথে যুক্ত করা হয়, যার ফলে ভিএমএসি ট্যাগ তৈরি হয়। নিরাপত্তা নির্ভর করে প্রেরক এবং প্রাপক একটি এলোমেলোভাবে নির্বাচিত গোপন হ্যাশ ফাংশন এবং সিউডোরান্ডম প্যাড ভাগ করে নেওয়ার উপর। এটি কীড হ্যাশ ফাংশন এইচ এবং সিউডোরান্ডম ফাংশন এফ ব্যবহার করে অর্জন করা হয়। একটি ট্যাগ গণনা ট্যাগ = এইচকে1 (এম) + এফকে2 (ননস) সম্পাদন করে তৈরি করা হয় যেখানে কে1 এবং কে2 প্রেরক এবং প্রাপকের দ্বারা ভাগ করা গোপন র্যান্ডম কী, এবং ননস একটি মান যা প্রতিটি উত্পন্ন ট্যাগের সাথে পরিবর্তিত হয়। রিসিভারকে জানতে হবে যে প্রেরকের দ্বারা কোনটি ব্যবহার করা হয়েছিল, তাই ননসকে সিঙ্ক্রোনাইজ করার কিছু পদ্ধতি ব্যবহার করা প্রয়োজন। এটি বার্তা এবং ট্যাগের সাথে স্পষ্টভাবে নোন্স পাঠিয়ে বা ক্রম সংখ্যার মতো অন্য কোনও অ-পুনরাবৃত্ত মান ব্যবহারের বিষয়ে সম্মত হয়ে করা যেতে পারে। নোন্সকে গোপন রাখার প্রয়োজন নেই, তবে একটি ভি. এম. এ. সি কী-এর জীবদ্দশায় প্রতিটি বার্তার সাথে একটি ভিন্ন নোন্স ব্যবহার করা হয় তা নিশ্চিত করার জন্য যত্ন নেওয়া দরকার। ভিএমএসি একটি ফাংশন ব্যবহার করে, যা ভিএইচএএসএইচ নামে পরিচিত (এই নথিতেও নির্দিষ্ট করা হয়েছে), কীড হ্যাশ ফাংশন এইচ হিসাবে এবং একটি সিউডোরান্ডম ফাংশন এফ ব্যবহার করে যার ডিফল্ট বাস্তবায়ন এইএস ব্লক সাইফার ব্যবহার করে। ভিএমএসি ব্যবহার করা ব্লক সাইফারের ব্লক আকার পর্যন্ত যে কোনও 64-বিট মাল্টিপলের ট্যাগ দৈর্ঘ্যের অনুমতি দেয়। এইএস ব্যবহার করার সময়, এর অর্থ হল ভিএমএসি 64-বা 128-বিট ট্যাগ তৈরি করতে পারে। ওয়েগম্যান-কার্টার এম. এ. সি-র তত্ত্ব এবং ভি. এম. এ. সি-র বিশ্লেষণে দেখা যায় যে, যদি কেউ সত্যিকারের র্যান্ডম কী এবং প্যাড দিয়ে ভি. এম. এ. সি-কে "তাৎক্ষণিক" করে, তাহলে কোনও আক্রমণকারী (এমনকি গণনামূলকভাবে সীমাহীন) তার পছন্দের বার্তাগুলির জন্য একটি সঠিক ট্যাগ তৈরি করার সম্ভাবনা 1/260 বা 1/2120-এর চেয়ে কম, যখন ট্যাগগুলির দৈর্ঘ্য যথাক্রমে 64 বা 128 বিট হয়। যখন কোনও আক্রমণকারী এন জালিয়াতির চেষ্টা করে তখন এক বা একাধিক ট্যাগ সঠিকভাবে পাওয়ার সম্ভাবনা রৈখিকভাবে এন/260 বা এন/2120-এর কম হয়। ভি. এম. এ. সি-এর প্রয়োগমূলক বাস্তবায়নে, কী এবং প্যাড তৈরি করতে এইএস ব্যবহার করে, এই জালিয়াতির সম্ভাবনা এইএস-এর সুরক্ষার সাথে সম্পর্কিত সামান্য পরিমাণে বৃদ্ধি পায়। যতক্ষণ এইএস নিরাপদ থাকে, ততক্ষণ এই ছোট যোগাত্মক শব্দটি যে কোনও ব্যবহারিক আক্রমণের জন্য তুচ্ছ। আরও বিস্তারিত জানার জন্য নির্দিষ্টকরণ দেখুন। লেখক ওয়েই দাই এবং টেড ক্রোভেটজ ভি. এম. এ. সি সুরক্ষার বিশ্লেষণ করেছেন। বাস্তবায়ন সি সি + + পাইথন রেফারেন্স বাহ্যিক লিঙ্ক ভিএমএসিঃ ইউনিভার্সাল হ্যাশিং ব্যবহার করে বার্তা প্রমাণীকরণ কোড-ইন্টারনেট খসড়া ভিএমএসি হোম পেজ ক্রিপ্টোলঞ্জ ভিএমএসি উইকি এন্ট্রি বার্তা প্রমাণীকরণ কোড