رمزنگارى: راهحلى براى حفظ امنيت دادهها (بخش نخست)
نام نویسنده: دنى بردبرى
همكاران سيستم – آيا روشى وجود دارد كه رمزنوشتهها را از تعرض حفظ كند؟ چه فناورىهايى برا نيل به اين هدف در دسترس است؟
از زمان ظهور كامپيوترهاى جديد همواره با مسالهى رمزنگارى روبهرو بودهايم. بنابراين وجود اولين كامپيوترهاى قابل برنامهنويسى در جنگ جهانى دوم (Colossus) براى رمزگشايى پيغامهاى جنگ چندان هم تصادفى نبوده است.
رمزنگارى به معناى استفاده از رمزهاى مخصوص در پيغامهاست؛ به اين شكل كه خواندن اين مطالب بدون به كاربردن كليد رمزگشا (تراشه) يا محاسبات رياضى امكانپذير نيست. هرچه طول تراشه (تعدادبيتها) بيشتر باشد حل معما سختتر خواهدبود. با وجود آنكه شكستن بسيارى از رمزها به شكل عملى امكان پذير نيست، با صرف زمان و نيروى پردازش كافى تقريبا مىتوانيم همهى رمزها را در بررسىهاى تئورى حل كنيم.
برنادر پارسن، مدير ارشد بخش فناورى شركت امنيت نرمافزار BeCrypt، در اينباره توضيح مىدهد كه دو روش اصلى رمزگذارى مجزا وجود دارد. روش رمزنگارى متقارن كه به دوران امپراطورى روم برمىگردد و رمزنگارى نامتقارن كه قدمت چندانى ندارد.
در رمزنگارى متقارن يك فايل (براى مثال براى حفظ اطلاعات ذخيره شده در يك لپتاپ در ماجراى سرقت) از يك تراشهى منفرد براى رمزگذارى و رمزگشايى اطلاعات استفاده مىشود. پارسن مىگويد: ”با افزايش درك عمومى نسبت به فعاليتهاى رمزشناسى، الگوريتمهاى زيادى مبتنى بر سايل پيچيدهى رياضى به اين حوزه سرازير شد.“
قبل از هر چيز بايد بدانيم كه اين مسايل با استفاده از روشهاى معمول محاسبه قابل حل نيستند. همچنين بيان اين نكته ضرورى است كه تنظيم اين مسايل نه تنها به مهارتهاى خاصى در حوزهى رياضيات نيازمند است بلكه براى جلوگيرى از بروز مشكلات به هنگام مبادلهى فايلها، گروههاى مختلف بايد براى استفاده از الگوريتمهاى مشابه رمزنويسى و رمزگشايى با يكديگر توافق داشته باشند.
درنتيجهى اين محاسبات و با ظهور كامپيوترهاى مدرن در اواسط دههى 70 استانداردهاى اين رشته به بازار معرفى شد. از اولين استانداردها مىتوانيم به اتاندارد رمزنگارى اطلاعات (DES)، الگوريتمى كه از تراشههايى به طول 56 بيت استفاده مىكند، اشاره كنيم. در آن زمان بانكها از DES در دستگاههاى خودكار تحويل پول استفاده مىكردند، اما با افزايش قدرت پردازش، DESهاى سهتايى جاى آنها را گرفتند. DESهاى سهتايى اطلاعات مشابه را سه بار و با استفاده از الگوريتم DES اجرا مىكردند، به اين ترتيب عملكرد آنرا تضمين مىكردند.
پارسن مىگويد: ”در اواخر دههى 80 شيوهى فعاليت DESهاى سهتايى زير سوال قرار گرفت. يك روش رمزنويسى جديد به نام AES (استاندارد رمزنويسى پيشرفته) در سال 2001 پيشنهاد شده است و هنوز هم بىهيچ مشكلى پاسخگوى مشكلات است.
رمزنويسى متقارن روش قابل قبولى است اما اگر مىخواهيد گيرنده، پيغام رمزى شما را رمزگشايى كند، چهگونه اطمينان حاصل مىكنيد كه اين پيغام به فرد مورد نظر برسد؟ مىتوانيد تراشه را با يك تراشهى ديگر رمزنويسى كنيد، اما مشكل فرستادن اين تراشهى دوم به گيرندهى مورد نظر هنوز هم به قوت خود باقى است. نبود امكان انتقال فيزيكى پيامها در تجارت راه را براى تجاوز و رمزگشايى بدون اجازهى آنها براى افراد فرصتطلب گشوده است و اينجا است كه روش دوم؛ يعنى رمزنگارى نامتقارن (كليد عمومى رمزگشايى) قابليتهاى خود را نشان مىدهد. كليد عمومى رمزگشايى ز دو كليد استفاده مىكند: روش عمومى و روش اختصاصي. در صورت استفادهى يك روش براى رمزنگارى با روش ديگر رمزگشايى مىكنيم. اگر شركت A قصد دارد پيغامى را به شركت B بفرستد از كليد عمومى شركت B استفاده مىكند. اين كليد رمزنويسى در اختيار همهى كاركنان اين شركت است. با يكبار رمزنگارى تنها راه براى رمزگشايى اين پيغام به كاربردن كليد اختصاصى است كه فقط فرد گيرنده آن را داراست. ايجادكنندگان اين روش همچنين بخش امنيتى RSA را به وجود آوردند كه در توليدات فعلى خود نيز از الگوريتم فوق استفاده مىكند.
مايك وگارا، رييس بخش مديريت توليد RSA، مىگويد: ”كليد رمزنويسى متقارن همواره از روش نامتقارن سريعتر عمل مىكند، بنابراين كافى است براى رمزنگارى از روش متقارن استفاده كرده، الگوريتم RSA را براى رمزگشايى به كار بريد. كمترين طول تراشهى AES، 128 بيت و كمترين طول تراشهى الگوريتم RSA، 1024 بيت است. اما عامل برقرارى توازن در اين ميان به گفتهى نيكو ون سومرن، رييس بخش فناورى در شركت توليدكنندهى تراشههاى رمزنگارى، رمزگشايى RSA بسيار مشكل است. او ادعا مىكند كه از نظر زمانى رمزگشايى تراشههاى RSA، 30 هزار واحد زمانى طول مىكشد. روش جاىگزين الگوريتم RSA، منحنى رمزنگارى بيضوى است كه با 160 بيت كار مىكند. از اين منحنى به عنوان كليد رمزنگاى نامتقارن در تلفنهاى هوشمند استفاده مىشود.
اما استفاده از اين راهحل نيز مشكل تاييد را حل نمىكند. اگر شركت A با استفاده از كليد عمومى B تراشهاى را رمزنگارى نكند و آن را براى شركت B ارسال كند، با هيچ روشى نمىتوانيم بفهميم كه اين تراشه را شركت A فرستاده است. ممكن است پاى دستهى سومى در ميان باشد و قصد آنها از فرستادن اين پيغام گيج كردن شركتB باشد.امضاى ديجيتالى پايانى بود براى تمام اين مشكلات، به اين شكل كه افراد تراشهها و پيغامهاى ارسالى خود را امضا مىكنند.
شركت Aبا استفاده از كليد خصوصى خود امضايى ديجيتالى طراحى مىكند. مانند قبل اين شرت پيغام مورد نظر خود را با استفاده از يك الگوريتم متقارن رمزنگارى مىكند، سپس با به كاربردن كليد عمومى B تراشه را رمزنگارى مىكند. اما شركت A با استفاده از يك الگوريتم محاسباتى به نام تابع مخرب پيغام بدون رمز را اجرا مىكند. اين تابع زنجيرهاى منفرد از اعداد توليد مىكند. سپس اين زنجيره را با كليد اختصاصى خود رمزنگارى مىكند. در مرحلهى آخر همهچيز به شركت B ارسال مىشود.
مانند گذشته شركت B از كليد اختصاصى خود براى رمزگشايى تراشهى متقارن و همچنين پيغام A استفاده مىكند. در مرحلهى بعد B از كليد عمومى A براى رمزگشايى زنجيرهى تخريب استفاده مىكند. در واقع B از همان الگوريتم مورد استفادهى A براى ساختن زنجيرهى ياد شده براى رمزگشايى به كار مىبرد. در صورت تطابق اين دو الگوريتم، B به دو نكتهى اساسى پى مىبرد: اول اين كه اين پيغام همان پيغام ارسالى A از طريق الگوريتم ياد شده است و در طول مسير، مورد سو استفاده قرار نگرفته است. ديگر اين كه اين پيغام، به طور قطع از جانب A ارسال شده است؛ زيرا B با كليد عمومى A آن را رمزگشايى كرده است. به اين معنا كه اين پيغام با كليد اختصاصى مشابهى رمزنگارى شده است.
منبع : www.ComputerWeekly