میهن داکیومنت                میهن داکیومنت                      میهن داکیومنت              میهن داکیومنت

مرکز دانلود پایان نامه ، پروژه ، روش تحقیق ، مقاله 


میهن داک - میهن داکیومنت

پروژه امنيت شبكه و وب رمزگذاري و رمزگشايي


کد محصول : 10001049 نوع فایل : word تعداد صفحات : 62 صفحه قیمت محصول : 7000 تومان تعداد بازدید 285

فهرست مطالب و صفحات نخست


امنيت شبكه و وب  رمزگذاري و رمزگشايي

فهرست مطالب:

  1  رمزنگاري    3
  ١-1 - معرفي و اصطلاحات    4
1-٢ - الگوريتم ها    6
  2-سيستم هاي کليدي متقارن    7   
  3- سيستم هاي کليدي نا متقارن    11
4- کليد ها در رمزنگاري    15
4-1 (Secret keys)- ١- کليدهاي محرمانه    16
4-2 (Public and private keys)   ٢- کليدهاي عمومي و اختصاصي    16
 4-3 (Master keys and derived keys) ٣- کليدهاي اصلي و کليدهاي مشتق شد17       
  4-4 (Key-encrypting keys) ۴- کليدهاي رمزکننده کليد    18
4-5 (Session keys) ۵- کليدهاي نشست    19
5-  شکستن کليدهاي رمزنگاري    20
5-1  چه طول کليدي در رمزنگاري مناسب است؟    21
5-2  الگوريتمهاي متقارن    21
5-3  الگوريتمهاي نامتقارن    23
  6- توضيحاتي در مورد الگوريتمMD5       24
6- 1-خلاصه:    25
6-2- شرايط و نکات لازم:    26   
6-  ٣-- توضيحات الگوريتم   MD5    27
6- 4گام ١- اضافه کردن بيتهاي نرم کننده:    28
  6-5 -گام ٢- افزايش طول:    28
6-6 - گام ٣- يين بافر براي  MD5    29
6-7- گام ۴- پردازش پيام در بلاک هاي ١۶ کلمه اي:    29
 6-8- گام ۵- خروجي:    32
7-آشنايي با پرو تکل SSL و عملکرد آن    34
  7-1-» SSL چيست ؟    35
7-2ملزومات يک ارتباط مبتني بر پروتکل امنيتي SSL    37
7-3-مکانيزم هاي تشکيل دهنده SSL:    37
7-3-1تاييد هويت سرويس دهنده    37
7-3- ٢- تاييد هويت سرويس گيرنده    38
7-3-3-ارتباطات رمز شده    38
7-4 اجزاء پروتکل SSL    38
7-4-1 SSL Record Protoco    39
7-4-2 SSL Handshake Protoco    39
7-5 مزاياي بخش بندي پروتکل SSL به دو زير پروتکل    39
7-6 الگوريتم هاي رمز نگاري پشتيباني شده در SSL    39
7-7 نحوه عملکرد داخلي پروتکل SSL    40
7-8 حملات تاثير گذار بر SSL    43
7-9امنيت  اس اس ال (SSL)        43
7-9-1» نمايش قفل امنيت SSL:    43
8- امنيت شبکه    44
9- پيوست ها :    49
9 -1 – ضميمه  1 (کد و شکل برنامه)    50
10- منابع:    58

مقدمه
آنچه که در متن مي خوانيد :
در ادامه شما با نحوه عملکرد هر بخش از برنامه آشنا خواهيد شد . توضيحات به همراه شکل ارائه شده است تا شما را در درک بهتر ياري نمايد .

هدف از طراحي برنامه :
1-امکان مکالمه متنی بين مشتري های يک شبکه محلی
۲-به حد اقل رساندن بر شبکه ( تبادل حد اقل اطلاعات بين خطوط شبکه)
۳-استفاده از آلگوريتم های رمز گذری و رمزگشای جهتِ جلو گيری از نفوذ هکر ها
۴-عدم استفاده از بانک اطلاعات

توضيح مختصر :
اين برنامه براي کاربری های زیر طراحي شده است :
1 –ارتباط بين اعضای يک شبکه توسط متن برای جلوگيری از رفت و آمد های اضافی در محيط سايت
۲-امکان ارسال فايل بدون به اشتراک گذشتن فايل های مشتری
 
چکیده:
به علت نياز کاربران يک شبکه برای تبادل اطلاعات به صورت الکترونيکی نرم افزار های مختلفی در بازار من جمله نرم افزار  out look وجود دارد لزوم استفاده از اين نو ارتباط کاهش رفت آمدهاي کاربران در يک سايت و يا حتی طبقات يک ساختمان ميشود. در اين ميان مسالي چون صورت،امنيت و قابليت اطمينان بسيارهاءزاهميت است .منظور از صورت در شبکه های کامپيوترحد اقل سازی حجيم اطلاعات مراوده شده می باشدقابليت اطمينان از اين نظر هاءزاهميت است که پيام ها با کمترين خطا به مقصد ارسال شوند.در امنيت که بحث اصلي اين پروژه مي باشد با الگوريتم هاي مختلف رمز گزاري آشنا ميشويم تا از نفوذ هکرها جلوگيري شود.

