Fortuna (PRNG)
فارچیونا ایک کرپٹوگرافک طور پر محفوظ سڈورینڈم نمبر جنریٹر (پی آر این جی) ہے جسے بروس شنئیر اور نیلز فرگوسن نے وضع کیا اور 2003 میں شائع ہوا۔ اس کا نام موقع کی رومی دیوی فورٹونا کے نام پر رکھا گیا ہے۔ فری بی ایس ڈی فارچیونا کو/دیو/بے ترتیب کے لیے استعمال کرتا ہے اور/دیو/یورینڈم علامتی طور پر فری بی ایس ڈی 11 کے بعد سے اس سے منسلک ہے۔ ایپل او ایس 2020 کی پہلی سہ ماہی سے فارچیونا میں تبدیل ہو چکے ہیں۔ ڈیزائن فارچیونا محفوظ پی آر این جی کا ایک خاندان ہے ؛ اس کا ڈیزائن عمل درآمد کرنے والوں کے لیے کچھ انتخاب کھلا چھوڑتا ہے۔ یہ مندرجہ ذیل ٹکڑوں پر مشتمل ہے: خود جنریٹر، جو ایک بار بیج ہونے کے بعد غیر معینہ مقدار میں فرضی بے ترتیب ڈیٹا تیار کرے گا۔ اینٹروپی جمع کرنے والا، جو مختلف ذرائع سے حقیقی طور پر بے ترتیب ڈیٹا اکٹھا کرتا ہے اور کافی نئی بے ترتیبیت آنے پر اسے جنریٹر کو تلاش کرنے کے لیے استعمال کرتا ہے۔ سیڈ فائل، جو کمپیوٹر کو بوٹ ہوتے ہی بے ترتیب نمبر بنانا شروع کرنے کے قابل بنانے کے لیے کافی حالت کو محفوظ کرتی ہے۔ جنریٹر کسی بھی اچھے بلاک سائفر پر مبنی ہوتا ہے۔ عملی کریپٹوگرافی سے پتہ چلتا ہے کہ اے ای ایس، سانپ یا دو مچھلیاں۔ بنیادی خیال یہ ہے کہ سائفر کو کاؤنٹر موڈ میں چلایا جائے، جس میں انکریمنٹنگ کاؤنٹر کی مسلسل اقدار کو خفیہ کیا جائے۔ 128 بٹ بلاک سائفر کے ساتھ، یہ بے ترتیب سے شماریاتی طور پر قابل شناخت انحراف پیدا کرے گا۔ مثال کے طور پر، 264 حقیقی طور پر بے ترتیب 128 بٹ بلاکس پیدا کرنے سے اوسطا تقریبا ایک جوڑے کے یکساں بلاکس پیدا ہوں گے، لیکن کاؤنٹر موڈ میں 128 بٹ سائفر کے ذریعہ تیار کردہ پہلے 2128 میں سے کوئی بھی بار بار بلاکس نہیں ہیں۔ لہذا، کلید کو وقتا فوقتا تبدیل کیا جاتا ہے: کلیدی تبدیلی کے بغیر 1 ایم آئی بی سے زیادہ ڈیٹا (216 128 بٹ بلاکس) تیار نہیں ہوتا ہے۔ کتاب میں نشاندہی کی گئی ہے کہ 256 بٹ (یا اس سے زیادہ) بلاک سائز والے بلاک سائفرز، جنہیں اس وقت زیادہ مقبولیت حاصل نہیں تھی، میں یہ شماریاتی مسئلہ نہیں ہے۔ ہر ڈیٹا کی درخواست کے بعد کلید کو بھی تبدیل کیا جاتا ہے (چاہے وہ چھوٹا ہی کیوں نہ ہو)، تاکہ مستقبل کی کلیدی سمجھوتہ پچھلے جنریٹر آؤٹ پٹ کو خطرے میں نہ ڈالے۔ اس خاصیت کو بعض اوقات "تیز کلیدی مٹانے" یا آگے کی رازداری کے طور پر بیان کیا جاتا ہے۔ اینٹروپی جمع کرنے والا اینٹروپی کے نفیس (اور لامحالہ ناقابل اعتماد) تخمینوں کی ضرورت کے بغیر، "انجکشن" حملوں کے خلاف مزاحم ہونے کے لیے ڈیزائن کیا گیا ہے۔ اینٹروپی کے کئی "پولز" ہیں ؛ ہر اینٹروپی ماخذ اپنی مبینہ اینٹروپی کو پولز پر یکساں طور پر تقسیم کرتا ہے ؛ اور (یہاں کلیدی خیال ہے) جنریٹر کی n ویں ریسیڈنگ پر، پول k کا استعمال صرف اس صورت میں کیا جاتا ہے جب n 2k کا ضرب ہو۔ اس طرح، kth پول وقت کا صرف 1/2k استعمال ہوتا ہے۔ دوسرے لفظوں میں، زیادہ تعداد والے تالاب، (1) کم کثرت سے ریسیڈنگ میں حصہ ڈالتے ہیں لیکن (2) ریسیڈنگ کے درمیان بڑی مقدار میں اینٹروپی جمع کرتے ہیں۔ ایس ایچ اے-256 کے دو تکرار کا استعمال کرتے ہوئے بلاک سائفر کی کلید میں مخصوص اینٹروپی پولز کو ہیش کرکے ریسیڈنگ کی جاتی ہے۔ سیڈنگ جب تک کہ کوئی حملہ آور نظام میں بہنے والے مبینہ اینٹروپی کے تمام ذرائع کو کنٹرول کرنے کے قابل نہ ہو (ایسی صورت میں کوئی الگورتھم اسے سمجھوتے سے نہیں بچا سکتا)، کچھ k ہوگا جس کے لیے kth پول ریسیڈنگ کے درمیان کافی اینٹروپی جمع کرتا ہے کہ اس پول کے ساتھ ریسیڈنگ سیکیورٹی کو یقینی بناتا ہے۔ اور وہ پول زیر بحث اینٹروپی کی مقدار کے متناسب وقفے پر استعمال کیا جائے گا۔ لہذا، نظام ہمیشہ انجکشن کے حملے سے صحت یاب ہو جائے گا، اور ایسا کرنے میں لگنے والا وقت زیادہ سے زیادہ ایک مستقل عنصر ہے جو نظریاتی وقت سے زیادہ ہے اگر ہم یہ شناخت کرنے کے قابل تھے کہ اینٹروپی کے کون سے ذرائع خراب تھے اور کون سے نہیں۔ یہ نتیجہ کافی تالابوں کی موجودگی پر منحصر ہے۔ فارچیونا 32 تالابوں کا استعمال کرتا ہے، اور فی سیکنڈ زیادہ سے زیادہ 10 بار ریسیڈنگ کو محدود کرتا ہے۔ پول ختم ہونے میں پھر تقریبا 13 سال لگیں گے، جسے فرگوسن اور شنئیر عملی مقاصد کے لیے کافی طویل سمجھتے ہیں۔ زیادہ پاگل عمل درآمد کنندگان، یا جن کو بے ترتیب ڈیٹا کی پیداوار کی ضرورت ہوتی ہے اور اسی کے مطابق بار بار ریسیڈنگ کی ضرورت ہوتی ہے، وہ بڑی تعداد میں پول استعمال کر سکتے ہیں۔ متبادل فارچیونا زیادہ تر اینٹروپی اکیومیلیٹر کو سنبھالنے میں شنیر، کیلسی اور فرگوسن کے پہلے یاررو الگورتھم خاندان سے مختلف ہے۔ یاررو کے لیے ضروری تھا کہ اینٹروپی کے ہر ماخذ کے ساتھ فراہم کردہ اصل اینٹروپی کا اندازہ لگانے کے لیے ایک طریقہ کار ہو، اور اس میں صرف دو تالابوں کا استعمال کیا گیا ؛ اور اس کے تجویز کردہ مجسمے (جسے یاررو-160 کہا جاتا ہے) نے ایس ایچ اے-256 کو دہرانے کے بجائے ایس ایچ اے-1 کا استعمال کیا۔ تجزیہ فارچیونا کا تجزیہ اور مجوزہ بہتری 2014 میں کی گئی تھی۔ یہ بھی دیکھیں کہ بلم بلم شب کرپٹ جین رینڈم رینڈم نمبر جنریٹر اٹیک یارو الگورتھم حوالہ جات جنرل نیلز فرگوسن اور بروس شنئیر، پریکٹیکل کرپٹوگرافی، جو 2003 میں ولی نے شائع کیا تھا۔ جان ویگا، "سافٹ ویئر میں عملی بے ترتیب نمبر جنریشن"، اے سی ایس اے سی، پی پی۔ 129، 19 ویں سالانہ کمپیوٹر سیکیورٹی ایپلی کیشنز کانفرنس (ACSAC '03)، 2003 بیرونی روابط سیوڈورانڈم نمبر جنریٹر کرپٹوگرافک طور پر محفوظ سیوڈورانڈم نمبر جنریٹر