John the Ripper 1.9.0-jumbo-1 FPGA سپورٹ کے ساتھ

جاری کیا گیا۔ سب سے پرانے تعاون یافتہ پاس ورڈ کا اندازہ لگانے والے پروگرام جان دی ریپر 1.9.0-jumbo-1 کا نیا ورژن۔ (یہ منصوبہ 1996 سے ترقی کر رہا ہے۔) آن منصوبے کا صفحہ ڈاؤن لوڈ کے لیے ذرائع دستیاب ہیں، نیز ونڈوز کے لیے تیار شدہ اسمبلیاں۔

واضح رہے کہ ورژن 1.8.0-jumbo-1 کی ریلیز کو 4.5 سال گزر چکے ہیں، اس دوران 6000 سے زیادہ ڈویلپرز کی جانب سے 80 سے زیادہ تبدیلیاں (گٹ کمٹ) کی گئیں۔ اس مدت کے دوران، ڈویلپرز کا استعمال کرنے کی سفارش کی GitHub سے موجودہ ایڈیشنجس کی بدولت تبدیلیوں کے باوجود حالت مستحکم رہی مسلسل انضمام، جس میں بہت سے پلیٹ فارمز پر ہر تبدیلی (پل کی درخواست) کی ابتدائی تصدیق شامل ہے۔ نئے ورژن کی ایک خاص خصوصیت CPU، GPU اور Xeon Phi کے علاوہ FPGA (FPGA) کے لیے سپورٹ کی ظاہری شکل ہے۔


