یکشنبه, ۱۶ اردیبهشت, ۱۴۰۳ / 5 May, 2024
مجله ویستا

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


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

رمزنگاری از دیر بازبه عنوان یك ضرورت برای حفاظت ازاطلاعات خصوصی در مقابل دسترسی های غیر مجاز درتجارت و سیاست و مسایل نظامی وجود داشته است

رمزنگاری از دیر بازبه عنوان یك ضرورت برای حفاظت ازاطلاعات خصوصی در مقابل دسترسی - های غیر مجاز درتجارت و سیاست و مسایل نظامی وجود داشته است به طور مثال تلاش برای ارسال یك پیام سری بین دو هم پیمان به گونه ای كه حتی اگر توسط دشمن دریافت شود قابل درك نباشد، در رم قدیم نیزدیده شده است(رمز سزار).در سالیان اخیر رمزنگاری وتحلیل رمز از یك هنر پا را فراترگذاشته ویك علم مستقل شده است و در واقع به عنوان یك وسیله عملی برای ارسال اطلاعات محرمانه روی كانا ل های غیر امن همانند تلفن ، ماكرویو و ماهواره ها شناخته می شود.

پیشرفت علم رمز نگاری موجب به وجود آمدن روشهای تحلیل مختلفی شده است به گونه ای كه به طور متناوب سیستم های رمز مختلف شكسته شده اند . معروف ترین نمونه این نوع سیستمها ماشین «انیگما » بوده است . انیگما ماشین رمز گذار و كد گذار وكد كننده ای بوده است كه حزب نازی در زمان جنگ جهانی دوم برای ارسال پیام ها یشان از طریق رادیو به سایر نقاط استفاده می كردند .

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

● الگوریتم های رمزنگاری كلید خصوصی

رمزهای كلید خصوصی بر مبنای نوع عملكرد ، چگونگی طراحی و پیاده سازی و كاربردهایشان به دو گونه رمزهای قطعه ای و رمزهای دنباله ای تقسیم می شوند . كه در هر یك از آ نها عملكرد رمز نگاری به صورت یك عملكرد دوجانبه بین دو طرف فرستنده و گیرنده می باشد كه با ایجاد یك ارتباط اولیه با یكدیگر روی كلید خصوصی توافق میكنند به گونه ای كه دشمن آن كلید را نداند. فرستنده S می خواهد پیام m۱,….mi را به گونه ای به طرف گیرنده R بفرستد كه او بتواند به محتوای پیام دست یابد و در عین حال حریف مخالف A نتواند محتوای پیام را درك كند حتی اگر A تمامی آنچه بین R و S انتقال می یابد را دریافت نماید.

به همین منظور فرستنده S هر متن روشن mi رابه وسیله الگوریتم رمزگذاری E و كلید خصوصی به متن رمز شده تبدیل میكند ودریافت كننده نیزكه متن رمز شده را دریافت كرده می تواند با الگوریتم رمز گشائی D و كلید خصوصی متن اصلی را بدست آورد.

▪ رمزهای دنباله ای

در طراحی رمزهای دنباله ای یك مولد بیت شبه تصادفی نقش تولید كننده رشته كلید را برای سیستم رمزدنباله ای دارد . در واقع این مولد میتواند مولد رشته كلید نیز محسوب شود . از دیدگاه رمز نگاری یك مولد رشته كلید امن باید دارای سه پارامتر مهم زیر باشد :

۱) پریود رشته كلید تولید شده باید به حد كافی بزرگ باشد تا با طول پیام ارسال شده سازگاری داشته باشد .

۲) دنباله بیت خروجی حاصله از مولد باید به راحتی قابل تولید كردن باشد .

۳) بیتهای خروجی باید به سختی قابل پیش بینی باشند .

در واقع با در اخثیار داشتن مولد و اولین n بیت خروجی a(۰) ، a(۱) …… . a(n-۱) از لحاظ محاسباتی پیش بینی بیت n+۱ ام یعنی a(n+۱) در دنباله با احتمال بیشتر از ½ باید غیر ممكن باشد.

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

▪ ساختار مولد های بیت شبه تصادفی و رمزهای دنباله ای

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

▪ مولدهای همنهشتی خطی (LCG)

در این روش برای تولید اعداد شبه تصادفی از روابط بازگشتی نظیر x j+۱=axj+b بهره گرفته میشود .در اینجا سه تا ئی a) ، b ، m ) پارامترهائی را مشخص میكنند ،كه مولد را شرح میدهند از این سه تائی به عنوان كلید مخفی میتوان استفاده كرد.با توجه به اینكه x۰ هسته مولد میباشد ، اگر پارامترها بدقت انتخاب شوند اعدادی نظیر xj به صورت تكراری نخواهیم داشت مگر آنكه تمامی اعداد صحیح درون فاصله [۰,m-۱] در خروجی ظاهر شده باشند .« بویر» نشان داد كه دنباله های تولید شده توسط LCG ها از نظر رمز نگاری امن نیستند . درواقع با در اختیار داشتن قطعه ای طولانی ازدنباله میتوان با روشهائی پارامترهای m و b و a را بازسازی نمود .

▪ ثبات های انتقال پس خور ) FSR (

دنباله های مورد استفاده در رمزنگاری می توانند بر مبنای ثبات های انتقال طراحی بشوند حتی وقتی كه دارای پس خوری خطی باشند . یك ثبات انتقال پس خور از N فلیپ فلاپ و یك تابع پس خور تشكیل شده است . تابع پس خور هر عنصر جدید همانند t ) ) a از دنباله را به صورت جزئی از عناصری كه از قبل تولید شده اند همانند a(t-۱) ، …… a(t-n-۱) ، a(t-n) بیان می كند . گونه ای از توابع پس خور وجود دارند كه به صورت زیر عمل میكنند:

a(t) =g( a(t-۱) , a(t-۲) ……… , a(t-n+۱)) Å a(t-n)

بسته به اینكه آیا تابع g خطی است (با عملگر Xor تنها قابل اجراست ( یانه ،مولد یك ثبات انتقال پس خور خطی ( LFSR ) یا ثبات انتقال پس خور غیر خطی ( NLFSR ) خوانده می شود.

پریود دنباله تولید شده بوسیله یك FSR به تعداد مراحل ذخیره سازی و جزئیات اتصال پس خور بستگی خواهد داشت و بطور كلی حداكثر پریود یك دنباله كه توسط یك FSR دارای n مرحله تولید میشود ، ۲ n خواهد بود .

▪ ثبات های انتقال پس خور غیر خطی (NLFSR )

دیاگرام حالت گونه هائی از FSR ها میتواند شامل چرخه های كوچك باشد و حالات تكراری داشته باشد و دنباله اگر در یكی از این حالات قرار بگیرد ممكن است نا امن شود . یك روش مناسب طراحی ثبات انتقال n مرحله ای كه دنباله هائی با حداكثر پریود ۲ n تولید می نماید و دنباله های « دی بروئن » می باشد.كه تعداد دنباله های ممكن n مرحله ای آن به بزرگی ۲ (۲n-۱)-n میباشد.كه همگی آنها دارای توزیعهای ایده آلی میباشند .اما این دنباله ها كه از ثبات های انتقال غیر خطی ساخته میشوند دارای مشكلاتی برای پیاده سازی توسط الگوریتمهای شناخته شده هستند . همچنین تولید سریع این دنباله ها به سختی صورت می گیرد . همچنین برخی از خواص همبستگی بین عناصر تولید شده می تواند راهكارهای مناسبی برای تحلیل این دنباله ها ایجاد نماید .

▪ ثبات های انتقال پس خور خطی (LFSR)

این ثبات ها مدت ها برای كدهای كنترل خطا ، آزمایشهای VLSI و مخابرات طیف گسترده مورد استفاده بوده اند و از جمله مهمترین اجزاء در ساختار مولدهای شبه تصادفی می با شند آنها توابع پس خوری به شكل زیر دارند .

a(t) =c۱ a(t-۱) Å c۲ a(t-۲) Å …………. Å c(n-۱) a(t-n-۱) Å a(t-n)

c i Î [۰,۱]

و با چند جمله ای پس خور زیر نشان داده میشوند .

f(n) = ۱+ c۱x + c۲x۲ + ……..+ c( n-۱) x ( n-۱) + x(n)

به طور كلی برای اینكه حداكثر پریود ممكن ۲n-۱ را برای دنباله خروجی از یك LFSR داشته باشیم ، چند جمله ای پس خور آن می باید اولیه باشد . تعداد چند جمله ای های اولیه درجه n از رابطه f (۲ n –۱)/n بدست می آید كه (n) f نمایانگر تابع اویلر می باشد كه تعداد اعداد صحیح مثبت و اول كوچكتر از عدد n را نشان میدهد .

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

▪ كاربردهای رمزهای دنباله ای ،مزایا و معایب

بسیاری از رمزهای دنباله ای كاربردی بر مبنای LFSR ها عمل می نمایند و از آنجائیكه یك ثبات انتقال در واقع آرایه ای از بیت های حافظه و یك سری فیدبك می باشد و با یك سری Xor قابل پیاده سازی است ، می توان امنیت قابل توجهی را تنها با تعداد كمی گیت منطقی بدست آورد .

بنابراین رمزهای دنباله ای می توانند برای مصارف سخت افزاری بسیار مؤثر و كارا باشند .

اما در عین حال مشكلی كه LFSR ها و در نتیجه رمزهای دنباله ای مبتنی بر آنها دارند ، ناكارآمد بودن آنها در نرم افزار است . در واقع برای مناسبت های نرم افزاری چندجمله ایهای فیدبك و تعداد فیدبك ها بسیار مهم می باشد. در حالیكه مؤثر انتخاب نكردن این چندجمله ایها امكان حملات وابستگی را نیز ممكن است فراهم آورد .

بنابراین رمزهای دنباله ای حتی انواع ساده تر آنها در اجراهای نرم افزاری نمی توانند سریعتر از رمزهای قطعه ای عمل نمایند . رمزهای دنباله ای به علت پیاده سازی مؤثرتر سخت افزاری كاربردهای فراوانی در صنایع نظامی به خصوص خطوط مخابرات نظامی دارند . از آنجا كه در اینگونه رمزها هر یك از بیت های داده های اصلی به صورت مستقل رمز می شوند ، بكارگیری اینگونه رمزها در لینك های مخابراتی پر از اغتشاش و نویز به جهت امكان آشكارسازی و تصحیح خطاها مؤثرتر می باشد .

در عین حال كه برای رمز نمودن حجم عظیمی از داده ها بعلت سرعت اجرای بالا، رمزهای دنباله ای می توانند گزینه مناسبی باشند . همانطور كه در سیستم های امنیت مخابراتی و رمزنگاری نظیر BEU ها دیده می شود .

تحلیل و آنالیز نمودن رمزهای دنباله ای نیز معمولاً ساده تر از رمزهای قطعه ای صورت می گیرد . در عین حال امكان طرح حملات وابستگی بر روی اینگونه سیستم ها كه بر مبنای ثبات های انتقال خطی عمل می نمایند ، بیشتر است اغلیب رمزنگارها سعی می نمایند اجزاء مختلف اینگونه الگوریتم ها را در حالتی غیرخطی تركیب نمایند و یا از ثبات های انتقال غیرخطی استفاده نمایند تامصونیت وابستگی لازم پدید آید .

▪ نمونه های رمزهای دنباله ای پیاده سازی شده

رمزهای دنباله ای بسیاری در طرح های مختلف پیاده سازی شده اند .

A۵ یك الگوریتم رمز دنباله ای است كه برای رمز نمودن سیستم ارتباط گروهی موبایل و یا در واقع سیستم مخابراتی GSM به كار می رود . این الگوریتم برای رمز نمودن لینك ارتباطی میان گوشی تلفن به ایستگاه پایه به كار می رود .

الگوریتم XPD/KPD كه توسط شركت هیوز طراحی شده است ، در رادیوهای تاكتیكی نظامی ارتش و تجهیزات جهت یاب به كار رفته است .

الگوریتم رمز دنباله ای NaNoTEQ كه نام یك شركت الكترونیكی در آمریكای جنوبی است برای رمز نمودن ارتباطات و مراسلات از طریق فاكس در اداره پلیس آمریكای جنوبی بكار رفته است .

می توان انواع دیگر رمزهای دنباله ای طرح شده را بیان نمود ، اما آنچه مشخص است اینگونه رمزها در تجهیزات مخابراتی و سخت افزاری كاربرد گسترده و فراوان دارند . به خصوص در خطوط رادیوئی كه امكان اغتشاشات و نویزهای فراوان در آنها موجود می باشد . اما به علت سرعت نامناسب اجرای نرم افزاری آنها ، برای استفاده در شبكه های كامپیوتری و یا ایجاد امنیت در پروتكل های امنیت اینترنت بكار نمی روند .

● رمز قطعه ای

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

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


شما در حال مطالعه صفحه 1 از یک مقاله 4 صفحه ای هستید. لطفا صفحات دیگر این مقاله را نیز مطالعه فرمایید.