کرپٹوگرافک ہیشنگ کی حقیقت: یہ ناقابل واپسی کیوں ہے اور آپ کے پاس ورڈز کو کیسے محفوظ بناتی ہے

کرپٹوگرافک ہیشنگ کی حقیقت: یہ ناقابل واپسی کیوں ہے اور آپ کے پاس ورڈز کو کیسے محفوظ بناتی ہے

سائبر سیکیورٹی کی دنیا میں ہیشنگ ایک ایسا بنیادی تصور ہے جسے اکثر غلط سمجھا جاتا ہے۔ یہ وہ غیر مرئی ڈھال ہے جو آپ کے پاس ورڈز کی حفاظت کرتی ہے، آپ کے ڈاؤن لوڈز کی درستگی کی تصدیق کرتی ہے، اور بلاک چین کو چلاتی ہے۔

لیکن ہیش اصل میں ہے کیا؟ ہم اسے “ڈی کرپٹ” کیوں نہیں کر سکتے؟ اور سب سے اہم بات یہ کہ اگر یہ ناقابل واپسی ہے، تو کسی ویب سائٹ کو کیسے معلوم ہوتا ہے کہ آپ نے صحیح پاس ورڈ درج کیا ہے؟


1. ہیش فنکشن کیا ہے؟

کرپٹوگرافک ہیش فنکشن ایک ریاضیاتی الگورتھم ہے جو کسی بھی سائز کے ان پٹ (یا “پیغام”) کو لیتا ہے اور اسے حروف اور نمبروں کی ایک مقررہ سائز کی ترتیب میں تبدیل کر دیتا ہے، جو عام طور پر بے ترتیب نظر آتی ہے۔

ہیشنگ کے سنہری اصول:

  • مستقل مزاجی (Deterministic): ایک ہی ان پٹ سے ہمیشہ وہی ہیش بنے گا۔
  • تیزی: الگورتھم کو عملی استعمال کے لیے کافی تیز ہونا چاہیے۔
  • مقررہ آؤٹ پٹ سائز: چاہے آپ ایک لفظ کا ہیش بنائیں یا پوری لائبریری کا، آؤٹ پٹ کی لمبائی وہی رہے گی (مثلاً SHA-256 کے لیے 256 بٹس)۔
  • ایوالانچ ایفیکٹ (Avalanche Effect): ان پٹ میں معمولی سی تبدیلی (جیسے ایک حرف بدلنا) مکمل طور پر مختلف ہیش کا باعث بنتی ہے۔

2. ہیشنگ ناقابل واپسی کیوں ہے؟

انکرپشن کے برعکس، جو دو طرفہ عمل ہے (آپ انکرپٹ کر سکتے ہیں اور پھر چابی کے ذریعے ڈی کرپٹ کر سکتے ہیں)، ہیشنگ ایک طرفہ راستہ ہے۔ ایک بار جب آپ کے پاس ہیش آ جائے، تو آپ اصل ڈیٹا حاصل کرنے کے لیے اسے “ریورس” نہیں کر سکتے۔

“رنگوں کو ملانے” کی مثال

فرض کریں آپ کے پاس نیلے رنگ کی ایک بالٹی اور پیلے رنگ کی ایک بالٹی ہے۔ اگر آپ انہیں مکس کریں گے تو سبز رنگ بن جائے گا۔ اگرچہ نیلے اور پیلے سے سبز بنانا آسان ہے، لیکن اس سبز رنگ کو دوبارہ بالکل ویسے ہی نیلے اور پیلے رنگ میں الگ کرنا جسمانی طور پر ناممکن ہے۔

ریاضیاتی وجہ: معلومات کا ضیاع

ہیشنگ الگورتھم جان بوجھ کر معلومات کو ضائع کرنے کے لیے بنائے گئے ہیں۔ مثال کے طور پر، اگر آپ کے پاس ایک سادہ “ہیش رول” ہو کہ: “نمبروں کو جمع کریں اور صرف آخری ہندسہ لیں”، تو:

  • ان پٹ 15 -> 1+5 = 6
  • ان پٹ 24 -> 2+4 = 6

