رمزنگاری اطلاعات

ستاره غیر فعالستاره غیر فعالستاره غیر فعالستاره غیر فعالستاره غیر فعال
 

رمزنگاری اطلاعات

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

  • اطلاعات کارت اعتباری

  • شماره های عضويت در انحمن ها

  • اطلاعات خصوصی

  • جزئيات اطلاعات شخصی

  • اطلاعات حساس در يک سازمان

  • اطلاعات مربوط به حساب های بانکی

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

اکثر سيستم های رمزنگاری اطلاعات در کامپيوتر به دو گروه عمده زير تقسيم می گردند :

  • رمزنگاری  کليد - متقارن

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

رمز نگاری کليد - متقارن
در روش فوق ، هر کامپيوتر دارای يک کليد رمز ( کد ) بوده که از آن برای رمزنگاری يک بسته اطلاعاتی قبل از ارسال اطلاعات بر روی شبکه و يا کامپيوتر ديگر ، استفاده می نمايد. دراين روش لازم است در ابتدا مشخص گردد که کداميک از کامپيوترها قصد مبادله اطلاعاتی با يکديگر را دارند ، پس از مشخص شدن هر يک از کامپيوترها،  در ادامه کليد رمز بر روی هر يک از سيستم ها می بايست نصب گردد. اطلاعات ارسالی توسط کامپيوترهای فرستنده با استفاده از کليد رمز ، رمز نگاری شده وسپس اطلاعات رمز شده  ارسال  خواهند شد. پس از دريافت اطلاعات رمز شده توسط کامپيوترهای گيرنده ، با استفاده از کليد رمز اقدام به بازگشائی رمز و برگرداندن اطلاعات بصورت اوليه و قابل استفاده خواهد شد . مثلا" فرض کنيد پيامی را برای يکی از دوستان خود رمز و سپس ارسال می نمائيد . شما برای رمز نگاری اطلاعات از روشی استفاده نموده ايد که بر اساس آن هر يک از حروف موجود در متن پيام را به دو حرف بعد از خود تبديل کرده ايد. مثلا" حروف A موجود در متن پيام به حروف C و حروف B به حروف D تبديل می گردند. پس از ارسال پيام رمز شده برای دوست خود ، می بايست با استفاده از يک روش ايمن و مطمئن کليد رمز را نيز برای وی مشخص کرد. در صورتيکه گيرنده پيام دارای کليد رمز مناسب نباشد ، قادر به رمز گشائی و استفاده از اطلاعات نخواهد بود. در چنين حالتی می بايست به دوست خود متذکر گرديد که کليد رمز ، " شيفت دادن هر حرف بسمت جلو و به اندازه دو واحد است " . گيرنده پيام با انجام عمليات معکوس قادر به شکستن رمز و استفاده از اطلاعات خواهد بود.

رمزنگاری کليد - عمومی
در روش فوق از ترکيب يک کليد خصوصی و يک کليد عمومی استفاده می شود. کليد خصوصی صرفا" متعلق به کامپيوتر فرستنده بوده و کليد عمومی توسط کامپيوتر فرستنده در اختيار هر يک از کامپيوترهائی که قصد برقراری ارتباط با يکديگر را دارند ، گذاشته می شود. برای رمزگشائی يک پيام رمز شده ، کامپيوتر می بايست از کليد عمومی که توسط فرستنده ارائه شده، بهمراه کليد خصوص ی خود  استفاده  نمايد. يکی از متداولترين برنامه های رمزنگاری در اين رابطه PGP)Pretty Good Privacy) است . با استفاده از PGP می توان هر چيز دلخواه را رمز نمود.
بمنظور پياده سازی رمزنگاری کليد - عمومی در مقياس بالا نظير يک سرويس دهنده وب ، لازم است از رويکردهای ديگری در اين خصوص استفاده گردد.  " امضای ديجيتال " يکی از رويکردهای موجود در اين زمينه است  يک امضای ديجيتالی صرفا" شامل اطلاعات محدودی بوده  که اعلام می نمايد ، سرويس دهنده وب با استفاده و بکارگيری يک سرويس مستقل با نام " امضای مجاز "  ، امين اطلاعات است . "امضای مجاز " بعنوان يک ميانجی بين دو کامپيوتر ايفای وظيف می نمايد. هويت و مجاز بودن هر يک از کامپيوترها برای برقراری ارتباط توسط سرويس دهنده انجام و برای هر يک کليد عمومی مربوطه را فراهم خواهد کرد.
يکی از متداولترين نمونه های پياده سازی شده از رمزنگاری کليد- عمومی ، روش SSL)Secure Sokets Layer)  است . روش فوق در ابتدا توسط "نت اسکيپ " پياده سازی گرديد. SSL يک پروتکل امنيتی اينترنت بوده که توسط مرورگرها و سرويس دهندگان وب بمنظور ارسال اطلاعات حساس ، استفاده می گردد.  SSL اخيرا" بعنوان بخشی از پروتکل TLS)Transport Layer Security)  در نظر گرفته شده است .
در مرورگر می توان زمان استفاده از يک پروتکل ايمن نظيز TLS را با استفاده از روش های متعدد اعلام کرد. استفاده از پروتکل "https" درعوض پروتکل "http" يکی از روش های موجود است . در چنين مواردی در بخش وضعيت پنجره مرورگر يک "Padlock" نشان داده خواهد شد.

