نمايش پست تنها
قديمي ۰۲-۲۴-۱۳۹۳, ۱۱:۲۷ بعد از ظهر   #5 (لینک دائم)
zeyton Female
عضو فوق فعال
 
آواتار zeyton
 
تاريخ عضويت: تير ۱۳۹۰
محل سكونت: همه جای ایران سرای من است..
پست ها: 26
تشكرها: 4
21 تشكر در 17 پست
My Mood: Mehrabon
Post مبانی رمزنگاری (قسمت پنجم)

رمز نگاري one time pad(رمز ورنام):
«گيلبرت سند فورد ورنام» (1960-1890)يكي از مهندسين شركت بل در آمريكا عملگر بسيار ساده XOR را براي رمز نگاري دنباله اطلاعات پيشنهاد داد. در طرح او كه در سال 1918 و قبل از ابداع كامپيوتر و براي ماشينهاي تحرير تله تايپ ارائه شد، پيشنهاد آن بود كه يك كليد رمز بسيار بزرگ كاراكتري بر روي يك نوار كاغذي درج و درون ماشين قرار داده شود. سپس دنباله حروف متن كاراكتر به كاراكتر با اين كليد رمز XOR شوند.
البته آقاي ورنام در طرح خود عملكرد رمز نگار را با نماد XOR معرفي نكرده چرا كه اين واژه ها زائيده عصر ديجيتال محسوب مي شوند. در عوض او از جبر منطقي و الگوي قطع و وصل رله ها بهره گرفته است آژانس امنيت ملي امريكا ابداع ورنام را مهمترين اتفاق در تاريخ رمز نگاري مي داند.

شرایط کلید در رمز ورنام:
شرط اول : كليد به صورت كاملا تصادفي انتخاب شود واحتمال صفر و يك بودن بيتهاي كليد دقيقاً 1/2 و مستقل از يكديگر باشد.
شرط دوم : طول كليد و متن اصلي برابر باشند. شرط دوم از شرط اول قابل استنتاج است چرا كه هر گاه طول كليد از طول متن كوتاه تر باشد قاعدتاً مجبور به تكرار كليد خواهيم بود كه اين موضوع شرط استقلال بيتها ي كليد را مخدوش مي كند.
شرط سوم: براي رمز نگاري متون مختلف هيچگاه از يك كليد دوبار استفاده نشود.

رمز نگاری و رمزگشایی one time pad:
كليد رمز كه بايد بطور كاملاً تصادفي وهمسان با طول دنباله متن انتخاب شود به Pad شهرت دارد كه اين كليد هرگز نبايد تكرار يا استفاده مجدد شود به همین دلیل اين روش رمز نگاري، عموماً با عنوان one time pad نيز شناخته مي شود. براي ارائه يك رابطه رياضي از روش one time pad فرض كنيد متن اصلي را P ناميده و دنباله بيتهاي اين متن را به ترتيب Pi بناميم بيتهاي متن رمز شده Ci به صورت زير تعريف مي شود:
Ci = Pi xor Ki
براي رمز گشايي نيز كافي است به صورت زیر عمل کنیم:
Pi = Ci xor Ki

مشکلات روش one time pad:
1) از آنجا كه كليد بايد از لحاظ طول با اصل پيام هم اندازه باشد فلذا هر گز در عمل نمي توان كليد را بخاطر سپرد پس هم گيرنده و هم فرستنده بايد كليد را از قبل توافق و در جايي ذخيره كنند.(برخلاف اصول كركهف)
2) چون براي پيامهاي متفاوت بايستي از padهاي متفاوت استفاده كرد و از هيچ padبيش از يكبار استفاده نمي شود لذا گيرنده و فرستنده مجبورند پيشاپيش هزاران pad را توافق و در جايي ذخيره كنند تا براي پيامهاي متوالي خود از آنها استفاده كرده و سپس آن را دور بيندازند.
3) حجم كل داده هايي كه مي تواند ارسال شود به حداكثر طول padبستگي دارد.
4) اگر گيرنده فقط يك بيت از ميان كل بيتهاي رمز شده را از دست بدهد و به هر دليل نتواند وجود يكي از بيتها را تشخيص بدهد مابقي بيتهاي دريافتي از لحاظ ترتيب با pad هماهنگ نيستند و مابقي متن از رمز خارج نخواهدشد.
5) توليد دنباله تصادفي pad نياز به مولد هاي شبه تصادفي دارد.
6) روش one time pad به حمله known plaintext هرگز مقاوم نيست.
__________________

هرگاه خداوند تو را به لبه پرتگاه هدایت کرد به او اعتماد کن،
زیرا یا تو را از پشت میگیرد
یا به تو پرواز را می آموزد.

zeyton آفلاين است   پاسخ با نقل قول