1 00:00:00,000 --> 00:00:02,000 [Powered by Google Translate] [RSA] 2 00:00:02,000 --> 00:00:04,000 [روب Bowden] [ٹومی MacWilliam] [ہارورڈ یونیورسٹی میں] 3 00:00:04,000 --> 00:00:07,000 [یہ CS50 ہے.] [CS50.TV] 4 00:00:07,000 --> 00:00:11,000 چلو RSA، ڈیٹا کی خفیہ کاری کے لئے ایک بڑے پیمانے پر استعمال کیا جاتا الگورتھم میں ایک نظر ڈالیں. 5 00:00:11,000 --> 00:00:16,000 کیسر اور Vigenère خفیہ کار کی طرح خفیہ کاری کا الگورتھم کو بہت محفوظ نہیں ہیں. 6 00:00:16,000 --> 00:00:20,000 کیسر صفر کے ساتھ، ایک حملہ آور صرف 25 مختلف چابیاں کرنے کی کوشش کرنے کی ضرورت ہے 7 00:00:20,000 --> 00:00:22,000 پیغام کی سادہ متن کو حاصل کرنے کے لئے. 8 00:00:22,000 --> 00:00:25,000 ہے جبکہ Vigenère صفر کیسر صفر سے زیادہ محفوظ ہے 9 00:00:25,000 --> 00:00:28,000 چابیاں کے لئے بڑے کی تلاش کی جگہ کی وجہ سے، ایک بار ایک حملہ آور 10 00:00:28,000 --> 00:00:30,000 ایک Vigenère صفر میں کلید کی لمبائی جانتا ہے، 11 00:00:30,000 --> 00:00:34,000 جو خفیہ کردہ متن میں نمونوں کا تجزیہ کے ذریعے کا تعین کیا جا سکتا ہے، 12 00:00:34,000 --> 00:00:38,000 Vigenère بیجلیھ کہ کیسر صفر سے کہیں زیادہ محفوظ نہیں ہے. 13 00:00:38,000 --> 00:00:42,000 RSA، دوسری طرف، اس طرح کے حملوں کا شکار نہیں ہے. 14 00:00:42,000 --> 00:00:45,000 کیسر صفر اور Vigenère صفر اور ایک ہی چابی کا استعمال کریں 15 00:00:45,000 --> 00:00:47,000 دونوں ینکریپٹ اور بےرمز ایک پیغام ہے. 16 00:00:47,000 --> 00:00:51,000 اس کی خاصیت ان خفیہ کار تشاکلی چابی یلگوردمز بنا دیتا ہے. 17 00:00:51,000 --> 00:00:54,000 تشاکلی اہم الگورتھم کے ساتھ ایک بنیادی مسئلہ 18 00:00:54,000 --> 00:00:57,000 یہ ہے کہ وہ خفیہ کاری اور بھیجنے کا پیغام ایک پر انحصار کرتے ہیں 19 00:00:57,000 --> 00:00:59,000 اور ایک حاصل کرنے اور پیغام کو خفیہ کشائی کرنا 20 00:00:59,000 --> 00:01:03,000 کلید وہ استعمال دونوں پر پہلے سے ہی ابتدائی اتفاق کیا ہے. 21 00:01:03,000 --> 00:01:06,000 لیکن ہم آغاز مسئلہ کے تھوڑا سا ہے. 22 00:01:06,000 --> 00:01:10,000 2 کمپیوٹر جو بات کرنا چاہتے ہیں ان کے درمیان ایک خفیہ کلید کس طرح قائم ہے؟ 23 00:01:10,000 --> 00:01:16,000 اگر کلید خفیہ ہونا ضروری ہے، تو ہم نے ایک اور بےرمز کی کلید کی خفیہ طریقہ کی ضرورت ہے. 24 00:01:16,000 --> 00:01:18,000 اگر ہم نے تشاکلی اہم خفیہ نگاری ہے 25 00:01:18,000 --> 00:01:21,000 اس وقت ہم صرف ایک ہی مسئلہ پر واپس آیا. 26 00:01:21,000 --> 00:01:25,000 RSA، دوسری طرف، چابیاں کے ایک جوڑے کا استعمال کرتا ہے، 27 00:01:25,000 --> 00:01:28,000 ڈکرپشن کے لئے خفیہ کاری اور دوسرے کے لئے ایک. 28 00:01:28,000 --> 00:01:32,000 ایک عوامی چابی بھی کہا جاتا ہے، اور دیگر نجی کلید ہے. 29 00:01:32,000 --> 00:01:34,000 عوامی چابی کے پیغامات کو خفیہ کرنے کے لئے استعمال کیا جاتا ہے. 30 00:01:34,000 --> 00:01:38,000 کے طور پر آپ کو اس کے نام کی طرف سے اندازہ لگا سکتا ہے، ہم ہماری عوامی کلید کا اشتراک کر سکتے ہیں 31 00:01:38,000 --> 00:01:43,000 کسی کو بھی ہم نے ایک خفیہ کردہ پیغام کی سلامتی کو کوئی سمجھوتا ​​کئے بغیر چاہتے ہیں. 32 00:01:43,000 --> 00:01:45,000 لاگز ایک عوامی چابی کا استعمال کرتے ہوئے خفیہ کردہ 33 00:01:45,000 --> 00:01:49,000 صرف اس کی اسی نجی کلید کے ساتھ کیا جا سکتا ہے decrypted. 34 00:01:49,000 --> 00:01:53,000 جب تک آپ اپنے عوامی کلید کا اشتراک کر سکتے ہیں، آپ کو اپنے ذاتی اہم راز ہمیشہ یاد رکھنا چاہئے. 61 00:01:55,000 --> 00:01:58,000 اور صرف نجی کلید بےرمز پیغامات میں استعمال کیا جا سکتا ہے 62 00:01:58,000 --> 00:02:02,000 اگر 2 صارفین پیغامات RSA کے ساتھ مرموز بھیجنے کے لئے چاہتے ہیں 63 00:02:02,000 --> 00:02:07,000 آگے اور پیچھے دونوں کے صارفین کو ان کے اپنے عوامی اور نجی کلیدی جوڑی کی ضرورت ہے. 64 00:02:07,000 --> 00:02:10,000 1 صارف سے لے کر 2 صارف لاگز 65 00:02:10,000 --> 00:02:15,000 صرف 2 صارف سے 1 صارف صارف 2 اہم جوڑی، اور پیغامات کا استعمال کریں 66 00:02:15,000 --> 00:02:17,000 صرف صارف 1 اہم جوڑی کا استعمال کریں. 67 00:02:17,000 --> 00:02:21,000 حقیقت یہ ہے کہ 2 الگ الگ چابیاں خفیہ اور بےرمز پیغامات ہیں 68 00:02:21,000 --> 00:02:24,000 RSA ایک اسمدوست اہم الگورتھم کرتا ہے. 69 00:02:24,000 --> 00:02:28,000 ہم عوامی چابی کے لئے خفیہ کی ضرورت نہیں ہے، اسے کسی دوسرے کمپیوٹر پر بھیجنے 70 00:02:28,000 --> 00:02:31,000 کے بعد چابی عوامی ویسے بھی ہے. 71 00:02:31,000 --> 00:02:33,000 اس کا مطلب یہ ہے کہ RSA اسی آغاز مسئلہ نہیں ہے 72 00:02:33,000 --> 00:02:36,000 تشاکلی اہم الگورتھم کے طور پر. 73 00:02:36,000 --> 00:02:39,000 تو اگر میں RSA خفیہ کاری کا استعمال کرتے ہوئے پیغام کو بھیجنے کے لئے چاہتے ہیں 74 00:02:39,000 --> 00:02:42,000 روب، پہلے میں روب کی عوامی کلید کی ضرورت ہو گی. 75 00:02:42,000 --> 00:02:47,000 چابیاں کے ایک جوڑے کو پیدا کرنے کے لئے، روب 2 بڑے اعظم کی تعداد کو منتخب کرنے کی ضرورت ہے. 76 00:02:47,000 --> 00:02:50,000 یہ تعداد سرکاری اور نجی دونوں چابیاں میں استعمال کیا جائے گا، 77 00:02:50,000 --> 00:02:54,000 لیکن عوامی چابی ان 2 کی تعداد کے مصنوعات ہی استعمال کریں گے، 78 00:02:54,000 --> 00:02:56,000 تعداد خود نہیں. 79 00:02:56,000 --> 00:02:59,000 ایک بار میں نے روب کی عوامی کلید کا استعمال کرتے ہوئے پیغام خفیہ کردہ ہے 80 00:02:59,000 --> 00:03:01,000 میں روب کو پیغام بھیج سکتا ہے. 81 00:03:01,000 --> 00:03:05,000 ایک کمپیوٹر کے لئے، فیکٹرنگ نمبر ایک مشکل مسئلہ ہے. 82 00:03:05,000 --> 00:03:09,000 عوامی چابی، یاد، 2 وزیر اعظم کی تعداد کی مصنوعات کا استعمال کیا ہے. 83 00:03:09,000 --> 00:03:12,000 اس کی مصنوعات کو صرف 2 عوامل ہونا ضروری ہے، 84 00:03:12,000 --> 00:03:16,000 جو تعداد ہے کہ نجی کلید ہو. 85 00:03:16,000 --> 00:03:20,000 بےرمز پیغام کے حکم میں RSA اس نجی کلید کا استعمال کریں گے 86 00:03:20,000 --> 00:03:25,000 یا نمبر عوامی کلید کی تشکیل کے عمل میں ایک ساتھ کئی گنا بڑھ گئی. 87 00:03:25,000 --> 00:03:28,000 کیونکہ یہ computationally مشکل تعداد فیکٹر ہے 88 00:03:28,000 --> 00:03:32,000 2 نجی کلید میں استعمال کی تعداد میں ایک عوامی چابی میں استعمال کیا جاتا ہے 89 00:03:32,000 --> 00:03:36,000 یہ مشکل ہے کے لئے ایک حملہ آور کو ذاتی کلید اعداد و شمار 90 00:03:36,000 --> 00:03:39,000 بےرمز کرنے کے لئے ضروری پیغام ہو جائے گا. 91 00:03:39,000 --> 00:03:43,000 اب RSA میں سے کچھ کم سطح کی تفصیلات میں جانا. 92 00:03:43,000 --> 00:03:46,000 چلو سب سے پہلے یہ دیکھنے کی ضرورت ہے کہ ہم کس طرح چابیوں کا ایک جوڑے پیدا کر سکتے ہیں. 93 00:03:46,000 --> 00:03:49,000 سب سے پہلے، ہم 2 وزیر اعظم کی تعداد کی ضرورت ہو گی. 94 00:03:49,000 --> 00:03:52,000 ہم ان 2 تعداد پی اور ق کو فون کرتا ہوں. 95 00:03:52,000 --> 00:03:56,000 کے لئے عملی طور پر پی اور ق، کو منتخب کرنے کی ہم pseudorandomly پیدا ہوں گے 96 00:03:56,000 --> 00:03:59,000 بڑے اور اس کے بعد کی تعداد کا تعین کرنے کے لئے ایک امتحان کا استعمال کیا جائے یا نہیں 97 00:03:59,000 --> 00:04:02,000 ان کی تعداد کو شاید وزیر اعظم ہیں. 98 00:04:02,000 --> 00:04:05,000 ہم بار بار بے ترتیب تعداد پیدا رکھ سکتے ہیں 99 00:04:05,000 --> 00:04:08,000 جب تک ہم 2 primes ہے کہ ہم اس کا استعمال کر سکتے ہیں ہے. 100 00:04:08,000 --> 00:04:15,000 یہاں P = 23 اور (ق) = 43 لینے. 101 00:04:15,000 --> 00:04:19,000 عملی طور پر یاد رکھنا،، پی اور ق بہت بڑی تعداد کا ہونا چاہئے. 102 00:04:19,000 --> 00:04:22,000 جہاں تک ہم جانتے ہیں، کی تعداد بڑی مشکل یہ ہے 103 00:04:22,000 --> 00:04:25,000 ایک خفیہ کردہ پیغام ٹوٹ. 104 00:04:25,000 --> 00:04:29,000 لیکن یہ بھی ینکریپٹ اور بےرمز پیغامات مہنگی ہے. 105 00:04:29,000 --> 00:04:33,000 آج یہ اکثر سفارش کی جاتی ہے کہ پی اور ق کم از کم 1024 بٹس ہیں، 106 00:04:33,000 --> 00:04:37,000 جس میں 300 سے زیادہ ہندسے میں ہر تعداد رکھتا ہے. 107 00:04:37,000 --> 00:04:40,000 لیکن ہم اس مثال کے طور پر ان چھوٹی تعداد کو منتخب کریں گے. 108 00:04:40,000 --> 00:04:43,000 اب ہم پی اور ق مل ضرب 3rd نمبر حاصل کرنے کے لئے کریں گے، 109 00:04:43,000 --> 00:04:45,000 جو ہم نے (ن) کو بلاتا ہوں. 110 00:04:45,000 --> 00:04:55,000 ہمارے معاملے میں، (ن) = 23 * 43 جو 989 =. 111 00:04:55,000 --> 00:04:58,000 ہم 989 = ن ہے. 112 00:04:58,000 --> 00:05:02,000 (ق) کے ساتھ 1 - - پیچھے اگلا، دوسرا ہم پی ضرب کریں گے 1 113 00:05:02,000 --> 00:05:05,000 4th تعداد، جو ہم م میں فون کروں گا حاصل کرنے کے لئے. 114 00:05:05,000 --> 00:05:15,000 ہمارے معاملے میں، م = 22 * ​​42 جو 924 =. 115 00:05:15,000 --> 00:05:18,000 ہم م = 924 ہے. 116 00:05:18,000 --> 00:05:22,000 اب ہم ایک بڑی تعداد ای کی ضرورت ہو گی جو نسبتا اعظم ہے م 117 00:05:22,000 --> 00:05:25,000 اور میٹر سے بھی کم ہے. 118 00:05:25,000 --> 00:05:28,000 دو کی تعداد نسبتا اعظم یا coprime ہیں 119 00:05:28,000 --> 00:05:33,000 اگر صرف مثبت عدد صحیح ہے کہ انہیں تقسیم دونوں یکساں طور پر 1 ہے. 120 00:05:33,000 --> 00:05:37,000 دوسرے الفاظ میں ای اور ایم کے، سب سے بڑا عام باجک 121 00:05:37,000 --> 00:05:39,000 1 ہونا ضروری ہے. 122 00:05:39,000 --> 00:05:44,000 عملی طور پر یہ ای کے لئے عام اعظم نمبر 65537 123 00:05:44,000 --> 00:05:48,000 جب تک کے طور پر یہ تعداد میٹر کی ایک عنصر نہیں ہوتا. 124 00:05:48,000 --> 00:05:53,000 ہمارے چابیاں کے لئے ہم کو منتخب کریں گے، ای 5 = 125 00:05:53,000 --> 00:05:57,000 5 سے نسبتا 924 اعظم ہے. 126 00:05:57,000 --> 00:06:01,000 آخر میں، ہم ایک اور نمبر کی ضرورت پڑے گی، جو ہم نے د فون کروں گا. 127 00:06:01,000 --> 00:06:11,000 D کچھ قیمت جو مساوات کو مطمئن ہونا چاہیے DE = 1 (MOD میٹر). 128 00:06:11,000 --> 00:06:17,000 یہ MOD میٹر کا ابیوینجک ہے ہمیں کہا جاتا ماڈیولر ریاضی کچھ استعمال کریں گے. 129 00:06:17,000 --> 00:06:21,000 ماڈیولر ریاضی میں، ایک بار ایک بڑی تعداد بعض بالائی جانے سے زیادہ ہو جاتا ہے 130 00:06:21,000 --> 00:06:24,000 اسے واپس 0 ارد گرد لپیٹ گا. 131 00:06:24,000 --> 00:06:27,000 مثال کے طور پر، ایک گھڑی، ماڈیولر ریاضی کا استعمال کرتا ہے. 132 00:06:27,000 --> 00:06:31,000 1:59 کے بعد ایک منٹ، مثال کے طور پر، 2:00 ہے، 133 00:06:31,000 --> 00:06:33,000 نہیں 1:60. 134 00:06:33,000 --> 00:06:36,000 منٹ ہاتھ 0 کے ارد گرد لپیٹ دیا ہے 135 00:06:36,000 --> 00:06:39,000 60 پابند بالائی تک پہنچنے صلی اللہ علیہ وسلم. 136 00:06:39,000 --> 00:06:46,000 تو ہم کہتے ہیں، 60 0 (60 MOD) کے برابر ہے 137 00:06:46,000 --> 00:06:57,000 اور 125 65 کے برابر ہے 5 (60 MOD) کے برابر ہے. 138 00:06:57,000 --> 00:07:02,000 ہمارا عوامی چابی جوڑی ای اور این جائے گا 139 00:07:02,000 --> 00:07:09,000 اس معاملے میں ای جہاں 5 ہے اور (ن) 989 ہے. 140 00:07:09,000 --> 00:07:15,000 ہماری نجی کلید جوڑی ڈی اور این ہو جائے گا، 141 00:07:15,000 --> 00:07:22,000 ہمارے معاملے میں جس میں 185 اور 989 ہے. 142 00:07:22,000 --> 00:07:25,000 یاد رکھیں کہ ہمارے اصل P primes اور ق ظاہر نہیں ہوتے ہیں 143 00:07:25,000 --> 00:07:29,000 ہماری نجی یا عوامی چابیاں میں کہیں. 144 00:07:29,000 --> 00:07:33,000 اب جب کہ ہم نے چابیاں کی ہماری جوڑی ہے، ہم کس طرح خفیہ کر سکتا ہوں پر ایک نظر لے 145 00:07:33,000 --> 00:07:36,000 اور بےرمز ایک پیغام ہے. 146 00:07:36,000 --> 00:07:38,000 میں لوٹنے کے لئے ایک پیغام بھیجنا چاہتے ہیں، 147 00:07:38,000 --> 00:07:42,000 تو وہ اس اہم جوڑی پیدا کرنے والا ہو گا. 148 00:07:42,000 --> 00:07:46,000 اس کے بعد میں ان کے عوامی چابی، جو میں استعمال کریں گے کے لئے روب سے پوچھیں گے 149 00:07:46,000 --> 00:07:48,000 اس کے بھیجنے کا پیغام خفیہ. 150 00:07:48,000 --> 00:07:53,000 یاد رکھیں، یہ بالکل ٹھیک ہے روب میرے ساتھ ان کی عوامی کلید ہے. 151 00:07:53,000 --> 00:07:56,000 لیکن یہ ان کی نجی کلید ٹھیک نہیں ہو گا. 152 00:07:56,000 --> 00:08:00,000 میں کوئی اندازہ ہے کہ ان کی نجی کلید ہے کی ضرورت نہیں ہے. 153 00:08:00,000 --> 00:08:03,000 ہم کئی حصوں میں ہمارا پیغام میٹر توڑ سکتے ہیں. 154 00:08:03,000 --> 00:08:07,000 (ن) سے چھوٹی اور اس کے بعد ان حصوں میں سے ہر ایک خفیہ. 155 00:08:07,000 --> 00:08:12,000 ہم سٹرنگ CS50، خفیہ جو ہم 4 حصوں میں ٹوٹ کر سکتے ہیں کریں گے، 156 00:08:12,000 --> 00:08:14,000 خط ایک فی. 157 00:08:14,000 --> 00:08:17,000 کے لئے میرا پیغام خفیہ، میں اس میں تبدیل کرنے کی ضرورت ہو گی 158 00:08:17,000 --> 00:08:20,000 عددی نمائندگی کے کچھ قسم کی ہے. 159 00:08:20,000 --> 00:08:25,000 چلو اپنے پیغام میں کرداروں کے ساتھ ASCII اقدار سلسلہ بندی کرنا. 160 00:08:25,000 --> 00:08:28,000 میں دیئے گئے پیغام میٹر خفیہ 161 00:08:28,000 --> 00:08:37,000 میں ای (MOD ن) ج م = حساب کی ضرورت ہو گی. 162 00:08:37,000 --> 00:08:40,000 لیکن م ن سے چھوٹا ہونا چاہیئے، 163 00:08:40,000 --> 00:08:45,000 یا کوئی اور مکمل پیغام modulo ن نہیں کیا جا سکتا ہے کا اظہار کیا. 164 00:08:45,000 --> 00:08:49,000 ہم میٹر کئی حصوں، جن میں سے سب (ن) سے چھوٹا ہے میں توڑ سکتے ہیں، 165 00:08:49,000 --> 00:08:52,000 اور ان حصوں میں سے ہر ایک خفیہ. 166 00:08:52,000 --> 00:09:03,000 ان حصوں میں سے ہر ایک خفیہ کاری، ہم C1 = 5 67 (989 MOD) 167 00:09:03,000 --> 00:09:06,000 جس میں 658 =. 168 00:09:06,000 --> 00:09:15,000 ہمارے دوسرے حصہ کے لئے ہم 5 (989 MOD) 83 ہے 169 00:09:15,000 --> 00:09:18,000 جس میں 15 =. 170 00:09:18,000 --> 00:09:26,000 ہماری تیسری حصہ کے لئے ہم 5 (989 MOD) 53 ہے 171 00:09:26,000 --> 00:09:30,000 جس میں 799 =. 172 00:09:30,000 --> 00:09:39,000 اور آخر میں، ہم ہماری آخری حصہ کے لئے 5 (989 MOD) 48 ہے 173 00:09:39,000 --> 00:09:43,000 جس میں 975 =. 174 00:09:43,000 --> 00:09:48,000 اب ہم کو لوٹنے کے لئے ان خفیہ کردہ اقدار کو بھیج سکتے ہیں. 175 00:09:54,000 --> 00:09:58,000 یہاں آپ کو، روب جانا. 176 00:09:58,000 --> 00:10:01,000 اگرچہ ہمارا پیغام پرواز میں ہے، ایک نظر لے 177 00:10:01,000 --> 00:10:07,000 کس طرح میں ہم نے د کے لئے اس قدر ہے. 178 00:10:07,000 --> 00:10:17,000 ہمارا نمبر D 5d = 1 (924 MOD) کو مطمئن کرنے کی ضرورت ہے. 179 00:10:17,000 --> 00:10:24,000 یہ د 5 924 modulo کے multiplicative الٹا کرتا ہے. 180 00:10:24,000 --> 00:10:28,000 کو دیکھتے ہوئے 2 integers، بی اور توسیع Euclidean الگورتھم 181 00:10:28,000 --> 00:10:33,000 ان 2 integers کا سب سے بڑا عام باجک تلاش کرنے کے لئے استعمال کیا جا سکتا ہے. 182 00:10:33,000 --> 00:10:37,000 اس سے ہمیں یہ بھی 2 دوسرے نمبر، X اور Y کو دے گا، 183 00:10:37,000 --> 00:10:47,000 = ب اور سب سے بڑا عام باجک کی طرف سے مساوات کلہاڑی + مطمئن ہیں. 184 00:10:47,000 --> 00:10:49,000 یہ ہم کس طرح مدد کرتا ہے؟ 185 00:10:49,000 --> 00:10:52,000 ٹھیک ہے، ای میں plugging 5 = 186 00:10:52,000 --> 00:10:56,000 اور م = ب کے لئے 924 187 00:10:56,000 --> 00:10:59,000 ہم نے پہلے سے ہی جانتے کہ یہ تعداد coprime ہیں. 188 00:10:59,000 --> 00:11:03,000 ان کی سب سے بڑی عام باجک 1 ہے. 189 00:11:03,000 --> 00:11:09,000 اس سے ہمیں 5x دیتا ہے + 924y = 1 190 00:11:09,000 --> 00:11:17,000 یا 5x = 1 - 924y. 191 00:11:17,000 --> 00:11:22,000 لیکن اگر ہم سب کچھ 924 modulo کے بارے میں صرف دیکھ بھال 192 00:11:22,000 --> 00:11:25,000 924y - پھر ہم کو چھوڑ کر سکتے ہیں. 193 00:11:25,000 --> 00:11:27,000 گھڑی واپس بارے میں سوچو. 194 00:11:27,000 --> 00:11:31,000 اگر 1 منٹ ہاتھ ہے اور اس کے بعد بالکل 10 گھنٹے گزر، 195 00:11:31,000 --> 00:11:35,000 ہم جانتے ہیں کہ 1 منٹ ہاتھ اب بھی ہو جائے گا. 196 00:11:35,000 --> 00:11:39,000 یہاں ہم 1 اور اس کے بعد شروع کے ارد گرد بالکل Y اوقات لپیٹ، 197 00:11:39,000 --> 00:11:41,000 تو ہم 1 پر اب بھی ہو جائے گا. 198 00:11:41,000 --> 00:11:49,000 ہم 5x = 1 (924 MOD) ہے. 199 00:11:49,000 --> 00:11:55,000 اور اس ایکس D ہم سے پہلے کے لئے تلاش کر رہے تھے کے طور پر ایک ہی ہے، 200 00:11:55,000 --> 00:11:58,000 اگر ایسا ہے تو ہم توسیع Euclidean الگورتھم کا استعمال کرتے ہیں 201 00:11:58,000 --> 00:12:04,000 اس نمبر ایکس حاصل کرنے کے لئے، یہ تعداد ہم اپنے د کے طور پر استعمال کرنا چاہئے. 202 00:12:04,000 --> 00:12:07,000 اب 5 = کے لئے توسیع Euclidean الگورتھم کو چلانے کے 203 00:12:07,000 --> 00:12:11,000 اور b 924 =. 204 00:12:11,000 --> 00:12:14,000 ہم نامی ٹیبل طریقہ طریقہ استعمال کریں گے. 205 00:12:14,000 --> 00:12:21,000 ہمارا جدول 4 کالم، X، Y، D، اور K پڑے گا. 206 00:12:21,000 --> 00:12:23,000 ہمارا جدول 2 قطار کے ساتھ شروع ہوتا ہے. 207 00:12:23,000 --> 00:12:28,000 پہلی صف میں ہم 1، 0، اس وقت کی ہماری قدر جو 5 ہے، 208 00:12:28,000 --> 00:12:37,000 اور ہماری دوسری قطار 0 1، ہے، اور ب کے لئے ہماری قیمت ہے، جو 924 ہے. 209 00:12:37,000 --> 00:12:40,000 4th کالم، K، کی قدر نتیجہ ہو جائے گا 210 00:12:40,000 --> 00:12:45,000 ڈی کی قیمت کے ساتھ اس کے اوپر قطار میں ڈی کی قیمت کو تقسیم کرنے کا 211 00:12:45,000 --> 00:12:49,000 ایک ہی قطار. 212 00:12:49,000 --> 00:12:56,000 ہم نے 924 سے تقسیم 5 کچھ باقی کے ساتھ 0 ہے. 213 00:12:56,000 --> 00:12:59,000 اس کا مطلب یہ ہے کہ ہم = 0 K ہے. 214 00:12:59,000 --> 00:13:05,000 اب ہر دوسرے سیل کی قیمت اس کے اوپر سیل 2 لائنوں کی قدر ہو جائے گا 215 00:13:05,000 --> 00:13:09,000 مائنس اوقات K اوپر صف کی قدر. 216 00:13:09,000 --> 00:13:11,000 چلو 3rd صف میں د سے شروع کرتے ہیں. 217 00:13:11,000 --> 00:13:19,000 ہم 5 - 924 0 * 5 =. 218 00:13:19,000 --> 00:13:25,000 1 0 * جس 0 ہے - <پیچھے اگلا، دوسرا ہم 0 ہے 219 00:13:25,000 --> 00:13:30,000 1 - 0 0 * جو 1 ہے. 220 00:13:30,000 --> 00:13:33,000 برا بھی نہیں، تو ہم اگلے صف منتقل. 221 00:13:33,000 --> 00:13:36,000 سب سے پہلے ہم کشمیر کے اپنے قدر کی ضرورت ہے. 222 00:13:36,000 --> 00:13:43,000 924 کچھ باقی کے ساتھ 5 184 = سے تقسیم 223 00:13:43,000 --> 00:13:46,000 تو کشمیر کے لئے ہماری قیمت 184 ہے. 224 00:13:46,000 --> 00:13:54,000 اب 924 - 5 184 * 4 =. 225 00:13:54,000 --> 00:14:05,000 1 - 0 * 184 1 ہے اور 0 - 1 * 184 -184 ہے. 226 00:14:05,000 --> 00:14:07,000 ٹھیک ہے، اگلی صف دیتے. 227 00:14:07,000 --> 00:14:10,000 کشمیر کی ہماری قیمت 1 وجہ سے ہو جائے گا 228 00:14:10,000 --> 00:14:15,000 5 کچھ باقی کے ساتھ 4 = 1 سے تقسیم. 229 00:14:15,000 --> 00:14:17,000 دوسرے کالم میں بھرنے دو 230 00:14:17,000 --> 00:14:21,000 5 - 4 1 * = 1. 231 00:14:21,000 --> 00:14:25,000 0 - 1 * 1 -1 =. 232 00:14:25,000 --> 00:14:33,000 اور 1 - 184 1 * 185 ہے. 233 00:14:33,000 --> 00:14:35,000 چلو دیکھتے ہیں ہمارے کشمیر کے اگلے قیمت کیا ہو گی. 234 00:14:35,000 --> 00:14:40,000 ٹھیک ہے، ایسا لگتا ہے جیسے ہم نے 4 1، جو 4 ہے سے تقسیم. 235 00:14:40,000 --> 00:14:43,000 اس معاملے میں جہاں ہم نے 1 کی طرف سے تقسیم کر رہے ہیں اس طرح کہ K برابر ہے 236 00:14:43,000 --> 00:14:50,000 مندرجہ بالا صف میں ڈی کی قیمت کا مطلب ہے کہ ہم اپنے الگورتھم کے ساتھ کیا کیا کر رہے ہیں. 237 00:14:50,000 --> 00:14:58,000 ہم یہاں دیکھتے ہیں کہ ہم نے آخری قطار میں 185 = X اور Y = -1 کر سکتے ہیں. 238 00:14:58,000 --> 00:15:00,000 چلو، اب ہماری اصل مقصد کو حاصل کرنے میں واپس آ. 239 00:15:00,000 --> 00:15:04,000 ہم نے کہا کہ اس کے نتیجے میں کے طور پر ایکس کی قیمت اس الگورتھم کو چلانے 240 00:15:04,000 --> 00:15:08,000 (MOD ب) multiplicative الٹا ہو جائے گی. 241 00:15:08,000 --> 00:15:15,000 اس کا مطلب یہ ہے کہ 5 میں سے 185 multiplicative الٹا (924 MOD) 242 00:15:15,000 --> 00:15:20,000 جس کا مطلب ہے کہ ہم د کے لئے 185 کی قدر ہے. 243 00:15:20,000 --> 00:15:23,000 حقیقت یہ ہے کہ D = 1 آخری قطار میں 244 00:15:23,000 --> 00:15:26,000 تصدیق کہ ای میٹر coprime گیا. 245 00:15:26,000 --> 00:15:30,000 اگر اسے 1 نہیں تھے تو ہم ایک نیا ای کو منتخب کرنے کی ضرورت ہے. 246 00:15:30,000 --> 00:15:33,000 اب دیکھتے ہیں اگر روب میرا پیغام موصول ہوئی ہیں. 247 00:15:33,000 --> 00:15:35,000 کسی نے مجھے جب ایک خفیہ پیغام بھیجتا ہے 248 00:15:35,000 --> 00:15:38,000 جب تک میں نے اپنی نجی کلید رکھی ایک راز ہے 249 00:15:38,000 --> 00:15:41,000 میں صرف ایک جو بےرمز کر سکتے ہیں پیغام ہوں. 250 00:15:41,000 --> 00:15:46,000 بےرمز ایک حصہ سی میں اصل پیغام کا حساب کر سکتے ہیں 251 00:15:46,000 --> 00:15:53,000 D (MOD ن) اقتدار میں حصہ کے برابر ہے. 252 00:15:53,000 --> 00:15:57,000 یاد رہے کہ ڈی اور N اپنے نجی کلید سے ہیں. 253 00:15:57,000 --> 00:16:01,000 اس کی مقدار کی طرف سے ایک مکمل پیغام کرنے کے لیے ہم بےرمز ہر حصہ حاصل 254 00:16:01,000 --> 00:16:04,000 اور نتائج سلسلہ بندی کرنا. 255 00:16:04,000 --> 00:16:08,000 کس طرح محفوظ RSA ہے؟ 256 00:16:08,000 --> 00:16:10,000 سچ تو یہ ہے، ہم نہیں جانتے. 257 00:16:10,000 --> 00:16:14,000 سیکورٹی کی بنیاد پر کیا جاتا ہے کتنی دیر تک یہ ایک حملہ آور ایک پیغام ٹوٹ 258 00:16:14,000 --> 00:16:16,000 RSA کے ساتھ خفیہ کردہ ہے. 259 00:16:16,000 --> 00:16:19,000 یاد رکھیں کہ ایک حملہ آور اپنے عوامی چابی تک رسائی ہے، 260 00:16:19,000 --> 00:16:21,000 جس میں ای اور این دونوں پر مشتمل ہے. 261 00:16:21,000 --> 00:16:26,000 اگر حملہ آور اس کی 2 primes، پی اور ق میں N عنصر کا انتظام، 262 00:16:26,000 --> 00:16:30,000 تو وہ D حساب توسیع Euclidean الگورتھم کا استعمال کرتے ہوئے کر سکتے ہیں. 263 00:16:30,000 --> 00:16:35,000 یہ اس کے نجی کلید، جو بےرمز رکھا جائے استعمال کیا جا سکتا ہے اور کوئی بھی پیغام دیتا ہے. 264 00:16:35,000 --> 00:16:38,000 لیکن کتنی جلدی ہم integers فیکٹر کر سکتے ہیں؟ 265 00:16:38,000 --> 00:16:41,000 ایک بار پھر، ہم نہیں جانتے. 266 00:16:41,000 --> 00:16:43,000 کسی کو بھی کرنے کے ایک تیز رفتار طریقہ مل گیا ہے، 267 00:16:43,000 --> 00:16:46,000 جس کا مطلب یہ ہے کہ دیا اتنا بڑا ن 268 00:16:46,000 --> 00:16:49,000 ایک حملہ آور unrealistically لمبی لیں گے 269 00:16:49,000 --> 00:16:51,000 تعداد عنصر. 270 00:16:51,000 --> 00:16:54,000 اگر کوئی فیکٹرنگ integers کے ایک تیز رفتار طریقہ سے معلوم ہوا 271 00:16:54,000 --> 00:16:57,000 RSA ٹوٹ جائے گی. 272 00:16:57,000 --> 00:17:01,000 لیکن اگر عددی factorization موروثی طور پر سست ہے 273 00:17:01,000 --> 00:17:04,000 RSA الگورتھم اس میں کچھ دوش اب بھی کر سکتے ہیں 274 00:17:04,000 --> 00:17:07,000 جو پیغامات کی آسان ڈکرپشن کے لئے کی اجازت دیتا ہے. 275 00:17:07,000 --> 00:17:10,000 کوئی بھی نہیں ملا ہے اور انکشاف کیا ہے ابھی تک اس طرح ایک دوش 276 00:17:10,000 --> 00:17:12,000 لیکن اس کا یہ مطلب یہ نہیں ہے ایک کا کوئی وجود نہیں ہے. 277 00:17:12,000 --> 00:17:17,000 اصول میں، کسی کو وہاں RSA کے تمام کے ساتھ خفیہ کردہ ڈیٹا پڑھنے کے کر سکتے ہیں. 278 00:17:17,000 --> 00:17:19,000 رازداری کے مسئلہ کی ایک اور تھوڑا سا ہے. 279 00:17:19,000 --> 00:17:23,000 اگر ٹومی کچھ میرے عوامی چابی کا استعمال کرتے ہوئے پیغام خفیہ کرتا ہے 280 00:17:23,000 --> 00:17:26,000 اور ایک حملہ آور ایک ہی میرے عوامی چابی کا استعمال کرتے ہوئے پیغام خفیہ کرتا ہے 281 00:17:26,000 --> 00:17:29,000 حملہ آور کو دیکھتے ہیں کہ 2 پیغامات جیسی ہیں 282 00:17:29,000 --> 00:17:32,000 اور اس طرح جانتے ہیں کہ کیا ٹومی خفیہ. 283 00:17:32,000 --> 00:17:36,000 اس کو روکنے کے لئے، پیغامات عام طور پر بے ترتیب بٹس کے ساتھ padded ہیں 284 00:17:36,000 --> 00:17:39,000 کیا جا رہا ہے خفیہ تاکہ ایک ہی پیغام خفیہ کردہ سے پہلے 285 00:17:39,000 --> 00:17:44,000 کئی بار اس وقت تک مختلف نظر کے طور پر پیغام پر بھرتی مختلف ہے. 286 00:17:44,000 --> 00:17:47,000 لیکن یاد رکھنا کہ ہم کس طرح پیغامات کو حصوں میں تقسیم ہے 287 00:17:47,000 --> 00:17:50,000 تاکہ ہر حصہ میں (ن) سے کم ہے؟ 288 00:17:50,000 --> 00:17:52,000 حصوں بھرتی کا مطلب یہ ہے کہ ہم چیزوں پر تقسیم ہو سکتا ہے 289 00:17:52,000 --> 00:17:57,000 padded حصہ کے بعد اس سے بھی زیادہ مقدار میں (ن) سے چھوٹا ہونا لازمی ہے. 290 00:17:57,000 --> 00:18:01,000 خفیہ کاری اور ڈکرپشن RSA کے ساتھ نسبتا مہنگی ہیں، 291 00:18:01,000 --> 00:18:05,000 اور بہت سے حصوں میں ایک پیغام کو توڑنے کی ضرورت بہت مہنگا ہو سکتا ہے. 292 00:18:05,000 --> 00:18:09,000 اگر ڈیٹا کی ایک بڑی مقدار ینکرپٹ کئے جاتے کرنے کی ضرورت ہے اور decrypted 293 00:18:09,000 --> 00:18:12,000 ہم تشاکلی اہم الگورتھم کے فوائد کو جمع کر سکتے ہیں 294 00:18:12,000 --> 00:18:16,000 RSA کے ان کے ساتھ دونوں کی سلامتی اور کارکردگی کو حاصل کرنے کے لئے. 295 00:18:16,000 --> 00:18:18,000 اگرچہ ہم اس میں یہاں نہیں، 296 00:18:18,000 --> 00:18:23,000 یئایس Vigenère اور کیسر خفیہ کار کی طرح ایک تشاکلی اہم الگورتھم ہے 297 00:18:23,000 --> 00:18:25,000 بہت مشکل درار لیکن. 298 00:18:25,000 --> 00:18:30,000 جی ہاں، ہم نے ایک مشترکہ خفیہ کلید کے قیام کے بغیر یئایس استعمال نہیں کر سکتے ہیں 299 00:18:30,000 --> 00:18:34,000 2 نظاموں کے درمیان، اور ہم سے پہلے اس کے ساتھ مسئلہ دیکھا. 300 00:18:34,000 --> 00:18:40,000 لیکن اب ہم RSA کو 2 نظاموں کے درمیان مشترکہ خفیہ کلید قائم کرنے کے لئے استعمال کر سکتے ہیں. 301 00:18:40,000 --> 00:18:43,000 ہم آپ کو ڈیٹا بھیجنے والے بھیجنے کے کمپیوٹر کو فون کرتا ہوں 302 00:18:43,000 --> 00:18:46,000 اور کمپیوٹر کا ڈیٹا وصول کرنے والے وصول کرنے ہیں. 303 00:18:46,000 --> 00:18:49,000 وصول کرنے والے ایک RSA اہم جوڑی ہے اور بھیجتا ہے 304 00:18:49,000 --> 00:18:51,000 عوامی مرسل کو چابی. 305 00:18:51,000 --> 00:18:54,000 ارسال کنندہ کے پاس ایک یئایس کلید پیدا، 306 00:18:54,000 --> 00:18:57,000 وصول کرنے کے RSA عوامی بٹن کے ساتھ یہ خفیہ کرتا ہے، 307 00:18:57,000 --> 00:19:00,000 اور وصول کرنے یئایس کلید بھیجتا ہے. 308 00:19:00,000 --> 00:19:04,000 وصول کرنے والے اپنے RSA نجی کلید کے ساتھ پیغام decrypts ہے. 309 00:19:04,000 --> 00:19:09,000 بھیجنے والے اور وصول کرنے والے دونوں اب ان دونوں کے درمیان ایک مشترکہ یئایس چابی ہے. 310 00:19:09,000 --> 00:19:14,000 یئایس، جو RSA سے خفیہ کاری اور ڈکرپشن میں تیزی سے ہے، 311 00:19:14,000 --> 00:19:18,000 اب ڈیٹا کی بڑی تعداد خفیہ اور وصول کرنے کے لئے انہیں بھیج استعمال کیا جا سکتا ہے، 312 00:19:18,000 --> 00:19:21,000 جو ایک ہی کلید خفیہ کشائی کریں کا استعمال کرتے ہوئے کر سکتے ہیں. 313 00:19:21,000 --> 00:19:26,000 یئایس، جو RSA سے خفیہ کاری اور ڈکرپشن میں تیزی سے ہے، 314 00:19:26,000 --> 00:19:30,000 اب ڈیٹا کی بڑی تعداد خفیہ اور وصول کرنے کے لئے انہیں بھیج استعمال کیا جا سکتا ہے، 315 00:19:30,000 --> 00:19:32,000 جو ایک ہی کلید خفیہ کشائی کریں کا استعمال کرتے ہوئے کر سکتے ہیں. 316 00:19:32,000 --> 00:19:36,000 ہم صرف RSA ضرورت مشترکہ چابی کو منتقل کرنے کی. 317 00:19:36,000 --> 00:19:40,000 اب ہم بالکل نہیں RSA استعمال کرنے کی ضرورت ہے. 318 00:19:40,000 --> 00:19:46,000 ایسا لگتا ہے جیسے میں ایک پیغام ہے. 319 00:19:46,000 --> 00:19:49,000 اس سے کوئی فرق نہیں ہے اگر کسی پڑھنے کاغذ ہوائی جہاز پر کیا ہے اس سے پہلے کہ میں اسے پکڑ لیا 320 00:19:49,000 --> 00:19:55,000 کیونکہ میں نجی کلید کے ساتھ صرف ایک ہوں. 321 00:19:55,000 --> 00:19:57,000 آو بےرمز پیغام میں مقدار میں سے ہر ایک. 322 00:19:57,000 --> 00:20:07,000 پہلا حصہ، 658، ہم D طاقت، جو 185 ہے بلند، 323 00:20:07,000 --> 00:20:18,000 MOD (ن)، جو 989 ہے 67 کے برابر ہے، 324 00:20:18,000 --> 00:20:24,000 جو ASCII میں خط C ہے. 325 00:20:24,000 --> 00:20:31,000 اب دوسرے حصہ پر. 326 00:20:31,000 --> 00:20:35,000 دوسرا حصہ 15 کی قیمت ہے، 327 00:20:35,000 --> 00:20:41,000 جو ہم 185th اقتدار، اضافہ 328 00:20:41,000 --> 00:20:51,000 989، MOD، اور یہ 83 کے برابر ہے 329 00:20:51,000 --> 00:20:57,000 جو ASCII میں ہے S خط. 330 00:20:57,000 --> 00:21:06,000 اب، ہم تیسرا حصہ، جس میں 799 قیمت ہے 185 میں اضافہ، 331 00:21:06,000 --> 00:21:17,000 989، MOD، اور یہ 53 کے برابر ہے، 332 00:21:17,000 --> 00:21:24,000 جو ASCII میں 5 کردار کی قدر ہے. 333 00:21:24,000 --> 00:21:30,000 اب آخری حصہ کے لئے، جو 975 کی قیمت ہے، 334 00:21:30,000 --> 00:21:41,000 ہم 185 کو بڑھانے، 989 MOD، 335 00:21:41,000 --> 00:21:51,000 اور یہ 48، جو ASCII میں کردار 0 کی قدر ہے کے برابر ہے. 336 00:21:51,000 --> 00:21:57,000 میرا نام Rob Bowden ہے، اور اس CS50 ہے. 337 00:21:57,000 --> 00:22:00,000 [CS50.TV] 338 00:22:06,000 --> 00:22:08,000 بالکل RSA. 339 00:22:08,000 --> 00:22:14,000 بالکل RSA. [ہنسی] 340 00:22:14,000 --> 00:22:17,000 بالکل.