رمزنگاری

 
١-1 - معرفي و اصطلاحات
رمزنگاری علم کدها و رمزهاست . یک هنر قدیمی است و برای قرنها بمنظور محافظت از پيغامهایی که بين فرماندهان، جاسوسان، عشاق و دیگران ردوبدل م یشده، استفاده شده است تا پيغامهای آنها محرمانه بماند.
هنگامی که با امنيت دیتا سروکار داریم، نياز به اثبات هویت فرستنده و گيرنده پيغام داریم و در ضمن باید از عدم تغيير محتوای پيغام مطمئن شویم . این سه موضوع یعنی محرمانگی، تصدیق هویت و جامعيت در قلب امنيت ارتباطات دیتای مدرن قرار دارند و م یتوانند از رمزنگاری استفاده کنند.
اغلب این مساله باید تضمين شود که یک پيغام فقط ميتواند توسط کسانی خوانده شود که پيغام برای آنها ارسال شده است و دیگران این اجازه را ندارند . روشی که تامين کننده این مساله باشد "رمزنگاری" نام دارد. رمزنگاری هنر نوشتن بصورت رمز است بطوریکه هيچکس بغير از دریافت کننده موردنظر نتواند محتوای پيغام را بخواند.
رمزنگاری مخف ف ها و اصطلاحات مخصوص به خود را دارد . برای درک عميق تر به مقداری از دانش ریاضيات نياز است.
شناخته می شود)، آنرا با استفاده از یک کليد (رشته ای محدود از plaintext برای محافظت از دیتای اصلی ( که بعنوان بيتها) بصورت رمز در م ی آوریم تا کسی که دیتای حاصله را م ی خواند قادر به درک آن نباشد . دیتای رمزشده (که شناخته می شود) بصورت یک سری ب ی معنی از بيتها بدون داشتن رابطه مشخصی با دیتای ciphertext بعنوان اصلی بنظر م ی رسد. برای حصول متن اوليه دریاف ت کننده آنرا رمزگشایی م ی کند. یک شخص ثالت (مثلا یک هکر ) نوشته رمز کشف یابد، دست اصلی دیتای به کليد دانستن بدون اینکه برای تواند )s(cryptanalysi . می کند بخاطرداشتن وجود این شخص ثالث بسيار مهم است.
رمزنگاری دو جزء اصلی دارد، یک الگوریتم و یک کليد . الگوریتم یک مبدل یا فرمول ریاضی است . تعداد کمی الگوریتمقدرتمند وجود دارد که بيشتر آنها بعنوان استانداردها یا مقالات ریاضی منتشر شد ه اند. کليد، یک رشته از ارقامدودویی (صفر و یک ) است که بخودی خود بی معنی است . رمزنگاری مدرن فرض م ی کند که الگوریتم شناخته شده   Ircert.com P30World.com
 Ircert.com P30World.com است یا م ی تواند کشف شود . کليد است که باید مخفی نگاه داشته شود و کليد است که در هر مرحله پياد ه سازیتغيير می کند. رمزگشایی ممکن است از همان جفت الگوریتم و کليد یا جفت متفاوتی استفاده کند.شناخته م یشود. بصورت scrambling دیتای اوليه اغلب قبل از رمزشدن بازچينی م ی شود؛ این عمل عموما بعنوانتر، nfunctio hash مشخص شده مشخص پيش از طول به د(اشب داشته ای اندازه هر تواند می که) ار دیتا از بلوکی هااز تواند evalu hashed شود بازسازی . Hash function کاهش می دهد. البته دیتای اوليه نمی بخشی عنوان اغلب ها
از یک سيستم تایيد هویت مورد نياز هستند؛ خلاص ه ای از پيام (شامل مه مترین قسمتها مانند شماره پيام، تاریخ وو hhas ساعت، و نواحی مهم دیت ا) قبل از رمزنگاری خود پيام، ساخته
می شود.
یک الگوریتم ثابت با توليد یک امضاء برروی پيام با MAC یا (Message Authentication Check) یک چک تایيد پياماستفاده از یک کليد متقارن است . هدف آن نشان دادن این مطلب است که پيام بين ارسال و دریافت تغيير نکردهاست. هنگامی که رمزنگاری توسط کليد عمومی برای تایيد هویت فرستنده پيام استفاده می ایجاد به منجر شود،می شود. (digital signature) امضای دیجيتال
1-٢ - الگوريتم ها
طراحی الگوریتمهای رمزنگاری مقوله ای برای متخصصان ریاضی است . طراحان سيستمهایی که در آنها از رمزنگاریاستفاده می شود، باید از نقاط قوت و ضعف الگوریتمهای موجود مطلع باشند و برای تعيين الگوریتم مناسب قدرتدر اواخر دهه ٠۴ و اوایل دهه ٠۵ (Shannon) تصميم گيری داشته باشند . اگرچه رمزنگاری از اولين کارهای شانونبشدت پيشرفت کرده است، اما کشف رمز نيز پاب ه پای رمزنگاری به پيش آمده است و الگوریتمهای کمی هنوز باگذشت زمان ارزش خود را حفظ کرد ه اند. بنابراین تعداد الگوریتمهای استفاده شده در سيستمهای کامپيوتری عملی ودر سيستمهای برپایه کارت هوشمند بسيار کم است.
 
سيستم‌هاي کليدي متقارن
 
یک الگوریتم متقارن از یک کليد برای رمزنگاری و رمزگشایی استفاده م ی کند. بيشترین شکل استفاده از رمزنگاری DEA یا data encryption algorithm که در کارتهای هوشمند و البته در بيشتر سيستمهای امنيت اطلاعات وجود دارد
یک محصول دولت ایالات متحده است که امروزه بطور وسيعی DES . شناخته می شود DES است که بيشتر بعنوانبعنوان یک استاندارد بين المللی شناخته می شود. بلوکهای ۴۶ بيتی دیتا توسط یک کليد تنها که معمولا ۶۵ بيت طولاز نظر محاسباتی ساده است و براحتی می تواند توسط پردازند ههای کند DES . دارد، رمزنگاری و رمزگشایی م ی شوند
(بخصوص آنهایی که در کارتهای هوشمند وجود دارند) انجام گيرد.این روش بستگی به مخف ی بودن کليد دارد . بنابراین برای استفاده در دو موقعيت مناسب است : هنگامی که کليدهامی توانند به یک روش قابل اعتماد و امن توزیع و ذخيره شوند یا جایی که کليد بين دو سيستم مبادله می شوند که
عموما برای DES قبلا هویت یکدیگر را تایيد کرد ه اند عمر کليدها بيشتر از مدت تراکنش طول نم ی کشد. رمزنگاری حفاظت دیتا از شنود در طول انتقال استفاده م یشود.
بيتی امروزه در عرض چندین ساعت توسط کامپيوترهای معمولی شکسته می شوند و بنابراین نباید DES کليدهای ۴٠ برای محافظت از اطلاعات مهم و با مدت طولانی اعتبار استفاده شود . کليد ۶۵ بيتی عموما توسط سخت افزار یا سه از استفاده با اصلی دیتای کدکردن از عبارتست تایی DES شبکه های بخصوصی شکسته م ی شوند. رمزنگاری که در سه مرتبه انجام م یگيرد. (دو مرتبه با استفاده از یک کليد به سمت جلو (رمزنگاری) و یک مرتبه DES الگوریتم به سمت عقب (رمزگشایی) با یک کليد دیگر) مطابق شکل زیر:
این عمل تاثير دوبرابر کردن طول مؤثر کليد را دارد؛ بعدا خواهيم دید که این یک عامل مهم در قدرت رمزکنندگی است.
برای زمانی مورد IDEA و Blowfish الگوریتمهای استاندارد جدیدتر مختلفی پيشنهاد شد ه اند. الگوریتمهایی مانند برای رقيبی بعنوان بنابراین نشدند افزاری سخت سازی پياده هيچکدام اما اند DES استفاده قرار گرفته در استفاده برای الگوریتم (AES) کاربردهای ميکروکنترلی مطرح نبود ه اند. پروژه استاندارد رمزنگاری پيشرفته دولتی ایالات متحده مشخصا برای Twofish بعنوان الگوریتم رمزنگاری اوليه انتخاب کرده است . الگوریتم DES را برای جایگزیتی Rijndael ياده سازی در پردازند ههای توان پایين مثلا در کارتهای هوشمند طراحی شد.
Fortezza و مبادله کليد را که در کارتهای Skipjack در ٨٩٩١ وزارت دفاع ایالات متحده تصميم گرفت که الگوریتمها استفاده شده بود، از محرمانگی خارج سازد . یکی از دلایل این امر تشویق برای پياد هسازی بيشتر کارتهای هوشمند برپایه این الگوریتمها بود.
که رمزنگاری دیتا در حين ارسال صورت م ی گيرد بجای اینکه دیتای ) (streaming encryption) برای رمزنگاری جریانی ۴از کليدها طول از ای سرعت بالا و دامنه فراهم بيت ۶۵٢ ات ٠ RC کدشده در یک فایل مجزا قرار گيرد ) الگوریتم 4 است، بصورت عادی برای رمزنگاری ارتباطات دوطرفه امن در اینترنت RSA که متعلق به امنيت دیتای RC می کند. 4 استفاده می شود.
 