اگر آپ صرف نتیجہ 6 دیکھتے ہیں، تو آپ کے پاس یہ جاننے کا کوئی طریقہ نہیں کہ اصل ان پٹ 15 تھا، 24، 33، یا کوئی اور مجموعہ۔ اصل دنیا کے الگورتھم جیسے SHA-256 میں پیچیدگی بہت زیادہ ہوتی ہے، لیکن اصول وہی رہتا ہے: معلومات کو سکیڑا جاتا ہے اور کچھ حصہ ضائع کر دیا جاتا ہے۔


3. اگر یہ ناقابل واپسی ہے، تو پاس ورڈ میچنگ کیسے کام کرتی ہے؟

یہ سب سے عام سوال ہے: اگر کوئی ویب سائٹ میرا پاس ورڈ ہیش کی شکل میں محفوظ کرتی ہے اور اسے ریورس نہیں کر سکتی، تو اسے کیسے پتہ چلتا ہے کہ میں نے صحیح لاگ ان کیا ہے؟

جواب سادہ ہے: وہ پاس ورڈ کی تصدیق نہیں کرتے؛ وہ ہیش کی تصدیق کرتے ہیں۔

تصدیق کا طریقہ کار:

  1. رجسٹریشن: جب آپ اکاؤنٹ بناتے ہیں، تو سرور آپ کا پاس ورڈ (مثلاً MySecret123) لیتا ہے، اسے ہیش کرتا ہے، اور ڈیٹا بیس میں صرف ہیش محفوظ کرتا ہے۔
  2. لاگ ان کی کوشش: جب آپ لاگ ان کرنے کی کوشش کرتے ہیں، تو آپ دوبارہ اپنا پاس ورڈ درج کرتے ہیں۔
  3. موازنہ: سرور آپ کے ابھی درج کردہ پاس ورڈ کو لیتا ہے اور اسے اسی ہیشنگ الگورتھم سے گزارتا ہے۔
  4. میچنگ: سرور نئے ہیش کا موازنہ محفوظ شدہ ہیش سے کرتا ہے۔
    • اگر Hash(Input) == Stored Hash ہے، تو پاس ورڈ لازمی طور پر صحیح ہوگا۔
    • اگر وہ میچ نہیں کرتے، تو پاس ورڈ غلط ہے۔

سرور کو کبھی بھی واقعی یہ معلوم نہیں ہوتا کہ آپ کا پاس ورڈ کیا ہے۔ اسے صرف یہ معلوم ہوتا ہے کہ آپ کا فراہم کردہ ان پٹ وہی ریاضیاتی فنگر پرنٹ بناتا ہے جس کی توقع تھی۔


4. جدید سیکیورٹی: “سالٹ” (Salt) کا اضافہ

چونکہ ہیشنگ مستقل مزاج ہوتی ہے، اس لیے password123 جیسے عام پاس ورڈ سے ہمیشہ وہی ہیش بنے گا۔ ہیکرز عام پاس ورڈز کے ہیشز کی پہلے سے تیار شدہ فہرستیں (Rainbow Tables) استعمال کرتے ہیں تاکہ انہیں فوراً کریک کر سکیں۔

اس سے بچنے کے لیے، جدید سسٹمز Salt استعمال کرتے ہیں—ایک بے ترتیب اسٹرنگ جو ہیش کرنے سے پہلے آپ کے پاس ورڈ میں شامل کی جاتی ہے: Hash(Password + Salt) = Secure Hash

یہ اس بات کو یقینی بناتا ہے کہ اگر دو صارفین کا پاس ورڈ ایک ہی ہو، تب بھی ان کے محفوظ شدہ ہیشز بالکل مختلف نظر آئیں گے۔


خلاصہ

تصور مقصد واپسی کا امکان
انکرپشن خفیہ پیغام رسانی واپسی ممکن ہے (چابی کے ساتھ)
ہیشنگ ڈیٹا کی درستگی اور پاس ورڈ سیکیورٹی ناقابل واپسی

ہیشنگ جدید ڈیجیٹل اعتماد کی بنیاد ہے۔ حساس ڈیٹا کو ناقابل واپسی فنگر پرنٹس میں تبدیل کر کے، ہم اصل رازوں کو ظاہر کیے بغیر شناخت کی تصدیق اور سسٹمز کو محفوظ بنا سکتے ہیں۔