یہ ٹول کیسے کام کرتا ہے
Bcrypt اسی لیے موجود ہے کہ پاس ورڈ ہیش میں تیز ہونا ایک خامی ہے۔ SHA-256 جیسا عام مقصد کا ہیش اس طرح بنایا جاتا ہے کہ جتنی جلدی ممکن ہو چل جائے، اور یہی وہ چیز ہے جو اربوں اندازے آزمانے والے کو درکار ہوتی ہے۔ Bcrypt جان بوجھ کر سست ہے، اور لاگت کا عدد طے کرتا ہے کہ کتنا سست: ہر ایک قدم کام کو دوگنا کر دیتا ہے، اس لیے 12 کی لاگت 10 سے چار گنا زیادہ وقت لیتی ہے — آپ کے لیے سائن اِن پر ایک بار، اور حملہ آور کے لیے ہر ایک اندازے پر۔
نمک آپ کے لیے خود بنایا جاتا ہے اور نتیجے میں شامل کر دیا جاتا ہے، اسی لیے ایک ہی پاس ورڈ دو بار ہیش کرنے سے دو مختلف نتیجے ملتے ہیں اور دونوں میں سے کسی کو الگ محفوظ کرنے کی ضرورت نہیں۔ تیار شدہ قدر اپنا الگورتھم، اپنی لاگت اور اپنا نمک ساتھ لے کر چلتی ہے، اس لیے بعد میں تصدیق کے لیے ہیش کے سوا کچھ درکار نہیں۔ تصدیق والا حصہ پاس ورڈ کا موجودہ ہیش سے موازنہ سادہ برابری کے بجائے مستقل وقت والے موازنے سے کرتا ہے۔
لاگت چننا اور نتیجہ پڑھنا
- دس عام کم از کم حد ہے اور بارہ معقول ہدف: درست عدد وہ سب سے زیادہ ہے جو آپ کا سرور آپ کی سائن اِن کی رفتار پر برداشت کر سکے۔ یہاں دستیاب لاگتیں چار سے، جو صرف آزمائش کے لیے مفید ہے، چودہ تک ہیں۔
- صرف پہلے 72 بائٹ پڑھے جاتے ہیں: bcrypt اس سے آگے خاموشی سے کاٹ دیتا ہے، اس لیے بہت لمبا پاس فریز اتنا مضبوط نہیں جتنا اس کی لمبائی سے لگتا ہے۔ اس سے لمبا ان پُٹ یہاں خاموشی سے کاٹنے کے بجائے مسترد کر دیا جاتا ہے۔
- ایک ہی پاس ورڈ کے دو ہیش مختلف ہوں گے: یہ نمک کا اپنا کام ہے۔ ہیشوں کا آپس میں کبھی موازنہ نہ کریں — پاس ورڈ کا ہیش سے موازنہ کریں، جو تصدیق والا حصہ کرتا ہے۔
- براؤزر میں ہیش بنانا آزمائش کے لیے ہے، اصل استعمال کے لیے نہیں: حقیقی سائن اِن سرور پر ہیش بناتا ہے۔ کوئی اکاؤنٹ شروع کرنے یا محفوظ شدہ قدر جانچنے کے لیے یہاں ہیش بنانا مناسب ہے؛ پاس ورڈ کسی صفحے کو بھیجنا نہیں۔