'প্রতিচ্ছবি' হ্যাশ অ্যালগরিদম কি বিদ্যমান?


11

তাত্ত্বিক বা ব্যবহারিক যাই হোক না কেন হ্যাশ অ্যালগরিদমগুলির একটি শ্রেণি রয়েছে, যেমন শ্রেণীর একটি অ্যালগরিদম নীচে প্রদত্ত সংজ্ঞা অনুযায়ী 'প্রতিচ্ছবি' হিসাবে বিবেচিত হতে পারে:

  • হ্যাশ 1 = অ্যালগো 1 ("ইনপুট পাঠ্য 1")
  • হ্যাশ 1 = অ্যালগো 1 ("ইনপুট পাঠ্য 1" + হ্যাশ 1)

আউটপুট (হ্যাশ 1) ইনপুট ("ইনপুট পাঠ্য 1") এর সাথে একত্রিত করার জন্য + অপারেটরটি সংক্ষিপ্তকরণ বা অন্য কোনও নির্দিষ্ট ক্রিয়াকলাপ হতে পারে যাতে অ্যালগরিদম (আলগো 1) ঠিক একই ফলাফল তৈরি করে। অর্থাত্ ইনপুট এবং ইনপুট + আউটপুটে সংঘর্ষ। + অপারেটরকে অবশ্যই উভয় ইনপুটগুলির সম্পূর্ণতা একত্রিত করতে হবে এবং আলগো ইনপুটটির অংশটি ফেলে দিতে পারে না।

অ্যালগরিদম অবশ্যই আউটপুটে উচ্চ এনট্রপি তৈরি করতে পারে। এটির প্রয়োজন হয় না, তবে আউটপুটটিকে এক বা উভয়ই ইনপুটগুলিতে ফিরিয়ে দিতে ক্রিপ্টোগ্রাফিকভাবে শক্ত হতে পারে।

আমি গণিতবিদ নই, তবে একটি উত্তরের উত্তরে এমন একটি প্রমাণ থাকতে পারে যে কেন এই ধরণের শ্রেণিবদ্ধ অ্যালগরিদমের অস্তিত্ব থাকতে পারে না। এটি অবশ্য কোনও বিমূর্ত প্রশ্ন নয়। আমার সিস্টেমে এ জাতীয় অ্যালগরিদম ব্যবহার করতে আমি সত্যই আগ্রহী, যদি এর উপস্থিতি থাকে।

এটি এমন একটি প্রশ্নের সদৃশ যা /programming/4823680/reflexive-hash এ প্রথম পোস্ট করা হয়েছিল



2
আপনি কি এই সম্পত্তিটি সমস্ত ইনপুট পাঠ্যের জন্য বা একটি ইনপুট পাঠ্যের জন্য অধিষ্ঠিত করতে আগ্রহী? আপনি যদি এটি সমস্ত ইনপুট পাঠ্যের জন্য ধরে রাখতে চান তবে সংঘর্ষগুলি নির্মাণ করা ডিজাইনের দ্বারা নগণ্য, সুতরাং আমি মনে করি না এটি একটি ভাল হ্যাশ ফাংশন হিসাবে বিবেচনা করা যেতে পারে।
পিটার টেলর

কেউ নিজের ফাইলগুলি হ্যাশ করতে চায় যাতে তাদের নিজস্ব হ্যাশ থাকে! ;)
রাফেল

@ পিটার টেইলর - আমি এমন একটি ফাংশন সন্ধান করছি যা স্বেচ্ছাসেবীর ইনপুট পাঠ্যের জন্য বর্ণিত হিসাবে কাজ করে। প্রতিটি পৃথক ইনপুট একটি হ্যাশ তৈরি করে যা সাধারণভাবে প্রতিটি অন্যান্য সম্ভাব্য ইনপুটগুলিতে উচ্চ পারস্পরিক এনট্রপি থাকে। অনেক ভাল একটি অপরিবর্তনীয় হ্যাশ ফাংশন কাজ করে। তবে, আমি যে হ্যাশ ফাংশনটি সন্ধান করছি তার অপরিবর্তনীয়তার সম্পত্তি থাকার দরকার নেই। উচ্চ এনট্রপি যথেষ্ট।

@ রাফেল - হ্যাঁ, এটি লাগানোর একটি সুসংগত উপায়।

উত্তর:


9

আমি একটি তুচ্ছ নির্মাণ দেয় যা প্রয়োজনীয়তাকে সন্তুষ্ট করে। আমি কেবল এটি "প্রতিচ্ছবি" হ্যাশ ফাংশনটির অস্তিত্বের উত্তর দেওয়ার জন্য সরবরাহ করি ।

GGkk+|x|x

Hx

  1. |x|kH(x)=defG(x)
  2. |x|>kLR(|x|k)kxx=L+R|R|=kR=H(L)H(L)H(x)=defRH(x)=defG(x)

আমি যেমন বলেছি, এটি একটি তুচ্ছ নির্মাণ construction এটি যে কোনও হ্যাশ ফাংশন, ব্যবহারিক (যেমন MD5, SHA-1, ...) বা তাত্ত্বিক ক্ষেত্রে প্রয়োগ করা যেতে পারে।


H|R|=k

@ রাফেল: টাইপোটি সংশোধন করার জন্য ধন্যবাদ (সংশোধন করা হয়েছে)। এইচ এর G এর মতোই এনট্রপি রয়েছে, আর = জি (এল) অবস্থায় না থাকলে unless প্রয়োজন অনুসারে, এই শর্তে, এইচ (এক্স) এর সমান হওয়া উচিত। আমরা এন্ট্রপি বাড়াতে এখানে কিছুই করতে পারি না; যেহেতু "রিফ্লেক্সিভিটি" প্রয়োজনীয়তা আমাদের আউটপুট পরিবর্তন করতে বাধা দেয়।
এমএস দৌস্তি

@ সাদেক: হ্যাশ ফাংশনটি পুনরাবৃত্তভাবে গণনা করা দরকার কি? আমি কোন উপায়ে এই সত্য থেকে উপকৃত অ্যালগরিদম?
ইয়াসের সোভদেল

H(M+H(M)+H(M)++H(M))H(M)

সাদেক, আপনাকে ধন্যবাদ। আমি বিশ্বাস করি এটি আমার প্রশ্নের উত্তর দিতে পারে , যেমন এটি জিজ্ঞাসা করা হয়েছিল। আপনি উত্তর একটি উপযুক্ত সতর্কীকরণে আবদ্ধ করেছেন। ব্যবহারিক দৃষ্টিকোণ থেকে, আমি সত্যটি পছন্দ করি যে এটি কোনও SHA-1 এর মতো কোনও সুপরিচিত অ্যালগরিদমের জন্য একটি ওভারলে। যদি আমি সঠিকভাবে বুঝতে পারি তবে আপনার অ্যালগরিদম হ্যাশগুলি পুনরাবৃত্তভাবে গণনা করতে থাকবে যতক্ষণ না এটি প্রয়োজনীয় সংঘর্ষে আঘাত করে এবং তারপরে এটি বন্ধ না হয়। কোন ক্ষেত্রে সম্ভবত আমরা এই নিষ্পাপ সমাধান ডাব করতে পারেন। আমার উদ্বেগ আছে অন্তর্নিহিত ধৃষ্টতা আপনার এম্বেড আলগোরিদিম (রয়েছে SHA-1 বলে) অবশেষে প্রয়োজনীয় সংঘর্ষের হ্যাশ আঘাত করবে বলে মনে হয় করা হয়, একটি প্রদত্ত
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.