رمزنگاری کليد - عمومی ، مدت زمان زيادی را صرف انجام محاسبات می نمايد. بنابراين در اکثر سيستمها از ترکيب کليد عمومی و متقارن استفاده می گردد. زمانيکه دو کامپيوتر يک ارتباط ايمن را بايکديگر برقرار می نمايند ،  يکی از کامپيوترها يک کليد متقارن را ايجاد و آن را برای کامپيوتر ديگر با استفاده از رمزنگاری کليد - عمومی ،  ارسال خواهد کرد. در ادامه دو کامپيوتر قادر به برقرار ارتباط بکمک رمزنگاری کليد متقارن می باشند. پس از اتمام ارتباط ،  هر يک از کامپيوترها کليد متقارن استفاده شده را دور انداخته و در صورت نياز به برقراری يک ارتباط مجدد ،  می بايست مجددا" فرآيند فوق تکرار گردد ( ايجاد يک کليد متقارن ،  ....)

مقدار Hash
رمزنگاری مبتنی بر کليد عمومی بر پايه يک مقدار hash ،  استوار است . مقدار فوق ،  بر اساس يک مقدار ورودی که دراختيار الگوريتم hashing گذاشته می گردد ،  ايجاد می گردد. در حقيقت مقدار hash ، فرم خلاصه شده ای از مقدار اوليه ای خود است . بدون آگاهی از الگوريتم استفاده شده تشخيص عدد ورودی اوليه بعيد بنظر می رسد . مثال زير نمونه ای در اين زمينه را نشان می دهد :

عدد ورودی الگوريتم Hash مقدار
10,667 Input # x 143 1,525,381

تسخيص اينکه عدد 1.525.381 ( مقدار hash)  از ضرب دو عدد 10.667 و 143 بدست آمده است ،  کار بسيار مشکلی است . در صورتيکه بدانيم که يکی از اعداد 143 است ،  تشخيص عدد دوم کار بسيار ساده ای خواهد بود. ( عدد 10.667) .رمز نگاری مبتنی بر کليد عمومی بمراتب پيچيده تر از مثال فوق می باشند. مثال فوق صرفا"  ايده اوليه در اين خصوص را نشان می دهد. کليدهای عمومی عموما" از الگوريتم های پيچيده و مقادير Hash بسيار بزرگ برای رمزنگاری استفاده می نمايند. در چنين مواردی اغلب از اعداد  40 و يا حتی 128 بيتی استفاده می شود. يک عدد 128 بيتی دارای  128 2 حالت متفاوت است .

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

بمنظور بررسی اعتبار يک شخص و يا اطلاعات موجود بر روی يک کامپيوتر از روش های متعددی استفاده می شود :

رمز عبور . استفاده از نام و رمز عبور برای کاربران ،  متداولترين روش "اعتبار سنجی " است . کاربران نام و رمز عبور خود را در زمان مورد نظر وارد و در ادامه اطلاعات وارد شده فوق ،  بررسی می گردند. در صورتيکه نام و يا رمز عبور نادرست باشند  ،  امکان دستيابی به منابع تعريف شده بر روی سيستم به کاربر داده نخواهد شد.

کارت های عبور . اين نوع کارت ها دارای مدل های متفاوتی می باشند. کارت های  دارای لايه مغناطيسی ( مشابه کارت های اعتباری ) و  کارت های هوشمند ( دارای يک تراشه کامپيوتر است )  نمونه هائی از کارت های عبور می باشند.

