رمز گذاری و رمزگشایی و امنیت داده ها

رمز گذاری و رمزگشایی و

قیمت :   ۸۵۰۰ تومان ( هشت هزار و پانصد تومان )

تعداد صفحات:

۸۲  ( هشتاد و دو )

دسته :

کامپیوتر و IT

نوع فایل:

Word

توضیحات:

مناسب جهت پروژه پایانی

فهرست مطالب :

مقدمه

شروع و توسعه رمزنگاری

فصل اول – امنیت داده ها

زنجیره اختیارات

کنترل دسترسی

امنیت داده های در کامپیوترهای قابل حمل

عملیات لازم به منظور امنیت داده ها

 

فصل دوم – و رمزگشایی

طراحی الگوریتمهای رمزنگاری

سیستمهای کلید نامتقارن

رمزنگاری کلید عمومی و

اشکال سیستمهای کلید مخفی

سناریو ارتباط

رمزنگاری کلید خصوصی

پرهیز از حمله پل زدن به سطح

منتشر کردن کلید عمومی

الگوریتم های کلید عمومی

توابع درب تله ای یا یک طرفه

تقابل PK وSK

حساب پیمانه ای

خواص همنهشتی

تمام فرمولهای استفاده شده در RSA

تحلیل امنیت RSA

عیب های RSA

امضای دیجیتالی با RSA

موارد استفاده فعلی RSA

رمز گذاری داده ها

RSA مدرکی برای متخصصان امنیت

 

فصل سوم – کارهایی که در زمینه رمزنگاری انجام شده

رمزنگاری جانشینی

رمزنگاری کوانتومی

دو اصل اساسی در رمزنگاری

رمزنگاری با کلید متقارن

رمزنگاری با کلید نامتقارن یا عمومی

روش کار الگویتم PSA

شکستن الگوریتم RSA

 

فصل چهارم – کارهایی که در آینده در این زمینه انجام شود

چشم انداز رمزنگاری

زیبایی رمزنگاری

دیگر الگوریتم ها

خطر کوانتومی

دیگر فناوری کوانتومی

مشکل رمزگشایی

نتیجه گیری

منابع و ماخذ

 

 

چکیده :

رمزنگاری علم کدها و رمزهاست. یک هنر قدیمی است و برای قرنها بمنظور محافظت از پیغامهایی که بین فرماندهان، جاسوسان،‌ عشاق و دیگران ردوبدل می‌شده، استفاده شده است تا پیغامهای آنها محرمانه بماند. هنگامی که با امنیت دیتا سروکار داریم، نیاز به اثبات هویت فرستنده و گیرنده پیغام داریم و در ضمن باید از عدم تغییر محتوای پیغام مطمئن شویم. این سه موضوع یعنی محرمانگی، تصدیق هویت و جامعیت در قلب امنیت ارتباطات دیتای مدرن قرار دارند و می‌توانند از رمزنگاری استفاده کنند.اغلب این مساله باید تضمین شود که یک پیغام فقط میتواند توسط کسانی خوانده شود که پیغام برای آنها ارسال شده است و دیگران این اجازه را ندارند. روشی که تامین کننده این مساله باشد “رمزنگاری” نام دارد.
رمزنگاری هنر نوشتن بصورت رمز است بطوریکه هیچکس بغیر از دریافت کننده موردنظر نتواند محتوای پیغام را بخواند. رمزنگاری مخفف‌ها و اصطلاحات مخصوص به خود را دارد. برای درک عمیق‌تر به مقداری از دانش ریاضیات نیاز است. برای محافظت از دیتای اصلی ( که بعنوان plaintext شناخته می‌شود)، آنرا با استفاده از یک کلید (رشته‌ای محدود از بیتها) بصورت رمز در می‌آوریم تا کسی که دیتای حاصله را می‌خواند قادر به درک آن نباشد. دیتای رمزشده (که بعنوان ciphertext شناخته می‌شود) بصورت یک سری بی‌معنی از بیتها بدون داشتن رابطه مشخصی با دیتای اصلی بنظر می‌رسد. برای حصول متن اولیه دریافت‌کننده آنرا رمزگشایی می‌کند.

