نقل قول نوشته شده توسط mrg_vb مشاهده تاپیک
بر طبق نظرات و معلومات بنده.
اولا این الگوریتم بازگشت ناپذیر .
دوما این الگوریتم هر باری کدی که تولید میکنه و دفعه قبلش فرق میکنه و من شنیدم احتمال اینکه یه بار یه کاراکتر رو به یک صورت به کد تبدیل کنه خیلی کمه

حالا با فرض این دو تا که اگه درست باش:
چطور میشه که برابر بودن دو رمز تبدیل شده رو میفهمه یعنی رمزی که در بانک ذخیره شده با اون کاراکترهایی که کاربر وارد میکنه بعد تبدیل به کد میکنه این کد با اون کدی که در بانک ذخیره شده فرق میکنه که ؟؟؟؟؟؟؟
نقل قول نوشته شده توسط alimanam مشاهده تاپیک
با سلام

لطفاً منبع رو ذکر کنین ! تا جایی که میدونم Hash رو نمیشه مهندسی معکوس کرد و عملیات برگشت پذیر نیست . البته این که میگم برگشت پذیر نیست این نیست هیچوقت نمیشه ! اما عمومیت نداره یعنی اینکه این الگوریتم ها جوری طراحی و پیاده سازی میشن که به صورت معمول به هیچ عنوان نمیشه رشته کد شده , رو به به حالت ابتدایی خودش برگردوند ! مگر استفاده از روش هایی که این روش ها دست دولتی هاست نه افراد عادی !

موفق باشید./
اینکه بخواهید رمز های مختلف رو امتحان کنید تا به رمزی برسید که Hash شده اش با اون Hash مورد نظر مطابقت داشته باشه (Brute force) یک بحث
دیگه است که همیشه و در مورد همه Hash ها عملی است اما اونقدر زمان می بره که کلا به عنوان نقطه ضعف رویش حساب نمی کنند.
اما اولا Hash ای مثل MD5 کاری به زمان نداره و همیشه برای ورودی خاص باید خروجی مشخص و همیشه یکسان داشته باشه وگرنه اگر قرار بود
که هر بار برای اون داده ورودی ثابت یک خروجی جدید ایجاد کنه که دیگه میشه خروجی تصادفی و بدرد چک کردن صحت ورودی نمی خوره.

ثانیا از نظر عملی محاله که بشه از یک Hash با طول ثابت (مثلا MD5 طولش 16 بایتی است) به هر داده ورودی با طول بیشتر از اون رسید.
اینکه میگم محاله نظر من یا نتیجه تحقیقات تجربی و ... نیست، از نظر علم ریاضی غیر ممکنه، چون اگر ممکن بود فرضا همین MD5 قوی ترین
تکنیک فشرده سازی دنیا بود که می توانست 1000000000 ترابایت داده رو در 16 بایت فشرده کنه و بعد شما از اون 16 بایت به
اون 1000000000 تربایت داده اولیه برسید، چنین چیزی ممکنه؟ معلومه که ممکن نیست چون نمیشه که برای اون همه حالت های مختلف
داده ورودی یک Hash یکتا رو فقط در 16 بایت بوجود آورد. تعداد حالت هایی که با 16 بایت میشه بوجود آورد قابل مقایسه با تعداد حالت های
یک داده 17 بایتی هم نیست چه برسه به 1000000000 ترابایتی.