بخشی از مقاله
*** این فایل شامل تعدادی فرمول می باشد و در سایت قابل نمایش نیست ***
بررسی تهدیدات امنیتی انتقال داده در رایانش ابری
چکیده: رایانش ابری مدلی است که دسترسی به منابع محاسباتی، سرورها، منابع کاربردی و انواع سرویس ها را با سرعت مناسب و به آسانی فراهم می کند. هزینه پایین و مقرون به صرفه بودن آن، رایانش ابری را به یک بستر ایده آل برای به کارگیری معماری سرویس محور تبدیل کرده است. به دلیل استفاده گسترده کاربران، اعم از معمولی و شرکت های بزرگ، ضروری است که تهدیدات امنیتی در انتقال داده به ابر را بررسی کنیم. در این مقاله ابتدا رایانش ابری و امنیت آن به طور مختصر معرفی می شود. سپس به بررسی تهدیدات امنیتی در انتقال داده، الگوریتم جدید رمزنگاری بر پایهء همریختی کامل و حمله به پیام Soap در رایانش ابری می پردازیم.
واژگان کلیدی: الگوریتم رمزنگاری همریختی، امنیت داده، انتقال داده، رایانش ابری و پیام . Soap
-1 مقدمه
موسسه فناوری و استانداردهای ملی آمریکا (NIST) رایانش ابری را اینگونه تعریف میکند: " رایانش ابری مدلی برای ایجاد سهولت در درخواست دسترسی به شبکه به منظور به اشتراک گذاشتن مجموعه ایی از منابع محاسباتی با قابلیت پیکره بندی شدن ( مانند شبکه ها، سرورها، سیستم های ذخیره سازی و سرویس ها) که سریعاً و با صرف کمترین عملیات های مدیریتی و تعامل با فراهم کننده خدمات، قابل دسترس می باشند .[1]"
ابر تصویری است انتزاعی از شبکه ایی عظیم و توده ایی که حجم آن مشخص نیست. رایانش ابری یک تغییر بسیارعمده را در چگونگی ذخیره سازی اطلاعات و اجرای برنامه های کاربردی به وجود آورده است. به جای قرار گرفتن برنامه های کاربردی و داده ها بر روی کامپیوتر شخصی، همه چیز بر روی ابر که مجموعه ایی متشکل از چندین کامپیوتر و سرور است که از طریق اینترنت به آنها دسترسی می یابیم میزبانی می شود. رایانش ابری به کاربران اجازه می دهد به تمام برنامه های کاربردی و اسناد خود، از هرجایی از دنیا دسترسی پیدا کنند.[1]
سرویس های ابری غالباً به سه شکل: زیر ساخت به عنوان سرویس (IAAS)، سکو به عنوان سرویس (PAAS ) و نرم افزار به عنوان سرویس (SAAS) ارائه می شود. دغدغه وجود امنیت در ذخیره سازی، پردازش و انتقال داده در سیستم رایانش ابری معمولا به دو دلیل است :
· کاهش دسترسی و کنترل صاحب داده، به دلیل مدیریت آن توسط سازمانی در مکانی نا معلوم.
· وجود داده ها در چندین مکان، چند اجاره ایی بودن ابر و احتمالبُروز خطا و از بین رفتن اطلاعات.[2]
-2 امنیت انتقال داده در رایانش ابری
امنیت رایانش ابری، زیر مجموعه ایی از امنیت کامپیوتر، امنیت شبکه و حتی به صورت گسترده تر امنیت داده است که به مجموعه ایی از خط مشی ها، فناوری ها و کنترل هایی اشاره دارد که برای محافظت داده ها، برنامه ها و زیرساخت مربوط به رایانش ابری اشاره دارد. از نظر تئوری، داده های ذخیره شده برروی ابر به دلیل اینکه بین چندین ماشین اشتراک گذاری شده اند، دارای امنیت کافی هستند، اما در صورتی که سیستم های مبتنی بر ابر، هک شوند یا داده های کاربران مفقود شوند، هیچ نسخه پشتیبان فیزیکی در اختیار نخواهد بود. موضوعات مطرح در حوزهء امنیت اطلاعات مفاهیم رایانه، شبکه و امنیت داده ها در فضای سایبری همانند دنیای واقعی هستند، ولی مکانیزم های پیاده سازی روال های مرتبط با آنها متفاوت است.[3]
-1-2 انتقال داده به ابر
اطلاعاتی که برروی ابر قرار دارد، توسط کاربران آن ایجاد می شود. زمانی که مشتریان اطلاعات خود را روی ابر منتقل می
کنند، این اطلاعات برای سازمان ارائه دهنده سرویس قابل دسترسی است و ممکن است مورد سوء استفاده قرار بگیرد. همچنین ممکن است درحین انتقال به ابر توسط یک خرابکار که در حال کنترل شبکه است به سرقت برود. برای مقابله با این تهدید، می توان از رمزنگاری اطلاعات کاربران با استفاده از الگوریتم های رمزنگاری و یا مکانیزم های امنیتی مثل VPN استفاده کرد.[4]
-2-2 الگوریتم رمزنگاری همریختی کامل
رایانش ابری ویژگی های زیادی از قبیل چند کاربره بودن، مجازی سازی، مقیاس پذیری و غیره دارد. بخاطر همین ویژگی هاست که تکنولوژی های امنیتی قدیمی نمی توانند به طور کامل امنیتِ انتقال و ذخیره سازی داده را در رایانش ابری تامین کنند. به منظور حل این مشکل در سیستم رایانش ابری روش های زیادی برای رمزنگاری داده ها ارائه شده که الگوریتم رمزنگاری همریختی کامل، یکی از این روش ها می باشد که برای مشکل ناامنی امنیت داده ها در رایانش ابری پیشنهاد شده است. این راه حل امنیتی جدید، به طور کامل برای پردازش و بازیابی داده های رمزنگاری شده مناسب است و به شکل گسترده در امنیتِ انتقال و ذخیره سازی داده ها در رایانش ابری موثر
است.
-1-2-2 اصل رمزنگاری همریختی کامل: اصل رمزنگاری همریختی کامل شامل 4 روش می شود. آنها الگوریتم تولید کلید، الگوریتم رمزنگاری، الگوریتم رمزگشایی و الگوریتم ارزیابی اضافی هستند. رمزنگاری همریختی کامل شامل 2 نوع همریختی اصلی است. آنها الگوریتم تکثیر رمزنگاری همریختی کامل و الگوریتم افزایشی رمزنگاری همریختی کامل می باشند. ضرب و جمع با خواص همریختی. در الگوریتم رمزنگاری همریختی تا قبل از سال 2009 فقط از جمع و یا ضرب همریختی پشتیبانی می شد.[5] الگوریتم رمزنگاری همریختی کامل یک الگوریتم جستجوی رمزنگاری است که می تواند از تعدادی الگوریتم جمع و تعدادی الگوریتم ضرب در داده های رمزنگاری تشکیل شده باشد.
الف) الگوریتم رمزنگاری : P ، q و r پارامترهای رمزنگاری می باشند، که در آن p عددی فرد و مثبت است و q عدد صحیحی بزرگ و مثبت است. P و q در مرحله تولید کلید مشخص می شوند. P یک کلید رمزنگاری است و r عددی
تصادفی که در هنگام رمزنگاری انتخاب می شود. برای محاسبه مقدار m از رابطه زیر استفاده می شود :
سپس شما می توانید متن رمزنگاری شده را دریافت نمائید.
ب) الگوریتم رمزگشایی:
با توجه به رابطه :
و چون pq کمتر از 2r + m است پس:
را می توان نتیجه گرفت و نسبت به رمزگشایی اقدام نمود.
-2-2-2 تأیید همریختی الف) تائید مالکیت همریختی افزایشی: فرض کنید دو
سری متن m2 و m1 وجود دارد. نحوه رمزنگاری و تبدیل آنها به متن رمز شده به این شکل است:
با توجه به رابطهء:
به این نتیجه می رسیم که:
و تا زمانی که مقدار (m1+m2) + 2(r1+ r2) کمتر از p باشد، پس:
و این الگوریتم شرایط همریختی افزایشی را فراهم می کند.[6]
ب) تائید مالکیت ضرب همریختی: با توجه به رابطه:
به همین دلیل به این نتیجه می رسیم که :
و تا زمانی که مقـدار m1m2 + 2(2r1r2 + r1m2 + r2m1) کمتـر از p
باشد، پس:
c4 = ( c1 × c2) modp = m1m2 + 2 ( 2r1r2 + r1m2 + r2m1)
و این الگوریتم شرایط ضرب همریختی را فراهم می کند.[7]
-3-2-2 ساختار امنیتی و شکل بکارگیری
شکل :1 نمودار ساختار امنیتی برنامه [8]
الف) حفاظت از حریم خصوصی: کاربر داده های خود را به صورت رمزنگاری شده بر روی ابر منتقل و ذخیره می کند. باید در هر دو حالت انتقال و ذخیره سازی داده از لحاظ امنیتی اطمینان حاصل شود. اگرچه ارائه دهندگان رایانش ابری به تمامی خدمات دسترسی دارند، اما به راحتی نمی توانند به اطلاعات موجود در متن شما دسترسی پیدا کنند.[8]
ب) پردازش داده ها: مکانیزم رمزنگاری همر?خت? کامل به کاربران امکان می دهد که با اعتماد به طرف سوم به جای داده های اصلی به طور مستقیم روی داده های رمزنگاری شده پردازش را انجام دهند. کاربران می توانند با بدست آوردن نتایج ریاضی به اطﻻعات خوبی برای رمزگشایی دست پیدا کنند. مثلا در سیستم اطﻻعات پزشکی، سوابق پزشکی به صورت الکترونیکی و رمزنگاری شده در سرور ابر ذخیره میشود. وقتی که بخش پزشکی (سﻻمت) به مشکﻻت ایمنی حادی در حوزه سلامت رسیدگی می کنند، آنها باید از محل و وسعت آن بیماری خاص مطلع باشند.[9] آنها می توانند اطلاعات
الکترونیکی رمزنگاری و ثبت شده را به سرویس پردازش حرفه ای اطلاعات بدهند. سپس می توانند اطلاعات درست را پس از رمزگشایی دریافت کنند.[10]
ج) بازیابی متن رمز شده: الگوریتم رمزنگاری همریختی کامل، براساس متن رمزشده می تواندمستقیماً روی اطلاعات رمز شده جستجو کند. در این الگوریتم نه تنها با سئوالات امنیتی از حریم خصوصی حفاظت می شود و کارایی بازیابی بهتر می شود، بلکه می توان روی اطلاعات بازیابی شده جمع و ضرب انجام داد بدون اینکه در متن اصلی تغییری ایجاد شود. [11] سه نسل از فناوری های دفاع از شبکه در گذشته به نظر می رسید. در نسل اول ابزارهایی برای جلوگیری از نفوذ طراحی شده بود. این ابزارها معمولاً خودشان با سیاست های کنترل دسترسی، یا نشانه ها و غیره، سیستم های رمزنگاری را کنترل می کردند. با این حال همیشه یک نفوذگر می توانست به
سیستم نفوذ کند چون همیشه یک نقطه ضعیف در روند تامین امنیت وجود داشت. در نسل دوم در صورت تشخیص نفوذ اقدامات اصلاحی و ترمیمی به موقع انجام می شد. این تکنیک شامل دیوار آتش (FIREWALL)، سیستم های تشخیص نفوذ (IDS)، خدمات مربوط زیر ساخت های کلید عمومی (PKI) و سیستم های معتبر در این حوزه بود. نسل سوم پاسخ های هوشمندانه تری برای نفوذها فراهم می کرد.
-3-2 پیام SOAP
حالا که با یکی از الگوریتم های رمزنگاری آشنا شدیم برای درک بهتر آن به این مطلب توجه کنین . SOAP پیام های متنی مبتنی بر XML هستند که برای تبادل داده های رمزنگاری شده بین وب سرور و کاربر با استفاده از پروتکل های مختلف از جمله HTTP ، SMTP و MIME به کار می روند .[12]