بخشی از مقاله
چکیده
با گسترش خدمت های دولت الکترونیکی و خدمات ابری، دادهها و اطلاعات سازمانی به مهمترین دارایی هر ارگانی تبدیل شدهاند. در این را ستا، سازمانها در کنار تولید و پردازش بی شتر دادهها، تلاش میکنند راهکارهای کارآمدی جهت حفاظت، نگهداری و مدیریت این دادهها ارایه نماید. یکی از فناوری های کارآمد ذخیره سازی و پردازش ابر داده ها بهره برداری انجام محا سبات تحت ابر است.
با این وجود نگرانیهای فراوانی در حوزه حفظ حریم خ صو صی در این ف ضا اح ساس می شود. بکارگیری الگوریتم های رمزنگاری قابل جستجو در زیر ساخت های ابری کمک شایانی در حفظ محرمانگی و حریم خصوصی افراد و سازمانها با حفظ امکان جستجو در پیامهای رمزنگاری شده فراهم می نماید.
در مقاله پیش رو ابتدا حملات جدید تزریق پیام و تزریق شاخص به طرح های رمزنگاری قابل جستجوی کلید عمومی معرفی می گردند. سپس ضمن تحلیل طرح های PEKS و PERKS در برابر این حمله طرح جدیدی برای مقابله با این حملات ارائه گردیده ا ست. سپس ضمن برر سی طرح پیشنهادی در کنار طرح dPEKS نشان داده شده است که طرح ترکیبی از سطح امنیتی بالاتری برخوردار است.
1 مقدمه
با توجه به گسترش سریع فناوری اطلاعات و افزایش چشمگیر نرخ تولید و تبادل اطلاعات، نیاز به فضای کافی برای ذخیرهسازی این اطلاعات هر روز بیشتر احساس میشود. فناوری رایانش ابری و به صورت خاص فضای ذخیرهسازی ابری، جهت تأمین این نیاز به وجود آمده است و در حال حاضر شرکت های متعددی خدمات ذخیره سازی و اشتراک گذاری محتوا روی بستری ابری را فراهم نموده اند.
استفاده از این خدمت بهدلیل اقتصادی بودن و همیشه در دسترس بودن دادهها - بدون توجه به زمان و مکان - بسیار محبوب گشته و فضاهای ذخیرهسازی ابری، به صورت گسترده برای خدماتی مانند پشتیبانگیری و برونسپاری دادهها - جهت کاهش هزینهی عملیاتی - استفاده میشوند.
متاسفانه ماهیت زیر ساخت ابری و دسترسی کاملی که مدیران شرکت های فراهم کننده ابر و همچنین نفوذگران به دادهها می توانند داشته باشند نگرانی هایی در خصوص اعتماد به برون سپاری داده ها برای کاربران ایجاد نمودهاست. اصولاً چالش نقض محرمانگی دادهها و حریم خصوصی کاربران یکی از نگرانیهای عمده در جهت توسعه خدمات ابری است. بهعنوان مثال این امکان وجود دارد که صاحبان فضای ذخیرهسازی داده،بخش یا کلیه اطلاعات و زیر ساخت خود را بر اساس اجبار یا انتفاع اقتصادی به شرکت یا کشوری متخاصم بفروشند و عملاً حجم زیادی از اطلاعات در اختیار یک شخص یا شرکت غیر قابل اعتماد قرار بگیرد.
بنابراین برای ذخیره ایمن اطلاعات حساس روی سرویسدهندههای نامطمئن، دادهها باید رمزنگاری شوند. این کار موجب کاهش خطرات نقض محرمانگی و فاش شدن حریم خصوصی می شود که با پنهان کردن دادهها فراهم میگردد. رمزنگاری داده های ذخیره شده، دسترسی مدیران سرویسدهنده ابری و نفوذگرانی که فاقد کلید هستند را غیرممکن می سازد.
متاسفانه رمزنگاری داده ها و ویژگی شبه تصادفی الگوریتم های رمزنگاری، وابستگی آماری داده رمز شده به داده اصلی را بسیار کاهش داده و موجب از بین رفتن قابلیت جستجو در دادهها در فضای ابری میشود. یک راهحل بدیهی جهت توانمندسازی به جستجو، دانلود کل پایگاه داده، خارج کردن آن از حالت رمزشده و جستجو برای نتیجه مورد نظر است
.برای بیشتر کاربردها این راهکار غیرعملی است. روش دیگر اجازه دادن مقطعی به سرویس دهنده برای رمزگشایی دادهها و اجرای پرسوجو روی سرویسدهنده و ارسال نتایج به کاربر است. روش سوم که موضوع بحث این مقاله خواهد بود، رمزنگاری قابل جستجو است. در این راهکار، به سرویسدهنده این قابلیت داده میشود که بدون یادگیری اطلاعات روی دادههای رمز شده جستجو انجام دهد و نتیجه را به کاربر بازگرداند.
رمزنگاری قابل جستجو به طور کلی شامل چهار مرحله میشود. در مرحله اول رمزهای مورد نظر تولید میشود. در مرحله دوم دادهها به علاوه شاخصها رمزنگاری میشوند. در مرحله سوم کاربر مجاز که مایل به جستجو است اقدام به ایجاد یک دریچه با استفاده از کلمه کلیدی مورد نظر خود و همچنین کلید مجاز می نماید. در مرحله چهارم سرویسدهنده اطلاعات دریچه ایجاد شده را با شاخصهای موجود تطبیق میدهد که در صورت تطابق یک و در صورت عدم تطابق صفر باز میگرداند. این مرحله توسط تابع آزمون انجام میگیرد
در این مقاله ابتدا دسته جدیدی از حملات روی طرحهای رمزنگاری کلید عمومی با قابلیت جستجوی کلمه کلیدی تحت عنوان حمله تزریق تشریح میشود. بر اساس مطالعات صورت گرفته این روش حمله تنها در روش حدس کلمه کلیدی برخط و جهت افشای پیام مورد بهرهبرداری قرار گرفته است و تاکنون حملهای بهروش ارایه شده در این مقاله انجام نگرفته است. سپس راهکار پیشنهادی برای مقابله با این حملات ارائه میگردد. با توجه به اینکه طرح ارائه شده قابلیت دفاع در برابر حملات حدس کلمه کلیدی برخط را دارد، استفاده از آن در کنار طرح [3] dPEKS میتواند بهعنوان جایگزینی بهبود یافته برای طرح [4] SPEKS در نظر گرفته شود.
کاربرد مناسب برای طرح ارائه شده مواردی مانند سلامت الکترونیکی یا تبادلات میان بانکی است که ارسال کننده اطلاعات، از قبل تعیین شده است و سایر ارسالکنندگان اجازه ارسال اطلاعات ندارند. در واقع در این کاربرد تعدادی کاربر، مجاز به ارسال اطلاعات هستند و اگر شخص دیگری اقدام به ارسال اطلاعات نماید به معنای تلاش وی برای اختلال در شبکه است. با توجه به گسترش روز افزون کاربرد کاربردهای مذکور و نیاز آنها به امنیت بالا طرحی پیشنهاد گردیده که امنیت مورد نیاز تأمین گردد.
هدف اصلی این نوشتار تشریح حملات تزریق در رمزنگاری قابل جستجو و ارائه راهکاری برای مقابله با آن است که در ادامه بشرح زیر ارائه خواهد شد: در بخش دوم، پیشینه تحقیق در راستای طرح پیشنهادی مقاله ارایه می گردد. در بخش سوم پیشنیازهای طرح آمده است. در بخش چهارم، طرح جدیدی از حملات تزریق در رمزنگاری قابل جستجوی ارایه گردیده و تعاریف مورد نیاز ارائه میگردد. در بخش پنجم به معماری پیشنهادی پرداخته خواهد شد. در بخش ششم طرح پیشنهادی شرح داده میشود و بخش هفتم به تحلیل طرح معرفی شده میپردازد. بخش انتهایی، به نتیجهگیری و جمعبندی این نوشتار اختصاص دارد.
2 پیشینه تحقیق
اولین طرح ارائه شده عملی برای انجام جستجو روی متن رمزشده - رمزنگاری قابل جستجو - توسط Song و همکارانش ارائه گردید .[5] این طرح براساس رمزنگاری متقارن ارائه شده بود بطوریکه در این طرح صاحب داده و کاربر هر دو یک نفر هستند. این طرح همچنین حاوی شاخص نبود.
از دیگر سو، اولین طرح رمزنگاری نامتقارن - رمزنگاری کلید عمومی با قابلیت جستجوی کلمات کلیدی - توسط Boneh و همکارانش ارائه گردید .[6] این طرح از رمزنگاری شناسه بنیاد برای پیادهسازی رمزنگاری قابل جستجو بهصورت نامتقارن استفاده نمود. با این وجود طرح ارائه شده توسط وی در برابر حملات حدس کلمه کلیدی آسیبپذیر بود.
جهت حل این مشکل طرح [7] PERKS ارائه گردید. در این طرح کلمه موردنظر ابتدا با یک رشته سری تتفیق و سپس درهم میشود. این کار در سمت دریافتکننده صورت میگیرد. طرح مذکور با وجود اینکه در برابر حمله حدس کلمه کلیدی مقاوم بود، با اشکالات بنیادین مانند نیاز به برخط بودن همیشگی دریافتکننده همراه بود. تلاش دیگر برای حل این مشکل، طرح dPEKS بود که دربرابر حملات حدس کلمه کلیدی غیربرخط مقاوم است. اما این طرح نیز در برابر حملات حدس کلمات کلیدی برخط آسیبپذیر است. در سال 2013 حملهای روی این طرح انجام گرفت که بهدلیل تعامل نفوذگر با سرویسدهنده، حمله حدس کلمه کلیدی برخط لقب گرفت
در سال 2015، Chen طرحی برای ایمن نمودن طرح dPEKS در برابر حملات برخط ارائه کرد. با این وجود این طرح همچنان در مقابل سرویسدهنده داخلی آسیبپذیر بود. در طرح دریچه یک بار مصرف برای رمزنگاری قابل جستجو، ایدهای برای جلوگیری از حملات حدس کلمات کلیدی ارائه گردید
این طرح در برابر حملات غیربرخط و برخط مقاوم است و همچنین امنیت دریچه را بهصورت کامل تأمین مینماید - حتی در برابر سرویسدهنده - . با این وجود در این طرح راهکاری جهت تغییر شاخص و همچنین اضافه نمودن پیام جدید توسط شخص غیر مجاز ارائه نگردید. بطور دقیق تر بیشتر طرح های بررسی شده در برابر حمله تزریق متن و حمله تزریق شاخص که در این مقاله معرفی گردیده است، آسیب پذیر هستند و اصولا با توجه به مبنای کلی طرح های جدید که بر اساس ایده dPEKS هستند آسیب پذیری در برابر حملات تزریق را به ارث می برند.
3 پیشنیازها
در این بخش به بررسی پیشنیازهای طرح معرفی شده میپردازیم.
1؛3 نگاشت دوخطی
نگاشت دوخطی کاربردهای فراوانی در رمزنگاری دارد. از نگاشت دوخطی بهصورت گسترده در رمزنگاری کلید عمومی با قابلیت جستجوی کلمه کلیدی استفاده میشود.
این نگاشت دارای خواص زیر است:
-1 رابطه دوسویی: رابطه زیر همواره برقرار است:
-2 پایستگی: اگر g مولد 1 باشد e - g , g - مولد 2 است.
-3 محاسبهپذیری: الگوریتمی برای محاسبه e - 1 , 2 -
به ازای 1 , 2 ∈ 1 وجود دارد. نگاشت ویل و نگاشت تیت روشهایی برای محاسبه نگاشت دوخطی روی خم بیضوی هستند.
-4 همچنین رابطه زیر همواره برقرار است:
2؛3 مسئله لگاریتم گسسته و دیفی هلمن
مسئله لگاریتم گسسته روی گروههای دوری محدود تعریف میشود. اگر g و h اع ضای یک گروه دوری محدود با شند، این م سئله به صورت معادله gx = h نمایش داده می شود و به آن لگاریتم گ س سته h در پایه g گوییم. در حال حاضر الگوریتم کارایی برای حل مسئله لگاریتم گسسته در ارائه نگردیده است. به همین جهت این مسئله در رمزنگاری نامتقارن از جایگاه ویژهای برخوردار است.
رمزنگاری دیفی هلمن بر اساس همین ایده طراحی شده است. این قضیه بیان میکند که تنها با استفاده مجزا از ga و gb و بدون داشتن مقدارهای a یا b، محاسبه gab در زمان چند جملهای امکانپذیر نیست. این ق ضیه برای تبادل کلید کاربرد دارد. همچنین این ق ضیه در طرح dPEKS جهت تأمین امنیت دریچه و همچنین تصادفی کردن آن از مهاجم خارجی استفاده گردیده است.
4 معرفی حملات تزریق و تحلیل امنیتی طرحهای PEKS و PERKS
در این بخش دسته جدیدی از حملات پروتکلی بنام حمله تزریق روی ساختار های رمزنگاری قابل جستجو پیشنهاد می شود و در ادامه امنیت طرح های PEKS و PERKS در برابر این حمله مورد برر سی قرار گرفته و آسیب پذیری این دو طرح مهم نشان داده خواهد شد.
بهطور کلی ایده اصلی حملات تزریق برگرفته از مدل بهبود یافته حمله حدس کلمه کلیدی برخط است که در [8] ارایه شده است. با این حال این حمله با ایده معرفی شده در [4] توانایی نقض محرمانگی دریچهها را از دست می دهد. با این حال حمله تزریق روی مفهوم تمامیت داده متمرکز شده و قابلیت اجرایی موثرتری نسبت به حمله معرفی شده دارد.
به طور کلی در حملات تزریق، هدف مهاجم، نقض محرمانگی پیام نیست. بلکه هدف از این حملات کاهش قابلیت اطمینان سی ستم و همچنین نقض صحت دادهها است. این حملات با وجود سادگی و کارآیی بالا برای مهاجم، میتوانند موجب اختلال در عملکرد سیستم رمزنگاری قابلجستجو شوند. در نتی جه با ید راه کاری در ج هت تقو یت امن یت طرح در برابر این حملات طراحی شود. در بخش 5 راهکاری پی شنهادی برای مقابله با این حمله ارایه شده ا ست. این حملات را میتوان به دو د سته کلی حملات تزریق پیام و حملات تزریق یا تغییر شاخص تقسیم نمود. در ادامه به معرفی این دو شیوه میپردازیم.
4-1 حمله تزریق پیام
در حمله تزریق پیام، نفوذگر میتواند پیام دلخواه خود را رمز کرده و آن را با رمزشده کل مات منت خب - با ه مان الگوریتم رمز کردن کل مات طرح رمزنگاری - تلفیق نماید و برای سرویسدهنده ار سال نماید. در این صورت اگر دریافتکننده، درخوا ستی برای کلمهای که نفوذگر با سند همراه نموده، ارائه دهد سند تزریق شده به او بازگردانده خواهد شد. اهداف این حمله میتواند نفوذ و خرابکاری در سی ستم دریافتکننده، پی بردن به کلمه مورد درخواست او، نمایش یک پیام غیر مجاز به او یا از کار انداختن سیستم رمزنگاری قابل جستجو باشد.
در [7]، Yao و همکارانش راهکاری جهت پی بردن به دریچه تولید شده بهروش dPEKS ارائه نمودند. این حمله به جهت این که نیاز به ارتباط نفوذگر با سرویسدهنده دارد، به حمله حدس کلمه کلیدی برخط معروف شد. در این حمله، نفوذگر اقدامات زیر را برای تمامی کلمات موجود در فرهنگ لغت انجام میدهد.
. کلمه مورد نظر را با همان الگوریتم رمزنگاری شاخص در طرح dPEKS رمز مینماید.
. آن کل مه را همراه با ه مان الگوریتم رمزن گاری پ یام در طرح dPEKS با کلید عمومی دریافتکننده رمز میکند.
. متن رمز شده را همراه با متن ساده آن - کلمه اصلی - در جدول ذخیره مینماید.
. شاخص رمز شده را همراه با متن رمزشده برای سرویسدهنده میفرستد.
حال اگر دریافتکننده درخوا ستی برای سرویسدهندهبفر ستد، حتماً حاوی یکی از کلمات موجود در فرهنگ لغت خواهد بود. بنابراینحتماً یکی از اسناد تولید شده توسط نفوذگر به دریافتکننده بازگردانده خواهد شد - سندی که رمزشده کلمه مورد درخواست است - . اگر نفوذگر اسناد بازگشتی را شنود نماید، میتواند با استفاده از جستجوی سند بازگشتی در جدول خود، کلمه متناظر را بازیابی نماید.
در این حمله، هدف نفوذگر پی بردن به پیام یا دریچهها نیست، بلکه هدف این است که دریافتکننده نتواند از اطلاعات موجود استفاده نماید و در کارکرد سیستم اختلال ایجاد شود. در این روش تک تک کلمات فرهنگ لغت با روش رمزنگاری بهکار رفته جهت تولید شاخص در طرح مورد نظر، رمز می شوند. سپس آنها را همراه با ا سناد دلخواه خود که با کلید عمومی دریافتکننده رمزشده برای سرویسدهنده میفرستد. در نتیجه این پیام همواره برای صاحبداده نمایش داده میشود. بنابراین اگر نفوذگر بخواهد پیامی همواره به دریافتکننده نمایش داده شود، میتواند از تکنیک بالا استفاده نماید. همچنین این پیام ارسالی میتواند فایلهای مخرب باشد.
از دیگر سو، با توجه به اینکه سرویسدهنده تمامی ا سناد منطبق با دریچه را به دریافتکننده باز میگرداند، اگر تعداد و حجم این اسناد ایجاد شده توسط نفوذگر زیاد شود، دریافت کننده نیاز به پهنای باند و سرعت د ستر سی بالا به سرویسدهنده و ف ضای ذخیره سازی بالایی دارد. بنابراین اگر حجم اطلاعات ار سالی تو سط نفوذگر زیادبا شد، عملاً سی ستم از کار میافتد.
4-2 حمله تزریق شاخص
نفوذگر میتواند با ا ستفاده از حمله مرد میانی پس از د ستر سی به سند رمز شده همراه با شاخص رمز شده اقدام به تغییراتی در شاخص رمز شده نماید. این تغییرات میتواند حذف چندین واژه کلیدی از شاخص یا افزودن چند واژه دلخواه به شاخص باشد. این حمله به محرمانگی پیام و شاخص لطمهای وارد نمیکند. با این وجود در کارکرد صحیح سیستم اختلال ایجاد مینماید. در شکل - - 1 طریقه این حمله که بهصورت مردی در میان انجام می شود، قابل محا سبه ا ست.