بورڈز کے لیے ZTEX 1.15yجس میں 4 FPGA چپس شامل ہیں اور بنیادی طور پر بٹ کوائن مائننگ کے لیے استعمال ہوتے ہیں، 7 قسم کے پاس ورڈ ہیش اب لاگو کیے گئے ہیں: bcrypt، کلاسک ڈسکرپٹ (بشمول bigcrypt)، sha512crypt، sha256crypt، md5crypt (بشمول Apache apr1 اور AIXspussalm)، Dr. ، خاص طور پر ورڈپریس میں)۔ ان میں سے کچھ کو پہلی بار ایف پی جی اے پر لاگو کیا گیا ہے۔ bcrypt کے لیے، تقریباً 5 واٹ کی بجلی کی کھپت کے ساتھ 7^119 تکرار ("$2b$5") کے ساتھ ~2k c/s کی حاصل کردہ کارکردگی نمایاں طور پر فی بورڈ، فی ہارڈ ویئر کی قیمت اور فی واٹ کے تازہ ترین GPUs کے نتائج سے زیادہ ہے۔ حمایت بھی کی۔ جھرمٹ اس قسم کے بورڈز، جن کا تجربہ 16 بورڈز (64 FPGAs) تک کیا گیا ہے جسے ایک Raspberry Pi 2 سے کنٹرول کیا گیا ہے۔ معمول کی جان دی ریپر فعالیت کو سپورٹ کیا جاتا ہے، بشمول پاس ورڈ کا اندازہ لگانے کے تمام موڈز اور بڑی تعداد میں ہیشز کو بیک وقت ڈاؤن لوڈ کرنا۔ کام کو تیز کرنے کے لیے، ہم نے ماسک کے استعمال کو لاگو کیا ("--ماسک" موڈ، بشمول دیگر طریقوں کے ساتھ) اور حسابی ہیشز کا FPGA سائیڈ پر بھری ہوئی چیزوں سے موازنہ کیا۔ نفاذ کے نقطہ نظر سے، بہت سے ڈیزائن (جیسے sha512crypt اور Drupal7کرپٹوگرافک کور کے ساتھ تعامل کرنے والے ملٹی تھریڈڈ پروسیسر کور (سافٹ سی پی یو کور) پر مشتمل بلاکس استعمال کیے جاتے ہیں۔ دیگر جمبو ڈویلپرز کے ساتھ ہم آہنگی میں اس فعالیت کی ترقی کی قیادت ڈینس بریکن نے کی۔

دیگر اہم تبدیلیاں:

  • بڑی تعداد میں اضافی اقسام کی ہیشز، سائفرز وغیرہ کے لیے سپورٹ، بشمول کلاسک پاس ورڈ ہیش (مثال کے طور پر QNX کے نئے ورژن سے)، نیز کریپٹو کرنسی والیٹس، انکرپٹڈ آرکائیوز اور انکرپٹڈ فائل سسٹمز (مثال کے طور پر، بٹ لاکر اور فری بی ایس ڈی جیلی) کے ساتھ ساتھ نئی قسم کے فارمیٹس کے لیے سپورٹ جو پہلے سپورٹ کیے گئے تھے (مثال کے طور پر، اوپن بی ایس ڈی سافٹ ٹریڈ کے لیے bcrypt-pbkdf کے لیے شامل کردہ سپورٹ) اور بہت کچھ۔ مجموعی طور پر، سی پی یو پر 80 فارمیٹس اور اوپن سی ایل پر 47 فارمیٹس شامل کیے گئے ہیں (اور کچھ پرانے فارمیٹس کو نئے اور متروک فارمیٹس میں شامل کرکے ہٹا دیا گیا ہے)۔ CPU پر فارمیٹس کی کل تعداد اب 407 ہے (یا 262 جن میں کنفیگریشن فائلوں سے تشکیل شدہ "متحرک" فارمیٹس شامل نہیں ہیں) اور OpenCL پر 88 ہیں۔
  • OpenCL کے حق میں CUDA زبان کی حمایت کرنے سے انکار، جو NVIDIA GPUs کے مکمل استعمال میں کسی بھی طرح سے مداخلت نہیں کرتا ہے (اور یہاں تک کہ مدد کرتا ہے، GPU کے لیے پہلے دو نفاذ کے بجائے ہر ایک فارمیٹ کے ایک نفاذ پر توجہ مرکوز کرنے اور ترقی اور اصلاح کرنے کی بدولت)۔
  • نئے SIMD انسٹرکشن سیٹس کے لیے سپورٹ - AVX2، AVX-512 (بشمول دوسری جنریشن Xeon Phi کے لیے) اور MIC (پہلی جنریشن کے لیے) - نیز بہت سے فارمیٹس کے نفاذ میں SIMD کا زیادہ آفاقی اور مکمل استعمال، بشمول استعمال x86(-64) اور پر AVX اور XOP تک پہلے سے معاون ہدایات سیٹ کرتی ہیں۔
    NEON، ASIMD اور AltiVec بالترتیب ARM، Aarch64 اور POWER پر۔ (جزوی طور پر GSoC 2015 کے حصے کے طور پر۔)
  • سی پی یو اور اوپن سی ایل کے لیے متعدد اصلاحیں، دونوں ایک ساتھ بڑی تعداد میں ہیشز کے ساتھ زیادہ مؤثر طریقے سے کام کرنے کے لیے (مثال کے طور پر، GPU پر 320 ملین SHA-1 ہیشز کو لوڈ کرنے کا تجربہ کیا گیا تھا)، اور ہیش کیلکولیشن کی رفتار کو بڑھانے کے لیے۔ ان میں سے کچھ اصلاحات عالمگیر ہیں، کچھ فارمیٹس کے مختلف ذیلی سیٹوں کا احاطہ کرتی ہیں، اور بہت سے انفرادی فارمیٹس کے لیے مخصوص ہیں۔
  • (آٹو-)CPU پر چیک شدہ پاس ورڈز کی بہترین بفرنگ کی ترتیب (“—tune=auto —verbosity=5”) اور OpenCL پر کام کے بہترین سائز (بذریعہ ڈیفالٹ فعال)، بشمول NVIDIA GTX کے سست ریمپ اپ کو مدنظر رکھتے ہوئے سیریز GPUs کو مکمل آپریٹنگ فریکوئنسی 10xx اور جدید تر۔ ایسی آٹو ٹیوننگ کے لیے درحقیقت بھری ہوئی ہیشز اور پاس ورڈز کی اصل لمبائی کی جانچ کرنا (جب یہ پہلے سے معلوم ہو)۔
  • براہ راست کمانڈ لائن پر متعین "متحرک اظہار" کے لیے ایک کمپائلر کو شامل کرنا اور نئی ہائبرڈ ہیش اقسام کو نافذ کرنا، مثال کے طور پر "-format=dynamic='sha1(md5($p).$s)'"، جس کا حساب SIMD کا استعمال کرتے ہوئے CPU پر کیا جاتا ہے۔ . اس طرح کے تاثرات کے اجزاء کے طور پر، درجنوں تیز ہیش سپورٹ کیے جاتے ہیں (عام سے MD5 جیسے بھنور جیسے اعتدال پسند غیر ملکی تک)، سب اسٹرنگ کنکٹنیشن، انکوڈنگ اور ڈی کوڈنگ، کریکٹر کیس کنورژن، پاس ورڈ کے حوالے، نمک، صارف نام اور سٹرنگ مستقل۔
  • ہیش کیٹ سے ناپسندیدہ اختلافات کا خاتمہ، بشمول سابقہ ​​ہیش کیٹ کے مخصوص اصولوں (ورڈ لسٹ رول کمانڈز) کے لیے سپورٹ، 1 سے اوپن سی ایل ڈیوائس نمبرنگ میں منتقلی، کارکردگی ٹیسٹ کے لیے اسی پاس ورڈ کی لمبائی (عموماً لمبائی 7) کا ڈیفالٹ استعمال۔
  • قابل تصدیق پاس ورڈز (کریکنگ موڈز) بنانے کے نئے موڈز، بشمول ہیش کیٹ سے PRINCE (کئی الفاظ کو ملا کر کل لمبائی کے بڑھتے ہوئے ترتیب میں "جملے" بناتا ہے)، سب سیٹ (مختلف حروف کی ناکافی تعداد کے ساتھ پاس ورڈ سامنے لاتا ہے، چاہے یہ حروف ہی کیوں نہ ہوں۔ ممکنہ کے ایک بڑے سیٹ سے) اور ہائبرڈ ایکسٹرنل (کسی دوسرے موڈ سے موصول ہونے والے ہر بنیادی "لفظ" کی بنیاد پر بہت سے قابل تصدیق پاس ورڈ تیار کرنے کے لیے C- جیسی زبان میں کنفیگریشن فائلوں میں بیان کردہ بیرونی طریقوں کی اجازت دیتا ہے)۔ نیز، کئی نئے پہلے سے طے شدہ بیرونی موڈز۔
  • متعدد طریقوں کو بیک وقت استعمال کرنے کے لیے اضافی صلاحیتیں (ایک دوسرے کے اوپر - اسٹیکنگ)، اور ساتھ ہی قواعد کے سیٹ استعمال کرنے کے لیے (ورڈ لسٹ رولز اسٹیکنگ)۔
  • ماسک کے طریقوں میں بہتری (مخصوص لمبائی میں ماسک کا بتدریج کھینچنا، اوپن سی ایل ڈیوائس یا ایف پی جی اے بورڈ کے اطراف میں ماسک لگانا) اور سنگل کریک (ان آلات پر معقول رویہ جو متوازی طور پر بڑی تعداد میں ہیش کا حساب لگاتے ہیں۔ ، جس کے لیے پہلے اس موڈ میں کافی قابل تصدیق پاس ورڈ نہیں تھے، اور میموری کی کھپت پر بھی پابندیاں)۔
  • مختلف ذیلی نظاموں میں یونیکوڈ اور دیگر انکوڈنگز کے لیے بہت ساری اصلاحات۔
  • *2john پروگراموں میں بہت سی بہتری (جو مختلف فارمیٹس کی فائلوں کو تبدیل کرتے ہیں۔
    جان کے ساتھ استعمال کریں)، خاص طور پر wpapcap2john (وائی فائی ٹریفک کو ہینڈل کرتا ہے۔
  • بہت سے نئے کمانڈ لائن آپشنز ہیں، john.conf میں سیٹنگز، اسکرپٹ آپشنز کو کنفیگر کریں اور متعلقہ نئی خصوصیات، جن میں سے سبھی کا یہاں ذکر نہیں کیا گیا۔
  • ایڈریس سنیٹائزر (پہلے) اور UndefinedBehaviorSanitizer (شامل) کے ساتھ ڈیبگ بلڈز کے لیے بلٹ ان سپورٹ کی بدولت کوڈ کے معیار کو بہتر بنانا، بلٹ ان فارمیٹ فزر (GSoC 2015 کے حصے کے طور پر) شامل کرنا، مسلسل انضمام کا استعمال کرتے ہوئے (درجنوں آپریٹنگ سسٹم اور کمپائلر کے لیے بناتا ہے۔ تمام فارمیٹس کے لیے درست تعاون کے لیے امتزاج اور ان کی جانچ کرنا)۔

ماخذ: linux.org.ru

نیا تبصرہ شامل کریں