کلمات کلیدی : رمزگذاری-گشایش رمز-امنیت داده ها- Encrypt – Decrypt – اصول رمزنگاری

 

مقدمه :

هر کدام از ما وقتی به دنیای ماموران مخفی و جاسوسان فکر می کنیم چیز های زیادی به ذهنمان می رسد: سفرهای خارجی، ماموریت های خطرناک، اسلحه های عجیب و ماشین های سریع. کمتر کسی در کنار این چیزها به ریاضیات فکر می کند. اما باید بدانیم ریاضیات در فهمیدن پیامهای سری و شکستن رمزها نقش اساسی بازی می کند و در طول تاریخ ریاضیدان ها نتیجه نبردهای فراوانی را با شکستن رمزها تغییر داده اند.

نمیدانم فیلم “ذهن زیبا” را دیده اید یا نه؟ این فیلم که زندگی واقعی یک ریاضیدان به نام جان نش را به تصویر می کشد .

این ریاضیدان ابتدا برای شکستن کدها ی سری به استخدام سازمان سیا در می آید . ولی پس از مدتی به بیماری شیزوفرنی دچار میشود. ولی پس از مدتها بیماری دوباره به صحنه علم برمیگردد و جایزه نوبل اقتصاد را دریافت میکند.

همین چند خط در مورد این ریاضیدان کاربردهای وسیع این علم در علوم مختلف از جمله در زمینه کشف کدها و رمزها آشکار میکند.

امروزه در کشور ما نیز دوره دکترای رمزنگاری که از شاخه های رشته ریاضی کاربردی میباشد برگزار میشود.

شروع و توسعه رمزنگاری

اولین بار سزار امپراتور رم باستان برای آنکه بتواند بدون اطلاع دشمن با ا ارتشش در سراسر دنیا در ارتباط باشد نوعی رمز را بکار گرفت. این رمز به این شکل بود که برای فرستادن یک پیام جای هر حرف را با سومین حرف بعد از آن در الفبا عوض می کردند، مثلا به جای ‘A’ حرف ‘D’ و به جای ‘X’ حرف ‘A’ را می گذاشتند.

بنابراین برای از کد خارج کردن پیام ها کافی بود دریافت کننده جای هر حرف را با سومین حرف بعد از آن در الفبا عوض کند. مثلا سعی کنید این پیغام سزاری را از رمز خارج کنید:

hqhpb dssurdfklqj
wkluwb ghdg
uhwuhdw wr iruhvw

خب، ممکن است بپرسید چه ریاضیاتی در کار است. ریاضی وقتی وارد ماجرا می شود که به هر حرف یک عدد نسبت دهیم. در این صورت فرایند کد کردن مثل اضافه کردن عدد ۳ به عدد اولیه خواهد بود

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
۰ ۱ ۲ ۳ ۴ ۵ ۶ ۷ ۸ ۹ ۱۰ ۱۱ ۱۲ ۱۳ ۱۴ ۱۵ ۱۶ ۱۷ ۱۸ ۱۹ ۲۰ ۲۱ ۲۲ ۲۳ ۲۴ ۲۵

مثلا برای به رمز درآوردن ‘A’ : داریم ۰+۳=۳

برای اینکه در مورد حرف های نزدیک به پایان الفبا دچار مشکل نشویم بهتر است به جای جمع معمولی از جمع به پیمانه ۲۶ استفاده کنیم، یعنی به جای هر عدد از باقیمانده تقسیم آن عدد بر ۲۶ استفاده کنیم.

مثلا برای ‘X’ داریم: (به پیمانه ۲۶) ۲۳+۳=۲۶=۰

مثلا برای ‘Y’ داریم: (به پیمانه ۲۶) ۲۴+۳=۲۷=۱