سيستم‌هاي کليدي نا متقارن
 
سيستمهای کليد نامتقارن از کليد مختلفی برای رمزنگاری و رمزگشایی استفاده م ی کنند. بسياری از سيستمها private منتشر شود در حاليکه دیگری (کليد اختصاصی یا (public key اجازه می دهند که یک جزء (کليد عمومی یا توسط صاحبش حفظ شود . فرستنده پيام، متن را با کليد عمومی گيرنده کد می کند و گيرنده آن را با کليد (key اختصاصی خودش رمزنگاری ميکند . بعبارتی تنها با کليد اختصاصی گيرنده م ی توان متن کد شده را به متن اوليه صحيح تبدیل کرد . یعنی حتی فرستنده نيز اگرچه از محتوای اصلی پيام مطلع است اما نمی تواند از متن کدشده به متن اصلی دست یابد، بنابراین پيام کدشده برای هرگيرند ه ای بجز گيرنده مورد نظر فرستنده ب ی معنی خواهد بود .
و Rivest ، Shamir شناخته می شود (حروف اول پدیدآورندگان آن یعنی RSA معمولترین سيستم نامتقارن بعنوان است). اگرچه چندین طرح دیگر وجود دارند. می توان از یک سيستم نامتقارن برای نشاندادن اینکه فرستنده Adlemen شامل دو تبدیل RSA . پيام همان شخصی است که ادعا م ی کند استفاده کرد که این عمل اصطلاحا امضاء نام دارد است که هرکدام احتياج به بتوان رسانی ماجولار با توانهای خيلی طولانی دارد:
امضاء، متن اصلی را با استفاده از کليد اختصاصی رمز می کند؛
رمزگشایی عمليات مشابه ای روی متن رمزشده اما با استفاده از کليد عمومی است . برای
تایيد امضاء بررسی می کنيم که آیا این نتيجه با دیتای اوليه یکسان است؛ اگر اینگونه است،
امضاء توسط کليد اختصاصی متناظر رمزشده است.
به بيان ساده تر چنانچه متنی از شخصی برای دیگران منتشر شود، این متن شامل متن اصلی و همان متن اما رمز شده توسط کليد اختصاصی همان شخص است . حال اگر متن رمزشده توسط کليد عمومی آن شخص که شما از آن مطلعيد رمزگشایی شود، مطابقت متن حاصل و متن اصلی نشاندهنده صحت فرد فرستنده آن است، به این ترتيب امضای فرد تصدیق می شود. افرادی که از کليد اختصاصی این فرد اطلاع ندارند قادر به ایجاد متن رم ز شده نيستند بطوریکه با رمزگشایی توسط کليد عمومی این فرد به متن اوليه تبدیل شود.
X = Yk (mod r) : این فرمول است RSA اساس سيستم حاصلضرب دو عدد اوليه بزرگ است که با دقت انتخاب r کليد اختصاصی و k ، متن اصلی Y ، متن کد شده X که
شده اند. برای اطلاع از جزئيات بيشتر م ی توان به مراجعی که در این زمينه وجود دارد رجوع کرد . این شکل محاسبات روی پردازنده بنابراین، ت.اس کند بسيار شود می استفاده هوشمند کارتهای در که ه ابيتی ٨ روی بخصوص بایتی های هم تصدیق هویت و هم رمزنگاری را ممکن م ی سازد، در اصل برای تایيد هویت منبع پيام از این الگوریتم RSA اگرچه در کارتهای هوشمند استفاده م ی شود و برای نشاندادن عدم تغيير پيام در طول ارسال و رمزنگاری کليدهای آتی استفاده می شود. مانند شوند lElGama ،nHellma-eDiffi سایر سيستمهای کليد نامتقارن شامل سيستمهای لگاریتم گسسته می و
سایر طرحهای چندجمله ای و منحن ی های بيضوی . بسياری از این طرحها عملکردهای ی ک طرفه ای دارند که اجازه است که از یک توليدکننده مرکب برای RPK تایيدهویت را م ی دهند اما رمزنگاری ندارند . یک رقيب جدیدتر الگوریتم یک پروسه دو مرحل ه ای است : بعد از فاز RPK . تنظيم ترکيبی از کليدها با مشخصات مورد نياز استفاده م ی کند آماده سازی در رمزنگاری و رمزگشایی (برای یک طرح کليد عمومی ) رشته هایی از دیتا بطور استثنایی کاراست و می تواند براحتی در سخت افزارهای رایج پياد ه سازی شود . بنابراین بخوبی با رمزنگاری و تصدی ق هویت در ارتباطات سازگار است.
است که آنها برای RSA طولهای کليدها برای این طرحهای جایگزین بسيار کوتاهتر از کليدهای مورد استفاده در RS استفاده در چي پ کارتها مناسب تر است . اما است؛ مانده باقی الگوریتمها سایر ارزیابی برای محکی حضور و بقای نزدیک به س هدهه از این الگوریتم، تضمينی در برابر ضعفهای عمده بشمار م یرود.
 
کليد ها
در رمزنگاري
 
با روشن شدن اهميت وجود کليدها در امنيت داد ه ها، اکنون باید به انواع کليدهای موجود و مکان مناسب برای استفاده هر نوع کليد توجه کنيم.
4-1 (Secret keys)- ١- کليدهاي محرمانه
الگوریتمهای متقارن مانند DES از کليدهای محرمانه استفاده می کنند؛ کليد باید توسط دو طرف تراکنش منتقل و ذخيره شود. چون فرض بر این است که الگوریتم شناخته شده و معلوم است، این قضيه اهميت امن بودن انتقال و ذخيره کليد را مشخص می سازد. کارتهای هوشمند معمولا برای ذخيره کليدهای محرمانه استفاده می شوند. در این حالت تضمين اینکه قلمرو کليد محدود است، مهم است: باید هميشه فرض کنيم که یک کارت ممکن است ب ا .موفقيت توسط افراد غيرمجاز تحليل گردد، و به این ترتيب کل سيستم نباید در مخاطره قرار گيرد
4-2 (Public and private keys)   ٢- کليدهاي عمومي و اختصاصي
امتياز اصلی و مهم سيستمهای کليد نامتقارن این است که آنها اجازه می دهند که یک کليد (کليد اختصاصی) با امنيت بسيار بالا توسط توليد کننده آن نگهداری شود در حاليکه کليد دیگر (کليد عمومی )می تواند منتشر شود . کليدهای عمومی می توانند همراه پيامها فرستاده شوند یا در فهرستها ليست شوند (شروط و قوانينی برای کليدهای 50 . الکترونيکی رسانی X ITU عمومی در طرح فهرست پيام د.شون داده بعدی شخص به شخص یک از و ،(ددار وجود مکانيسم توزیع کليدهای عمومی م یتواند رسمی (یک مرکز توزیع کليد) یا غيررسمی باشد .
محرمانگی کليد اختصاصی در چنين سيستمی مهمترین مساله است؛ باید توسط ابزار منطقی و فيزیکی در کامپيوتری که ذخيره شده، محافظت گردد . کليدهای اختصاصی نباید هرگز بصورت رمزنشده در یک سيستم کامپيوتر معمولی یا بشکلی که توسط انسان قابل خواندن باشد، ذخيره شوند . در اینجا نيز کارت هوشمند برای ذخيره کليدهای اختصاصی یک فرد قابل استفاده است، اما کليدهای اختصاصی سازمانهای بزرگ معمولا نباید در یک کارت ذخيره شود.
4-3 (Master keys and derived keys) ٣- کليدهاي اصلي و کليدهاي مشتق شد
یک روش کاستن از تعداد کليدهایی که باید منتقل و ذخيره شوند، مشتق گرفتن از آنهاست هر زمانی که استفاده می شوند. در یک برنامه اشتقاق کليد، یک کليد اصلی همراه با چند پارامتر مجزا برای محاسبه کليد مشت ق شده استفاده می شود که بعدا برای رمزنگاری استفاده م ی گردد. برای مثال، اگر یک صادرکننده با تعداد زیادی کارت سروکار دارد، می تواند برای هر کارت، با استفاده از کليد اصلی، شماره کارت را رمز کند و به این ترتيب کليد مشتق شده حاصل می شود و به آن کارت اختصاص داده م یشود .
ها که محاسبه گرهای الکترونيکی با عملکردهای بخصوص token شکل دیگری از کليدهای مشتق شده با استفاده از وارد PIN هستند، محاسبه م ی شوند. آنها ممکن است بعنوان ورودی از یک مقدار گرفته شده از سيستم مرکزی، یک هایی token شامل الگوریتم و یک کليد اصلی است. چنينی token شده توسط کاربر و تاریخ و زمان استفاده کنند .خود اغلب برای دسترسی به سيستمهای کامپيوتری امن استفاده م یشوند.
4-4 (Key-encrypting keys) ۴- کليدهاي رمزکننده کليد
از آنجا که ارسال کليد یک نقطه ضعف از نظر امنيتی در یک سيستم بشمار م ی رود، رمزکردن کليدها هنگام ارسال و ذخيره آنها بشکل رمزشده منطقی بنظر م ی رسد. کليدهای رمزکننده کليد هرگز به خارج از یک سيستم کامپيوتری (یا کارت هوشمند ) ارسال نمی شوند و بنابراین می توانند آسانتر محافظت شوند تا آنهایی که ارسال م یشوند. اغلب الگوریتم متفاوتی برای تبادل کليدها از آنچه که برای رمزکردن پيامها استفاده م یشود، مورد استفاده قرار م یگيرد.
برای محدود کردن ميدان کليدها و محافظت کردن کليدها در دامنه شان استفاده (key domain) از مفهوم دامنه کليد می کنيم. معمولا یک دامنه، یک سيستم کامپيوتری خواهد بود که م یتواند بصورت فيزیکی و منطقی محافظت گردد.
کليدهای استفاده شده در یک دامنه توسط یک کليد رمزکننده کليد محلی ذخيره می شوند.هنگامی که کليدها می خواهند به یک سيستم کامپيوتری دیگر فرستاده شوند، رمزگشایی و تحت یک کليد جدید رمز م ی شوند که اغلب شناخته می شوند. با دریافت این کليدها در طرف دیگر، تحت کليد محلی (zone control key) بعنوان کليد کنترل ناحيه سيستم جدید رمز می شوند. بنابراین کليدهایی که در دامن ه های یک ناحيه قرار دارند از دامن ه ای به دامنه دیگر بصورتی که بيان گردید منتقل م یشوند.
4-5 (Session keys) ۵- کليدهاي نشست
برای محدودکردن مدت زمانی که کليدها معتبر هستند، اغلب یک کليد جدید برای هر نشست یا هر تراکنش توليد می شود. این کليد ممکن است یک عدد تصادفی توليد شده توسط ترمينالی باشد که در مرحله تصدیق کارت قرار دارد باشد . اگر کارت قادر به رمزگشایی روش کليد عمومی باشد، یعنی کليد نشست م ی تواند با استفاده از کليد عمومی کارت رمز شود .
بخشی از تراکنش که در آن کليد منتقل می شود اغلب در مقایسه با بقيه تراکنش کوتاهتر است؛ بنابراین بار اضافی این بخش نسبت به کل تراکنش قابل صرفنظر است . چنانچه بقيه تراکنش بسبب استفاده از کليد متقارن با بالاسری کمتری رمز شود، زمان پردازش برای فاز تایيد هویت و انتقال کليد قابل پذیرش است . (توضيح اینکه روشهای رمز متقارن از نامتقارن بمراتب سریعتر هستند بنابراین م ی توان ابتدا یک کليد متقارن را با استفاده از روش نامتقارن انتقال داد و سپس از آن کليد متقارن برای انجام بقيه تراکنش استفاده کرد.) شکل خاصی از کليد نشست، سيستم انتقال کليد است که در برخی سيستمهای پرداخت الکترونيک و مبادله  دیتای الکترونيک استفاده م ی شود. بدین صورت که در پایان هر تراکنش، یک کليد جدید منتقل م ی شود و این کليد برای تراکنش بعدی مورد استفاده قرار م یگيرد.
 
شکستن کليدهاي رمزنگاري
 
5-1  چه طول کليدي در رمزنگاري مناسب است؟
امنيت هر الگوریتم مستقيماً به پيچيده بودن اصولی مربوط است که الگوریتم بر اساس آن بنا شده است. امنيت رمزنگاری بر اساس پنهان ماندن کليد است نه الگوریتم مورد استفاده. در حقيقت، با فرض اینکه که الگوریتم از قدرت کافی برخوردار است (یعنی که ضعف شناخت ه شده ای که بتوان برای نفوذ به الگوریتم استفاده کرد، وجود نداشته باشد) تنها روش درک متن اصلی برای یک استراق سمع کننده، کشف کليد است.
در بيشتر انواع حمله، حمل ه کننده تمام کليدهای ممکن را توليد و روی متن رمزشده اعمال م یکند تا در نهایت یکی از آنها نتيجه درستی دهد . تمام الگوریتمهای رمزنگاری در برابر این نوع حمله آسي ب پذیر هستند، اما با استفاده از کليدهای طولانی تر، می توان کار را برای حمل ه کننده مشک ل تر کرد . هزینه امتحان کردن تمام کليدهای ممکن با تعداد بيتهای استفاده شده در کليد بصورت نمایی اضافه می شود، و این در حاليست که انجام عمليات رمزنگاری و رمزگشایی بسيار کمتر افزایش می یابد.
5-2    الگوريتمهاي متقارن
که یک الگوریتم کليد متقارن است معمولا از کليدهای ۶۴ بيتی برای رمزنگاری و رمزگشایی استفاده می کند. DES الگوریتم متن اوليه را به بلوکهای ۴۶ بيتی م یشکند و آنها را یک ییکی رمز م یکند.
سه بار اعمال می شود (در مقاله رمزنگاری به آن اشاره شده DES ٣ الگوریتم پيشرفته تر است و در آن الگوریتم DES است). نسخه دیگری از این الگوریتم (پایدار تر از قبليها) از کليدهای ۵۶ بيتی و با فضای کليد موثر ١۶٨ بيت استفاده می کند و سه بار عمليات رمزنگاری را انجام م یدهد.
را نشان ميدهد. DES جدول زیر زمان لازم برای یافتن کليد در الگوریتم
تعداد کليدهای ممکن
زمان مورد نياز برای ١
رمزگشایی در هر ميلی ثانيه
زمان مورد نياز برای
١،٠٠٠،٠٠٠ رمزگشایی در هر
ميلی ثانيه
٢ ميلی ثانيه / ٨دقيقه = ٢٣١ ميلی ثانيه ١۵ /٣۵ ٢٣٢= ۴/٣× ت ١٠٩
١١۴٢ سال = ٢۵۵ ميلی ثانیه ١٠ ساعت ٢۵۶= ٧/٢× ت ١٠١۶
۵ سال /۴× ۵ سال = ٢١٢٧ ميلی ثانيه ١٠١٨ /۴×١٠٢۴ ٢١٢٨= ٣/۴× ت ١٠٣٨
۵ سال /٩× ۵ سال = ٢١۶٧ ميلی ثانيه ١٠٣٠ /٩×١٠٣۶ ٢١۶٨= ٣/٧× ت ١٠۵٠

ستون سوم مربوط به کامپيوترهایی است که می توانند در هر ميلی ثانيه یک رمزگشایی را انجام دهند که برای کامپيوترهای امروزی توان محاسباتی معقولی محسوب می شود. ستون آخر برای سيستمهای بسيار بزرگ محاسباتی است بطوریکه قدرت پردازش یک ميليون برابر زیاد شده باشد .
بدون در نظر گرفتن طول کليد، الگوریتمهای متقارن قوی نيز نمی توانند امنيت الگوریتمهای نامتقارن را داشته باشند، زیرا کليد باید بين دو طرف ارتباط مبادله شود.
5-3    الگوريتمهاي نامتقارن
عموماً سيستمی امن محسوب م ی شود که هزینه شکستن آن بيشتر از ارزش دیتایی باشد که نگهداری م ی کند.
اما در ذهن داشته باشيد که با افزایش قدرت محاسباتی، سيستمهای رمزنگاری، آسانتر توسط روشهای سعی و خطا مورد حمله قرار خواهند گرفت.
تخمين زده می شود که یک کليد ۵١٢ بيتی می تواند با هزینه ای کمتر از ،RSA برای مثال، طبق گزارشی از سایت توصيه ميکند که کليدهای ۵١٢ بيتی در حال حاضر RSA . شالت کی و رالد نویلیم ٨١ ماهه شکسته شود امنيت کافی ایجاد نمی کنند و باید بنفع کليدهای ٧۶٨ بيتی برای استفاده های شخصی کنار بروند ! به همين ترتيب برای استفاده شرکتها کليدهای ١٠٢۴ بيتی و از ٢٠۴٨ بيت برای کليدهای فوق العاده ارزشمند استفاده شود . البته پيش بينی شده است که این مقادیر تا حداقل سال ٢٠٠۴ معتبر خواهد بود. با پيشرفتهای موجود احتمالا در این زمان نياز به افزودن بر طول کليد ها خواهد بود.

توضيحاتي در مورد الگوريتمMD5
 
6- 1-خلاصه:
آشنا می شویم. این الگوریتم یک رشته با طول متفاوت را به عنوان "MD در این مقاله با الگوریتم "خلاصه پيام 5 یا "اثر انگشت" با طول ١٢٨ بيت می سازد. "MD ورودی می گيرد و یک "خلاصه پيام 5
در این روش اینکه دو پيام مختلف دارای یک "خلاصه پيام" باشند یا اینکه یک رشته از روی یک "خلاصه پيام" ساخته شود غير ممکن می باشد. این الگوریتم برای امضاهای دیجيتال مناسب است، جایی که احتياج به خلاصه کردن یک فایل بزرگ در یک رشتهء امن و فشرده، قبل از کد کردن آن متن، در سيستم های کدینگ، با کليد های خصوصی و  (RSA (Rivest Shamir Adelman عمومی آن سيستم مانند
برای داشتن سرعت بالا در ماشين های ٣٢ بيتی طراحی شده است در عين حال احتياجی به MD الگوریتم 5 جانشينی ها در جداول بزرگ ندارد. این الگوریتم را با کدهای بسيار کمی می توان نوشت.
عمل می کند اما در MD کمی کندتر از 4 MD می باشد با این تفاوت که 5 MD توسعه ای از الگوریتم 4 MD الگوریتم 5 طراحی آن بسيار محافظه کارانه عمل شده است.
به عنوان سرعت بالایی که داشت پذیرفته شده و از امنيت بالایی MD به این دليل طراحی شد که حس کردند 4 MD5 طول کليد نفوذگران بالقوه
٢۵۶ بيتی افراد عادی
٣٨۴ بيتی گروههای تحقيق دانشگاهی و شرکتها
۵١٢ بيتی گروههای دولتی با تمام امکانات
٧۶٨ بيتی امن برای کوتاه مدت
١٠٢۴ بيتی امن تا آینده نزدیک
٢٠۴٨ امن احتمالا تا چند ده سال!
به عنوان سرعت بالایی که داشت پذیرفته شده و از امنيت بالایی MD به این دليل طراحی شد که حس کردند 4 MD5 برای سرعت بالا طراحی شده ولی احتمال شکست آن در رمز کردنی MD در شرایط بحرانی برخوردار نمی باشد. 4
کمی در سرعت کند شده با این تفاوت که بيشترین امنيت را داراست. این الگوریتم حاصل MD موفق وجود دارد. 5
به همراه مقادیری تغيير در ساختار الگوریتم برای افزایش سرعت و MD تاثير دادن نظرات تعدادی از استفاده کنندگان 4 در این مکان عومی قرارگرفته تا از آن استفاده و در صورت امکان استاندارد شود. MD قدرت آن می باشد. الگوریتم 5
6-2- شرايط و نکات لازم:
تعداد ٨ بيت داده می باشد. یک صف از بيت ها دارای خصوصيات « بایت » تعداد ٣٢ بيت و « کلمه » در این متن منظور از طبيعی یک صف از بایتها می باشند که هر گروه هشت تایی متوالی از بيتها یک بایت را تشکيل می دهند که پرارزش ترین بيت در ابتدا قرار دارد. یک صف از بایت ها دقيقا مشابه یک صف ٣٢ بيتی از کلمات پردازش می شود. جایی که  گروهی ۴ تایی از توالی بایتها پردازش می شوند، کم ارزش ترین بایت اولين بایت می باشد.
استفاده کنيم و اگر مقدار اندیس یک عبارت محاسباتی بود آن را در {} ( i اندیس xi (x بجای x_i اجازه بدهيد از i به توان x یعنی x^i همچنين از ^ به عنوان علامت توان استفاده می کنيم، پس . x_{i- محدود می کنيم، مانند: { 1
.
به عنوان عملگر چرخش بيتی x<<< برای اضافه کردن دو کلمه به هم استفاده کنيم. از 5 «+» اجازه بدهيد از علامت به اندازه 5 بيت به چپ چرخش می کند. x در کلمات استفاده می شود که
exclusive به عنوان عملگر X xor Y و از (or) به عنوان عملگر فصل X v Y به عنوان عملگر نقيض بيتی، از not (x) از استفاده می کنيم. (and) به عنوان عملگر عطف XY و از or
6-  ٣-- توضيحات الگوريتم   MD5
در اینجا یک عدد نا b . بيت پيام به عنوان ورودی داریم و تصميم داریم خلاصه پيام آن را بدست آوریم b فرض کنيد ما می تواند مقدار صفر داشته باشد و هيچ محدودیتی برای مضرب هشت بودن آن نيست و به b ، منفی و صحيح است هر اندازه می تواند بزرگ باشد. فرض کنيد بيت های این پيام را بشود به صورت زیر نوشت:
m_0 m_1 ... m_{b-1}
برای آوردن خلاصه پيام ۵ مرحله زیر را انجام می دهيم:
6- 4-گام ١- اضافه کردن بيتهاي نرم کننده:
طول پيام مورد نظر به ۴۴٨ به پيمانه ۵١٢ توسعه پيدا می کند به این معنی که اگر به طول پيام ۶۴ بيت اضافه شود، طولش مضربی از ۵١٢ خواهد بود. عمل توسعه دادن هميشه اجرا می شود مگر اینکه طول پيام به صورت ۴۴٨ به پيمانه ۵١٢ باشد.
عمل توسعه پيام یا نرم کردن آن به صورت زیر انجام می شود:
یک بيت [ 1] سپس تعدادی بيت [ 0] به پيام اضافه می شود.اضافه شدن بيت های 0 تا زمانی که طول رشته به ۴۴٨ بر پایه ۵١٢ برسد، ادامه پيدا می کند. در این عمل حداقل یک بيت و حداکثر ۵١٢ بيت اضافه خواهد شد.
6-5 -گام ٢- افزايش طول:
بزرگتر از ۶۴ بيت b ، بيت پيام اوليه به آخر نتيجه گام قبل اضافه می شود. در بدترین حالت b یک نمایش ۶۴ بيتی از استفاده خواهد شد. b خواهد بود. در این حالت فقط ۶۴ بيت کم ارزش
اک ط ل ا آ ق ا ا ل ا ا ا ا ک گ ا ا ط ل ا ل

هم اکنون طول پيام بدست آمده دقيقا معادل مضربی از ۵١٢ خواهد بود. مشابه اینکه بگویيم، این پيام طولی معادل مضربی از ١۶ می N) . را نمایانگر کلمات پيام بدست آمده بدانيم M[0…N- مضربی از ١۶ کلمه دارد اجازه بدهيد [ 1
باشد.)

6-6 - گام ٣- يين بافر براي  MD5
یک ثبات ٣٢ D وA، B، C استفاده می شود. هر کدام از (A,B,C,D) برای محاسبه خلاصه پيام یک بافر ۴ کلمه ای بيتی می باشند. این ثبات ها مطابق جدول زیر مقدار دهی می شوند ( بایتهای کم ارزش در ابتدا قرار دارند )
word A: 01 23 45 67
word B: 89 ab cd ef
word C: fe dc ba 98
word D: 76 54 32 10
6-7- گام ۴- پردازش پيام در بلاک هاي ١۶ کلمه اي:
در ابتدا ۴ تابع کمکی تعریف می کنيم که هر کدام به عنوان ورودی سه کلمهء ٣٢ بيتی می گيرد و برای خروجی یک
کلمهء ٣٢ بيتی توليد می کند.
F(X,Y,Z) = XY v not(X) Z
G(X,Y,Z) = XZ v Y not(Z)
H(X,Y,Z) = X xor Y xor Z
I(X,Y,Z) = Y xor (X v not(Z))
می توانست طوری F تابع .Z در غير این صورت Y آنگاه X به عنوان شرط عمل می کند: اگر F ، در هر موقعيت بيتی هرگز یک هایی در موقعيت بيتی یکسان not(X) و XY از + استفاده کند چون v تعریف شود که به جای استفاده از مستقل و غير مرتبط باشند، ر بيت از Z و X، Y نخواهد داشت. جالب است به یاد داشته باشيد که اگر بيت های مستقل و غير مرتبط خواهد بود. F(X, Y, Z)
هستند، به طوری که آنها در "توازی بيتی" کار می کنند تا خروجی شان را از بيت های F شبيه تابع I و G، H توابع G(X, مستقل و غير مرتبط باشند، آنگاه هر بيت از Z و X، Y توليد کنند. در چنين روشی اگر بيت های متناظر Z و X، Y مستقل و غير مرتبط خواهند بود. I(X, Y, Z) و Y, Z)، H(X, Y, Z)
یا توازن بيتی از ورودی هایش است. این گام از یک جدول ۶۴ عنصری XOR تابع ،H توجه داشته باشيد که تابع امين عنصر جدول را مشخص می -T[i]، I ساخته شده از یک تابع مثلثاتی، استفاده می کند. اجازه دهيد T[1…64] به رادیان باشد. I به طوری که ،abs(sin(i)) کند که برابر است با قسمت صحيح حاصلضرب ۴٢٩۴٩۶٧٢٩۶ در
کارهای زیر را انجام می دهيد:
/* Process each 16-word block. */
For i = 0 to N/16-1 do

/* Copy block i into X. */
For j = 0 to 15 do
Set X[j] to M[i*16+j].
end /* of loop on j */
/* Save A as AA, B as BB, C as CC, and D as DD. */
AA = A
BB = B
CC = C
DD = D
/* Round 1. */
/* Let [abcd k s i] denote the operation
a = b + ((a + F(b,c,d) + X[k] + T[i]) <<< s). */
/* Do the following 16 operations. */
[ABCD 0 7 1] [DABC 1 12 2] [CDAB 2 17 3] [BCDA 3 22 4]
[ABCD 4 7 5] [DABC 5 12 6] [CDAB 6 17 7] [BCDA 7 22 8]
[ABCD 8 7 9] [DABC 9 12 10] [CDAB 10 17 11] [BCDA 11 22 12]
[ABCD 12 7 13] [DABC 13 12 14] [CDAB 14 17 15] [BCDA 15 22 16]
/* Round 2. */
/* Let [abcd k s i] denote the operation
a = b + ((a + G(b,c,d) + X[k] + T[i]) <<< s). */
/* Do the following 16 operations. */
[ABCD 1 5 17] [DABC 6 9 18] [CDAB 11 14 19] [BCDA 0 20 20]
[ABCD 5 5 21] [DABC 10 9 22] [CDAB 15 14 23] [BCDA 4 20 24]
[ABCD 9 5 25] [DABC 14 9 26] [CDAB 3 14 27] [BCDA 8 20 28]
[ABCD 13 5 29] [DABC 2 9 30] [CDAB 7 14 31] [BCDA 12 20 32]
/* Round 3. */
/* Let [abcd k s t] denote the operation
a = b + ((a + H(b,c,d) + X[k] + T[i]) <<< s). */
/* Do the following 16 operations. */
[ABCD 5 4 33] [DABC 8 11 34] [CDAB 11 16 35] [BCDA 14 23 36]
[ABCD 1 4 37] [DABC 4 11 38] [CDAB 7 16 39] [BCDA 10 23 40]
[ABCD 13 4 41] [DABC 0 11 42] [CDAB 3 16 43] [BCDA 6 23 44]
[ABCD 9 4 45] [DABC 12 11 46] [CDAB 15 16 47] [BCDA 2 23 48]
/* Round 4. */
/* Let [abcd k s t] denote the operation
a = b + ((a + I(b,c,d) + X[k] + T[i]) <<< s). */
/* Do the following 16 operations. */
[ABCD 0 6 49] [DABC 7 10 50] [CDAB 14 15 51] [BCDA 5 21 52]
[ABCD 12 6 53] [DABC 3 10 54] [CDAB 10 15 55] [BCDA 1 21 56]
[ABCD 8 6 57] [DABC 15 10 58] [CDAB 6 15 59] [BCDA 13 21 60]
[ABCD 4 6 61] [DABC 11 10 62] [CDAB 2 15 63] [BCDA 9 21 64]
/* Then perform the following additions. (That is increment each
of the four registers by the value it had before this block
was started.) */
A = A + AA
B = B + BB
C = C + CC
D = D + DD
end /* of loop on i */

6-8- گام ۵-  خروجي
A که ما با کم ارزش ترین بيت ،D و A، B، C خلاصه پيامی که به عنوان خروجی توليد می شود و عبارت است از
را کامل می کند. MD خاتمه می دهيم. این تعریف 5 D شروع می کنيم و به با ارزش ترین بيت
نتيجه:
به سادگی قابل اجرا می باشد و یک "اثر انگشت" یا "خلاصه پيام" از پيام با طول اختياری MD الگوریتم خلاصه پيام 5
٢ و ^ توليد می کند. گمان برده می شود که امکان مواجه شدن با دو پيام که خلاصه پيام مشابهی دارند از رتبهء ۶۴
٢ می باشد. ^ برای هر پيامی که به آن یک خلاصه پيام داده شده است از رتبهء ١٢٨
برای نقاط ضعف به دقت بررسی شده است. به هر حال این الگوریتم نسبتا جدید است و تحليل MD الگوریتم 5
امنيتی بيشتری را طلب می کند، مشابه طرح های مشابه در این رده.
 انتشار این مقاله
به هر تعداد آزاد می باشد.
برای توضيحات و Don Coppersmith, Burt Kaliski, Ralph Merkle, David Chaum, and Noam Nisan
.
- رمزنگاری
- کليدها در رمزنگاری
- شکستن کليدهای رمزنگاری
MD - توضيحاتی در مورد الگوریتم 5
مترجم:اميد متقی راد
 


منابع :


http://rayan.net/html/index.php?module=htmlpages&func=display&pid=11


http://www.parsvps.com[2]-

http://www.academist.ir/?p=243

http://www.shabakeh-mag.com/Articles/ShowPrinterFriendly.aspx?n=1001411[4]-

http://www.rayaneh.com/index.aspx[5]-

http://www.p30world.com[6]-

http://www.ircert.com[7]-

 

دانلود پایان نامه,خرید پایان نامه,فروش پایان نامه,پایان نامه,آرشیو پایان نامه,پایان نامه عمران,پایان نامه روانشناسی,

پایان نامه حقوق,پایان نامه اقتصاد,پایان نامه برق,پایان نامه معدن, پایان نامه کارشناسی ,پایان نامه صنایع,پایان نامه علوم سیاسی ، پایان نامه کاردانی

طراحی سایت : سایت سازان