امضای ديجتالی   . امضای ديجيتالی،  روشی بمنظور اطمينان از معتبر بودن يک سند الکترونيکی ( نظير: نامه الکترونيکی ، فايل های متنی و ... )  است . استاندارد امضای ديجيتالی (DSS) ،  بر اساس نوع خاصی از رمزنگاری کليد عمومی و استفاده از الگوريتم امضای ديجيتالی (DSA) ايجاد می گردد.الگوريتم فوق شامل يک کليد عمومی ( شناخته شده توسط صاحب اوليه  سند الکترونيکی - امضاء کننده ) و يک کليد عمومی است . کليد عمومی دارای چهار بخش است . در صورتيکه هر چيزی پس از درج  امضای ديجيتالی به يک  سند الکترونيکی ،  تغيير يابد ،  مقادير مورد نظری که بر اساس آنها امضای ديجيتالی با آن مقايسه خواهد شد ،  نيز تغيير خواهند کرد.
سيستم های متعددی برای "اعتبار سنجی " تاکنون طراحی و عرضه شده است . اکثر سيستم های فوق از زيست سنجی برای تعيين اعتبار استفاده می نمايند. در علم زيست سنجی از اطلاعات زيست شناسی برای تشخيص هويت افراد استفاده می گردد. برخی از روش های اعتبار سنجی مبتنی بر زيست شناسی کاربران ،  بشرح زير می باشند :

  • پيمايش اثر انگشت ( انگشت نگاری )

  • پيمايش شبکيه چشم

  • پيمايش صورت

  • مشخصه صدا

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

Checksum . يکی از قديمی ترين روش های استفاده شده برای اطمينان از صحت ارسال اطلاعات است . Checksum ،  به دو صورت متفاوت محاسبه می گردد . فرض کنيد Checksum يک بسته اطلاعاتی دارای طولی به اندازه يک بايت باشد ،  يک بايت شامل هشت بيت و هر بيت يکی از دو حالت ممکن ( صفر و يا يک ) را می تواند داشته باشد. در چنين حالتی 256 وضعيت متفاوت می تواند وجود داشته باشد. با توجه به اينکه در اولين وضعيت ،  تمام هشت بيت مقدار صفر را دارا خواهند بود ،  می تواند حداکثر 255 حالت متفاوت را ارائه نمود.
 ▪ در صورتيکه مجموع ساير بايت های موجود در بسته اطلاعاتی ،  255 و يا کمتر باشد ،  مقدار Checksum شامل اطلاعات واقعی و مورد نظر خواهد بود.
 ▪ در صورتيکه مجموع ساير بايت های موجود در بسته اطلاعاتی ، بيش از 255 باشد ،  Checksum معادل باقيمانده مجموع اعداد بوده مشروط بر اينکه آن را بر 256 تقسيم نمائيم . مثال زير ،  عملکرد CheckSum را نشان می دهد.

Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6 Byte 7 Byte 8 Total Checksum
212 232 54 135 244 15 179 80 1,151 127
  • 1,151 / 256 = 4.496 (round to 4)
  • 4 x 256 = 1,024
  • 1,151 - 1,024 = 127

Cyclic Redundancy Check)CRC) .  روش CRC در مفهوم مشابه روش Checksum است . روش فوق از تقسيم چمد جمله ای برای مشخص کردن مقدار CRC استفاده می کند.  طول CRC معمولا" 16 و يا 32 بيت است .  صحت عملکرد روش فوق بسيار بالا است . در صورتيکه صرفا" يک بيت نادرست باشد ،  CRC با مقدار مورد نظر مطابقت نخواهد کرد.
روش های Checksum و CRC امکانات مناسبی برای پيشگيری از بروز خطای تصادفی درارسال اطلاعات می باشند،  روش های  فوق در رابطه با حفاظت اطلاعات و ايمن سازی اطلاعات در مقابل عمليات غير مجاز بمنظور دستيابی و استفاده از اطلاعات ،  امکانات محدودتری را ارائه می نمايند. رمزنگاری متقارن و کليد عمومی ،  امکانات بمراتب مناسب تری در اين زمينه می باشند.
بمنظور ارسال و دريافت اطلاعات بر روی اينترنت و ساير شبکه های اختصاصی ،  از روش های متعدد  ايمنی استفاده می گردد. ارسال اطلاعات از طريق شبکه نسبت به ساير امکانات موجود نظير : تلفن ،  پست  ايمن تر می باشد . برای تحقق امرفوق می بايست از روش های متعدد رمزنگاری و پروتکل های ايمنی بمنظور ارسال و دريافت اطلاعات در شبکه های کامپيوتری خصوصا" اينترنت استفاده کرد.

پشتیبانی