مثلا برای ‘T’ داریم: (به پیمانه ۲۶(۱۹+۳=۲۱=۲۱
برای از رمز درآوردن هم می توانیم از تفریق به پیمانه ۲۶ استفاده کنیم. واضح است که می توانیم به جای انتقال ۳ تایی از هر انتقالی بین ۱ و ۲۵ استفاده کنیم، اما همانطور که احتمالا حدس زده اید شکستن این رمز خیلی ساده است یعنی یک جاسوس می تواند با امتحان کردن همه ۲۵ انتقال ممکن به سرعت رمز را بشکند.

با روشی که توضیح دادیم این نوشته را از رمز در آورید: RFYM KTW FQQ
حالا به سراغ یک روش پیچیده تر می رویم. فرض کنید به ازای هر حرف الفبا یک علامت جایگزین کنیم، مثلا ‘*’ به جای ‘A’ و ‘+’ به جای ‘B’. مثل رمزی که ماری ملکه اسکاتلند برای مکاتباتش بر علیه الیزابت اول ملکه انگلیس بکار می گرفت .

تا مدت ها مردم فکر می کردند شکستن این رمز ناممکن است تا اینکه سرو کله آمار ریاضی پیدا شد .

این اطلاعات از شمارش حروف مختلف در حجم زیادی از نوشته ها مثل کتاب ها و روزنامه ها بدست آمده است. این نمودار مثلا نشان می دهد به طور میانگین ۱۳٫۵ درصد از حروف بکار رفته در متن های انگلیسی E هستند، که فراوان ترین حرف الفبا است. بنابراین وقتی رمزی از نوع بالا داریم احتمالا علامتی که بیش از همه تکرار می شود علامت متناظر E است و فراوانترین علامت بعد از آن متناظر ‘T’ است. سرنخ های دیگری هم وجود دارد مثلا تنها دو کلمه یک حرفی در انگلیسی وجود دارد: ‘I’ و ‘A’ و همچنین ‘AND’ و ‘THE’ کلمات خیلی معمولی هستند با کمک این سرنخ ها و کمی آزمایش و خطا میتوان اینگونه رمزها را شکست.همین روش باعث شد که ماری سرش را از دست بدهد.

 

امنیت داده ها

در گذشته فقط در صورتی که اطلاعات با ارزشی داشتید باید از امنیت کامپیوترها مطلع می‌شدید اما امروزه اگر چیزی از امنیت ندانید در این صورت به زودی کامپیوتر شما هک خواهد شد.

امنیت در حقیقت آنتی‌تز راحتی است هر چه سیستمی امن‌تر باشد کار کردن با آن سخت‌تر است و هر چه سیستمی راحت‌تر باشد امنیت آن ضعیف‌تر خواهد بود.

تعدادی از دلایل اینکه کامپیوترها هک می شوند و امنیت آنها کم است به قرار زیر می‌باشد:

افزایش امنیت باعث عدم راحتی کاربران می‌شود. خیلی مدیران شبکه امنیت سیستم‌ها را زیاد بالا نمی‌برند چون اینکار باعث سخت‌تر شدن عملکرد کاربران می‌شود. این حقیقت که امنیت قوی یک مزاحم است و مستلزم آنست که کاربران دست‌اندرکار سیستم‌ها آموزش‌های بیشتری ببینند یکی دلایل عمده خرابی‌های امنیتی است.

قابلیت‌های نرم‌افزاری با عجله و بدون مطالعه دقیق به بازار عرضه می‌شوند. مثلا مایکروسافت بدون توجه به هشدارهای کارشناسان و بدون توجه به مشکلات امنیتی احتمالی در حالی که واقعا نیازی نبود در Outlook و Outlook Express قابلیت اجرای اسکریپت‌ها را اضافه کرد.

مدت زمان که تولیدکنندگان نرم‌افزار صرف بهبود محصول خود می‌کنند آنها را از سایر رقبا دور نگه می‌دارد.

نرم‌افزارها و کامپیوترها خیلی سریع تکامل پیدا می نمایند.

برنامه‌نویسان نمی‌توانند خیلی دقیق همه رخنه‌ها را تشخیص دهند.

تفرق بسیار کمی در صنعت نرم‌افزار وجود دارد. همه چیز به سیستم عالم ویندوز و یونیکس برمی‌گردد.

تولیدکنندگان انگیزه‌ای برای اعلام رخنه‌های بالقوه موجود در محصولاتشان ندارند.

پچ‌ها یا به صورت وسیع به کار گرفته نمی‌شوند و یا اینکه وقتی هم نصب می‌شوند خودشان اشکالات جدید ایجاد می‌کنند.

همه امنیت کامپیوتری بر اساس این اعتماد که فرد نصب کننده آنها قابل اطمینان است کار می‌کنند همانطور که هر بچه‌ای به طور ذاتی به والدینش اعتماد می‌کند. این موضوع در بادی امر به نظر پیش پا افتاده می‌آید اما در حقیقت یکی از مشکلات اصلی از همینجا شروع می‌شود.

تعیین هویت

تعیین هویت فرایندی است که بر اساس آن هویت یک فرد احراز می شود. برای احراز هویت از ابزارهای مختلفی استفاده می شود مثل کلمات عبور، بیومتری، پین کد، یا کارت های هوشمند. در حقیقت شاید کلمه عبور یکی از ضعیف ترین روش ها برای احراز هویت باشد اما از آنجایی که پیاده سازی آن بسیار آسان است و نیاز به هیچ سخت افزار بخصوصی ندارد یکی از آسان ترین راه ها و کارآمدترین روش ها تاکنون محسوب می شود. اما ایراد آنها این است که به سادگی قابل حدس زدن هستند و حتی اگر با دقت انتخاب شده باشند هم باز می توان به آسانی کلمه عبور دستگاه های زیادی را به آسانی پیش بینی کرد. یکی دیگر از روش های احراز هویت که کمتر متداول بوده اما به مراتب کارآمدتر است استفاده از کلیدهای منحصر به فرد است که همانند یک قفل فیزیکی عمل می کنند.

زنجیره اختیارات

وقتی سیستمی را برای نخستین بار نصب می کنیم به صورت اتوماتیک یک اکانت ریشه در آن ایجاد می شود که در ویندوز به آن Administrator گفته می شود و در ناول به آن Supervisor می گویند. عملا همه حساب های دیگر در سیستم اعتبار خود را از این اکانت کسب می نمایند و متکی بر صحت آن می باشند. حتی در سیستم های ارائه گواهی امنیتی هم موضوع به همین نحو است با این تفاوت که در اینجا شخص سومی هست که هویت دو طرف را احراز کرده و به آنها اعلام می نماید. به این شخص سوم Trust Providers گفته می شود و از جمله آنها می شود به VeriSign و Thawte اشاره کرد.

پاسخگویی

کاربران از آنجایی که می دانند هویت آنها احراز شده است لذا دست به اعمال خطرناک نمی زنند چون هویت آنها معلوم بوده و در قبال رفتار خود مسئول محسوب می شوند.

کنترل دسترسی

هر کاربر با توجه هویت احراز شده برای وی تنها به بخش محدودی از اطلاعات دسترسی دارد. که این عمل از دو روش قابل انجام است: یکی اینکه مدیر سیستم برای هر کاربر با توجه به هویت وی مجوز دسترسی به یک فایل یا دایرکتوری از فایل ها اعطا می نماید. در روش دیگر که مبتنی بر رمزگذاری اطلاعات است که در این روش کلیه داده ها با استفاده از یک کلید عمومی رمز می شوند و به راحتی در اختیار هر کسی که آنها را بخواهد قرار داده می شوند اما تنها کسانی آنها را می توانند بخوانند که کلید خصوصی رمزگشایی ایشان را در اختیار داشته باشند. استفاده از PKE بسیار ایمن است اما به رمز درآوردن و رمزگشایی داده ها در این روش نیاز به توان پردازشی خیلی بالایی دارد. یکی دیگر از خطرات این روش همچنین این است که اگر کلید رمز خصوصی از دست برود کلیه داده ها غیر قابل دسترس خواهند شد.
برای پیشگیری از اتفاق فوق یک راه حل اینست که داده ها را با استفاده از کلید‌های رمز مشترک رمز کرده و سپس مجموعه کلیدهای مشترک را با استفاده از یک کلید خصوصی رمز کرده و برای کلیه اعضای یک گروه ارسال می کنند به این ترتیب اگر هم اکانتی پاک شود بقیه اعضای گروه همچنان کلید مشترک رمزگشایی داده ها را در اختیار خواهند داشت.
کنترل دسترسی مبتنی بر رمزنگاری مشکل استفاده از یک سیستم عامل خاص را حل کرده و حتی در مواقعی که سیستم عامل دور زده می شود نیز همچنان داده ها به رمز خواهند بود و از سوی دیگر چنین داده هایی را می‌توان بدون نگرانی از طریق رسانه های عمومی مثل اینترنت انتقال داد.

امنیت داده ها در کامپیوترهای قابل حمل

در زمان استفاده از دستگاه های قابل حملی نظیر کامپیوترهای Laptop  علاوه بر رعایت اقدامات احتیاطی در خصوص حفاظت فیزیکی آنان،می بایست یک لایه امنیتی دیگر به منظور ایمن سازی داده ها را ایجاد نمود .

چرا به یک لایه حفاظتی دیگر نیاز داریم ؟

به منظور حفاظت فیزیکی کامپیوترهای Laptop و سایر دستگاه های قابل حمل از روش های متعددی استفاده می گردد ( امنیت فیزیکی کامپیوترهای Laptop ) . استفاده از هر روشی به منظور حفاظت فیزیکی، عدم سرقت اینگونه دستگاه ها را تضمین نمی نماید . دستگاه های  فوق  بگونه ای طراحی شده اند که امکان حمل و جابجائی آنان ساده باشد و همین موضوع می تواند احتمال سرقت آنان را افزایش دهد .  سرقت یک کامپیوتر حاوی اطلاعات حساس پیامدهای خطرناک امنیتی را بدنبال خواهد داشت .  علاوه بر موارد فوق ، هر دستگاهی که به اینترنت متصل می گردد ، دارای استعداد لازم به منظور حملات شبکه ای متعددی است (خصوصا” اگر ارتباط از طریق یک اتصال بدون کابل ایجاد شده باشد ).

عملیات لازم به منظور امنیت داده ها

استفاده صحیح از رمزهای عبور : سعی نمائید که برای استفاده از اطلاعات موجود بر روی دستگاه های قابل حمل همواره از رمزهای عبور استفاده نمائید . در زمان  درج رمز عبور ،  گزینه هائی را انتخاب ننمائید که به کامپیوتر  امکان بخاطر سپردن رمزهای عبور  را می دهد .از رمزهای عبوری که امکان تشخیص آسان آنان برای افراد غیرمجاز وجود دارد ، استفاده نگردد . از رمزهای عبور مختلفی برای برنامه های متفاوت استفاده نمائید ( انتخاب و حفاظت رمزهای عبور ) .

ذخیره سازی جداگانه داده های مهم :از امکانات و دستگاه های متعددی به منظور ذخیره سازی داده  می توان استفاده نمود . فلاپی دیسک  ها ، دیسک های فشرده CD ، DVD و یا درایوهای فلش قابل حمل ، نمونه هائی در  این زمینه می باشند . پیشنهاد می گردد  اطلاعات موجود بر روی دستگاه های قابل حمل( نظیر کامپیوترهای Laptop ) بر روی رسانه های ذخیره سازی قابل حمل و در مکان های متفاوت ، ذخیره و نگهداری گردد .  بدین ترتیب در صورت سرقت و یا خرابی کامپیوتر ، امکان دستیابی و استفاده از داده ها  همچنان وجود خواهد داشت . مکان نگهداری داده ها می بایست دارای شرایط مطلوب امنیتـی باشد.

طراحی الگوریتمهای رمز نگاری :

طراحی الگوریتمهای رمزنگاری مقوله‌ای برای متخصصان ریاضی است. طراحان سیستمهایی که در آنها از رمزنگاری استفاده می‌شود، باید از نقاط قوت و ضعف الگوریتمهای موجود مطلع باشند و برای تعیین الگوریتم مناسب قدرت تصمیم‌گیری داشته باشند. اگرچه رمزنگاری از اولین کارهای شانون (Shannon) در اواخر دهه ۴۰ و اوایل دهه ۵۰ بشدت پیشرفت کرده است، اما کشف رمز نیز پابه‌پای رمزنگاری به پیش آمده است و الگوریتمهای کمی هنوز با گذشت زمان ارزش خود را حفظ کرده‌اند. بنابراین تعداد الگوریتمهای استفاده شده در سیستمهای کامپیوتری عملی و در سیستمهای برپایه کارت هوشمند بسیار کم است.

سیستمهای کلید متقارن

یک الگوریتم متقارن از یک کلید برای رمزنگاری و رمزگشایی استفاده می‌کند. بیشترین شکل استفاده از رمزنگاری که در کارتهای هوشمند و البته در بیشتر سیستمهای امنیت اطلاعات وجود دارد data encryption algorithm یا DEA  است که بیشتر بعنوان DES‌ شناخته می‌شود. DES یک محصول دولت ایالات متحده است که امروزه بطور وسیعی بعنوان یک استاندارد بین‌المللی شناخته ‌می‌شود. بلوکهای ۶۴بیتی دیتا توسط یک کلید تنها که معمولا ۵۶بیت طول دارد، رمزنگاری و رمزگشایی می‌شوند. DES‌ از نظر محاسباتی ساده است و براحتی می‌تواند توسط پردازنده‌های کند (بخصوص آنهایی که در کارتهای هوشمند وجود دارند) انجام گیرد.

این روش بستگی به مخفی‌بودن کلید دارد. بنابراین برای استفاده در دو موقعیت مناسب است: هنگامی که کلیدها می‌توانند به یک روش قابل اعتماد و امن توزیع و ذخیره شوند یا جایی که کلید بین دو سیستم مبادله می‌شوند که قبلا هویت یکدیگر را تایید کرده‌اند عمر کلیدها بیشتر از مدت تراکنش طول نمی‌کشد. رمزنگاری DES عموما برای حفاظت دیتا از شنود در طول انتقال استفاده می‌شود.

کلیدهای DES ۴۰بیتی امروزه در عرض چندین ساعت توسط کامپیوترهای معمولی شکسته می‌شوند و بنابراین نباید برای محافظت از اطلاعات مهم و با مدت طولانی اعتبار استفاده شود. کلید ۵۶بیتی عموما توسط سخت‌افزار یا شبکه‌های بخصوصی شکسته می‌شوند. رمزنگاری DESسه‌تایی عبارتست از کدکردن دیتای اصلی با استفاده از الگوریتم DES‌ که در سه مرتبه انجام می‌گیرد. (دو مرتبه با استفاده از یک کلید به سمت جلو (رمزنگاری)  و یک مرتبه به سمت عقب (رمزگشایی) با یک کلید دیگر) مطابق شکل زیر:

این عمل تاثیر دوبرابر کردن طول مؤثر کلید را دارد؛ بعدا خواهیم دید که این یک عامل مهم در قدرت رمزکنندگی است.

الگوریتمهای استاندارد جدیدتر مختلفی پیشنهاد شده‌اند. الگوریتمهایی مانند Blowfish و IDEA برای زمانی مورد استفاده قرار گرفته‌اند اما هیچکدام پیاده‌سازی سخت‌افزاری نشدند بنابراین بعنوان رقیبی برای DES  برای استفاده در کاربردهای میکروکنترلی مطرح نبوده‌اند. پروژه استاندارد رمزنگاری پیشرفته دولتی ایالات متحده (AES) الگوریتم Rijndael را برای جایگزیتی DES بعنوان الگوریتم رمزنگاری اولیه انتخاب کرده است. الگوریتم Twofish مشخصا برای پیاده‌سازی در پردازنده‌های توان‌ـ‌پایین مثلا در کارتهای هوشمند طراحی شد.

در ۱۹۹۸ وزارت دفاع ایالات متحده تصمیم گرفت که الگوریتمها Skipjack و مبادله کلید را که در کارتهای Fortezza استفاده شده بود، از محرمانگی خارج سازد. یکی از دلایل این امر تشویق برای پیاده‌سازی بیشتر کارتهای هوشمند برپایه این الگوریتمها بود.

برای رمزنگاری جریانی (streaming encryption) (که رمزنگاری دیتا در حین ارسال صورت می‌گیرد بجای اینکه دیتای کدشده در یک فایل مجزا قرار گیرد) الگوریتم RC4‌ سرعت بالا و دامنه‌ای از طول کلیدها از ۴۰ تا ۲۵۶ بیت فراهم می‌کند. RC4 که متعلق به امنیت دیتای RSA‌ است، بصورت عادی برای رمزنگاری ارتباطات دوطرفه امن در اینترنت استفاده می‌شود.

سیستمهای کلید نامتقارن

سیستمهای کلید نامتقارن از کلید مختلفی برای رمزنگاری و رمزگشایی استفاده می‌کنند. بسیاری از سیستمها اجازه می‌دهند که یک جزء (کلید عمومی یا public key) منتشر شود در حالیکه دیگری (کلید اختصاصی یا private key) توسط صاحبش حفظ شود. فرستنده پیام، متن را با کلید عمومی گیرنده کد می‌کند و گیرنده آن را با کلید اختصاصی خودش رمزنگاری میکند. بعبارتی تنها با کلید اختصاصی گیرنده می‌توان متن کد شده را به متن اولیه صحیح تبدیل کرد. یعنی حتی فرستنده نیز اگرچه از محتوای اصلی پیام مطلع است اما نمی‌تواند از متن کدشده به متن اصلی دست یابد، بنابراین پیام کدشده برای هرگیرنده‌ای بجز گیرنده مورد نظر فرستنده بی‌معنی خواهد بود. معمولترین سیستم نامتقارن بعنوان RSA‌ شناخته می‌شود (حروف اول پدیدآورندگان آن یعنی Rivest ، Shamir و Adlemen است). اگرچه چندین طرح دیگر وجود دارند. می‌توان از یک سیستم نامتقارن برای نشاندادن اینکه فرستنده پیام همان شخصی است که ادعا می‌کند استفاده کرد که این عمل اصطلاحا امضاء نام دارد.  RSA شامل دو تبدیل است که هرکدام احتیاج به بتوان‌رسانی ماجولار با توانهای خیلی طولانی دارد:

  • امضاء، متن اصلی را با استفاده از کلید اختصاصی رمز می‌کند؛
  • رمزگشایی عملیات مشابه‌ای روی متن رمزشده اما با استفاده از کلید عمومی است. برای تایید امضاء بررسی می‌کنیم که آیا این نتیجه با دیتای اولیه یکسان است؛ اگر اینگونه است، امضاء توسط کلید اختصاصی متناظر رمزشده است.

به بیان ساده‌تر چنانچه متنی از شخصی برای دیگران منتشر شود، این متن شامل متن اصلی و همان متن اما رمز شده توسط کلید اختصاصی همان شخص است. حال اگر متن رمزشده توسط کلید عمومی آن شخص که شما از آن مطلعید رمزگشایی شود، مطابقت متن حاصل و متن اصلی نشاندهنده صحت فرد فرستنده آن است، به این ترتیب امضای فرد تصدیق می‌شود. افرادی که از کلید اختصاصی این فرد اطلاع ندارند قادر به ایجاد متن رمز‌شده‌ نیستند بطوریکه با رمزگشایی توسط کلید عمومی این فرد به متن اولیه تبدیل شود.

اساس سیستم RSA  این فرمول است: X = Yk (mod r)

که X متن کد شده، Y متن اصلی، k کلید اختصاصی و r حاصلضرب دو عدد اولیه بزرگ است که با دقت انتخاب شده‌اند. برای اطلاع از جزئیات بیشتر می‌توان به مراجعی که در این زمینه وجود دارد رجوع کرد. این شکل محاسبات روی پردازنده‌های بایتی بخصوص روی ۸ بیتی‌ها که در کارتهای هوشمند استفاده می‌شود بسیار کند است. بنابراین، اگرچه RSA هم تصدیق هویت و هم رمزنگاری را ممکن می‌سازد، در اصل برای تایید هویت منبع پیام از این الگوریتم در کارتهای هوشمند استفاده می‌شود و برای نشاندادن عدم تغییر پیام در طول ارسال و رمزنگاری کلیدهای آتی استفاده می‌شود.

سایر سیستمهای کلید نامتقارن شامل سیستمهای لگاریتم گسسته می‌شوند مانند Diffie-Hellman، ElGamal و سایر طرحهای چندجمله‌ای و منحنی‌های بیضوی. بسیاری از این طرحها عملکردهای یک‌ـ‌طرفه‌ای دارند که اجازه تاییدهویت را می‌دهند اما رمزنگاری ندارند. یک رقیب جدیدتر الگوریتم RPK‌ است که از یک تولیدکننده مرکب برای تنظیم ترکیبی از کلیدها با مشخصات مورد نیاز استفاده می‌کند. RPK یک پروسه دو مرحله‌ای است: بعد از فاز آماده‌سازی در رمزنگاری و رمزگشایی (برای یک طرح کلید عمومی) رشته‌هایی از دیتا بطور استثنایی کاراست و می‌تواند براحتی در سخت‌افزارهای رایج پیاده‌سازی شود. بنابراین بخوبی با رمزنگاری و تصدیق‌هویت در ارتباطات سازگار است.

طولهای کلیدها برای این طرحهای جایگزین بسیار کوتاهتر از کلیدهای مورد استفاده در RSA‌ است که آنها برای استفاده در چیپ‌کارتها مناسب‌تر است. اما ‌RSA‌ محکی برای ارزیابی سایر الگوریتمها باقی مانده است؛ حضور و بقای نزدیک به سه‌دهه از این الگوریتم، تضمینی در برابر ضعف های عمده بشمار می‌رود.

رمزنگاری کلید عمومی وrsa :

رمزنگاری کلید مخفی: رمزنگاری سنتی کلید مخفی؛ از یک کلید تنها که بین هر دو طرف گیرنده و  فرستنده به اشتراک گذاشته شده است استفاده می کند.اگر این کلید فاش شود ارتباط به خطر می افتد.همچنین این روش از گیرنده در برابر پیام های جعلی ارسال شده که ادامی کنند از طرف فرستنده ی خاصی می ایند محافظت نمی کند.

رمزنگاری کلید عمومی: این روش که رمزنگاری دوکلیده نیز خوانده می شود از دو کلید برای عمل رمز نگاری استفاده می کند:

یکی کلید عمومی که توسط همه شناخته شده است.و برای به رمز درآوردن پیغام ها و تشخیص امضا ها مورد استفاده قرار می گیرد.

دیگری کلید خصوصی که فقط گیرنده از آن اطلاع دارد و برای رمز گشایی پیغام و همچنین ایجاد امضا مورد استفاده قرار می گیرد.

اشکال سیستمهای کلید مخفی:

یک از اشکال های الگوریتم های بر پایه کلید متقارن این است که شما نیاز به یک روش مطمئن برای انتقال کلید های طرفین دارید.به این مفهوم که یا از یک کانال امن این کار را انجام دهند یا به منظور انتقال کلید همدیگر را ملاقات کنند.این میتواند یک مشکل بزرگ باشد

و قطعا کارآسانی نیست.اشکال دیگر این روش این است که شما برای ارتباط با هر شخصی کلیدی جداگانه نیاز دارید.

سناریوی ارتباط:

آلیس وباب می خواهند با هم مکالمه مطمئنی داشته باشند طوری که کس دیگری از اطلاعات مبادله شده در این مکالمه با خبر نشود.درهمین زمان Eve در حال استراق سمع است.

آلیس و باب میتوانند خلبان دو جت نظامی یا دو تاجر اینترتی یا فقط دو دوست باشند که می خواهند با هم یک مکالمه ی خصوصی داشته باشند.آنها نمی توانند Eve را از گوش دادن به سیگنال رادیوی یا اطلاعات مبادله شده از طریق تلفن و .. باز دارند.پس چه کاری می توانند انجام دهند تا این ارتباط مخفی بماند؟

(فایل کامل این پروژه ۸۲ ( هشتاد و دو  ) صفحه word همراه با منابع و ماخذ می باشد.)

در تمامی ساعات شبانه روز >> پرداخت آنلاین و دانلود آنی فایل پس از پرداخت. 



رمز گذاری و رمزگشایی و امنیت داده ها

توجه مهم :

*دوست عزیز در صورت نداشتن رمز پویا یا قطع بودن درگاه بانکی ، لطفا نام پروژه درخواستی خود را جهت هماهنگی برای دریافت شماره کارت واریزی و دریافت لینک دانلود، به واتساپ پشتیبانی سایت  ۰۹۳۹۲۷۶۱۶۳۰  ارسال کنید *(از ساعت ۸ الی ۲۳)

Related posts

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *