در چند دهه ابتدایی پیدایش، از شبکه های کامپیوتری بیشتر توسط پژوهشگران دانشگاه وبرای ارسال نامه های الکترونیکی و یا توسط کارمندان شرکتها برای به اشتراک گذاری چاپگر، استفاده می شد. در چنین شرایطی، امنیت شبکه از اهمیت چندانی برخوردار نبود. اما اکنون که میلیونها تن از شهروندان عادی از شبکه ها برای انجام عملیات بانکی، معاملات یا پرکردن اظهارنامه های مالیاتی خود استفاده می کنند، امنیت شبکه به عنوان یک مسئله بالقوه و عمده پدیدار شده است. در این فصل از چندین زاویه به مطالعه امنیت شبکه خواهیم پرداخت، اشکالات و موانع امنیت را متذکر شده وچندین الگوریتم و پروتکل را که شبکه ها را امن تر و قابل اطمینان می کنند، تشریح خواهیم نمود.
« امنیت شبکه» دربرگیرنده عناوین و موارد بسیار گسترده است وبا مشکلات ومعضلات متعددی سروکاردارد. دریک عبارت ساده می توان امنیت را « اطمینان از عدم دسترسی افراد فضول وجلوگیری از دستکاری در پیامهای محرمانه دیگران» تعبیرکرد. همچنین می توان امنیت را در ارتباط با افرادی تعبیر کرد که تلاش می کنند به سرویسهای راه دور در شبکه دسترسی پیدا کنند در حالی که مجوز استفاده از آنها را ندارند؛ یا به روشهایی اطلاق می شود که بتوان صحت پیامهایی که مثلاً از اداره اخذ مالیات (IRS) می رسد و اعلام می کند: « حداکثر تا جمعه مبلغ اعلام شده را واریز کنید» را تأیید کرد وتشخیص داد که این پیام واقعاً از اداره مالیات آمده نه از مافیا ! همچنین می توان امنیت را درخصوص پیشگیری از دخل وتصرف ویا پاسخ جعلی به پیامهای قانونی دیگران ومقابله با افرادی که پس از ارسال پیام سعی در انکار آنها می کنند، تعبیر کرد.
منشأ اغلب مشکلاتی که به صورت عمدی برای امنیت شبکه ها به وجود می آید افرادی هستند که سعی در کسب درآمد نا مشروع، جلب توجه یا آزاررسانی به دیگران دارند. درشکل 1 فهرستی از افراد که بطور عام مرتکب جرمهای امنیتی می شوند وانگیزه های آنان درج شده است. با بررسی این جدول روشن خواهد شد که تضمین امنیت شبکه، مقوله ای فراتر از رفع اشکالات برنامه نویسی است. دراین خصوص باید تمهیداتی برای پیشگیری از حمله دشمنانی اندیشیده شود که غالباً افرادی با هوش وکوشا هستند وگاهی اوقات سازمان یافته وبا برنامه ریزی قبلی اقدام به حمله می کنند. البته همیشه عملیات مخرب برعلیه شبکه توسط یک گروه خاص وخطرناک انجام نمی شود؛ بررسی پرونده های اداره پلیس نشان می دهد که بسیاری از حملات بر علیه شبکه توسط عوامل خارجی وبه واسطه نفوذ از طریق خط تلفن نبوده است بلکه توسط عوامل مغرض داخلی انجام گرفته است. بنابراین طراحی سیستمهای امنیتی باید با درنظر داشتن این حقیقت انجام شود.
مشکلات امنیت شبکه بطور کلی به چهار رده نزدیک ومرتبط به هم تقسیم بندی می شوند: (1) سری ماندن اطلاعات١ ، (2) احراز هویت کاربران٢ ، (3) غیرقابل انکاربودن پیامها٣، (4) نظارت برصحت اطلاعات.٤
سری ماندن اطلاعات که گاه «محرمانه نگاهداری اطلاعات»(Confidentiality) نیز نامیده می شود، متضمن انجام عملیاتی است که اطلاعات را از دسترس کاربران غیرمجاز وبیگانه دور نگاه می دارد. این همان مفهومی است که در ذهن مردم عادی در خصوص امنیت شبکه تداعی می شود.
«احراز هویت» عبارتست از تأیید هویت طرف مقابل ارتباط قبل از آنکه اطلاعات حساس دراختیاراو قرار بگیرد یا در معاملات تجاری شرکت داده شود.
مقوله «غیرقابل انکاربودن پیامها» (Nonrepudiation) با امضاهای دیجیتالی سروکار دارد وبه اطلاعات و مستندات، هویت حقوقی اعطاء می کند: وقتی مشتری شما که قبلاً به صورت الکترونیک یک میلیون عدد از یک کالای کوچک به قیمت 89 سنت سفارش داده وبعداً ادعا می کند قیمت کالا 69 سنت بوده، چگونه می توان خلاف ادعای او را ثابت کرد؟ شاید حتی او ادعا کند هرگز چنین سفارش خریدی نداده است.
نهایتاً چگونه می توان مطمئن شد که پیامی که شما دریافت کرده اید، دقیقاً همان پیامی است که در اصل فرستاده شده ویک دشمن بدخواه در حین انتقال پیام آن را دستکاری وتحریف نکرده است.
تمام موارد فوق الذکر (سری ماندن اطلاعات، احراز هویت، غیرقابل انکاربودن پیامها و نظارت برصحت اطلاعات) در سیستمهای سنتی ومعمولی پیرامونمان نیز وجود دارد.، البته با تفاوتهای قابل توجه ؛ عملیات محرمانه نگاهداشتن ونظارت برصحت اطلاعات با اتکاء به پست سفارشی ولاک ومهر کردن مستندات انجام می شود.
همچنین عموم افراد اغلب قادرند تفاوت بین اصل یک سند وتصویر آن سند را تشخیص بدهند. به عنوان یک آزمایش تصویر (کپی شده ) یک چک معتبر بانکی را تهیه کرده وسعی در نقدکردن اصل چک در روز دوشنبه بنمائید. حال تلاش کنید تصویر کپی شده چک را در روز سه شنبه نقد کنید تا تفاوت بین رفتاری که با شما می شود را عیناً مشاهده نمائید !!! در بانکداری الکترونیک، اصل و کپی چکهای الکترونیکی تفاوتی با هم نداشته وغیرقابل تشخیص است. لذا چگونگی برخورد بانک با اینگونه چکها جای تأمل دارد.
در دنیای پیرامون ما، افراد از طریق تشخیص چهره یک فرد، صدا یا دست خط، او را احراز هویت می کنند. درعملیات اداری، تأیید هویت اشخاص از طریق امضای آنها در برگه های حقوقی یا مهرهای برجسته ونظائر آن انجام می شود. هرگونه تلاش برای جعل یا دستکاری در اسناد، با مقایسه دستخط یا امضاء، قابل کشف است. این گزینه ها در دنیای الکترونیک قابل اعمال نیستند وبدیهی است که به راهکارهای دیگری نیاز است.
قبل از آن که به ماهیت تک تک راه حلهای تضمین امنیت اطلاعات بپردازیم، بررسی تمهیدات وراهکارهای امنیتی که درهریک از لایه های پشته پروتکلی شبکه (protocol stack) ممکن وقابل اعمال است، خالی از لطف نخواهد بود.
رعایت نکات وتمهیدات امنیتی فقط دریک نقطه خاص متمرکز نیست. درهرلایه از معماری شبکه، باید نکات وموارد امنیتی مد نظر قرارگرفته وبه دقت رعایت شود: درلایه فیزیکی (physical Layer) برای جلوگیری از ایجاد انشعاب درسیم وپیشگیری از استراق سمع سیگنال (Wire tapping) ، می توان سیمها را در درون یک لوله محافظ جاسازی ولوله را با یک گاز تحت فشار پرکرد. در این حالت هرگونه تلاش در نقب زدن به این لوله وسوراخ کردن آن منجر به تخلیه گاز، کاهش فشارلوله وبه صدا درآمدن زنگهای هشدار خواهد شد. در برخی از سیستمهای نظامی از این روش استفاده شده است.
در لایه پیوند داده ها (Data Link) ، بسته های ارسالی برروی خطوط نقطه به نقطه (point to point) قبل از خروج از ماشین مبداء ، رمزنگاری شده وبه محض ورود به ماشین مقصد رمزگشایی می شود. تمام جزئیات کار در سطح لایه پیوند داده ها پیاده سازی وانجام می شود ولایه های فوقانی به آنچه که دراین لایه انفاق می افتد بی توجه هستند وبه هیچ وجه درگیر جزئیات آن نخواهند شد. این راه حل در مواقعی که بسته های حامل داده مجبور به گذر از چند مسیریاب باشند کارآیی خود را از دست خواهد داد زیرا اطلاعات در بدو ورود به هرمسیریاب رمزگشایی شده وبه محض خروج از آن مجدداً رمزنگاری می شوند فلذا این خطر وجود دارد که دریکی از مسیریابهای بین راه به اطلاعات حمله شود. از طرف دیگر با این روش نمی توان از نشستها (Sessions) حفاظت و مراقبت کرد(به عنوان مثال مراقبت ازیک نشست Online برای خرید از طریق کارت اعتباری ممکن نیست) و درهریک ازمسیریابهای واقع برروی مسیر احتمال دستکاری یا استراق سمع اطلاعات وجود خواهد داشت. علیرغم این کمبودها، روش «رمزنگاری لینک» ، (Link Encryption) را می توان به سادگی به هرشبکه افزود وبیشتر مواقع نیز سودمند است.
در لایه شبکه (Network Layer) می توان برای نظارت مؤثر بر ورود وخروج بسته های مجاز وتشخیص بسته های غیرمجاز(حامل داده های مخرب) ، «دیوار آتش» (Fire wall) نصب کرد. در ضمن دراین لایه می توان از پروتکل IPsec (IP Security)استفاده کرد.
در لایه انتقال (Transport Layer) کل اتصال (Connection) بین مبداء ومقصد، می تواند رمزنگاری شود. به عبارت بهتر تمام داده های در حال تبادل، درپروسه مبداء رمز شده ودر پروسه مقصد از رمز خارج خواهد شد ؛ ( به این روش امنیت انتها به انتها یا End-to-End گفته می شود.) برای تضمین حداکثر امنیت، اعمال « امنیت انتها به انتها» الزامی است.
در آخر، مواردی نظیر احراز هویت کاربران وغیرقابل انکاربودن محتوای پیامها (Nonrepudiation) فقط در لایه کاربرد قابل اعمال وپیاده سازی است.
از آنجایی که تضمین امنیت اطلاعات دقیقاً در یک لایه خاص قرارنمی گیرد لذا نمی شد مفاد آن را در ادامه هیچ یک از فصول این کتاب گنجاند؛ به همین دلیل یک فصل اختصاصی ومجزا به آن اختصاص داده ایم.