MCI پرس و جو روی داده های رمز شده رسول جلیلی درس امنیت پایگاه داده مقدمه • روشهاي کنترل دسترسي برای محافظت از داده ها کافي نیستند – سرقت رسانه محتوی داده – عدم اعتماد به اعمال کننده خط مشی های کنترل دسترسی – امکان دور زدن مکانیزم های کنترل دسترسی توسط مهاجمین • مطرح شدن ایده Database as A Serviceو سیستم های کارگزار غیرقابل اعتماد درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI مدل پایگاه داه به عنوان خدمت • پایگاه داده به عنوان خدمت ( )Database as A Serviceبه عنوان رویکردی جدیدد در برونسپاری پایگاه دادهها • در دسترس بودن داده ها توسط کارگزار تضمین می شود. • کلیه اعمال مدیریت داده را کارگزار فراهم می کند. • کارگزار از نظر نگهداري دادهها و عدم ارسال عمدي پاسخ اشتباه مورد اعتماد است. • کارگزار در مورد محرمانگي دادهها مورد اعتماد نیست. – کارگزار درستکار ولی کنجکاو است (.)Honest but curious درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI مدل پایگاه داده به عنوان خدمت • چالش اصلی در این مدل تأمین امنیت دادههای برونسپاری شده است. • راه حل اولیه رمزنگاری داده های برونسپاری شده است. • برای حفظ محرمانگی مالک داده ،داده خود را رمز کرده و آن را در پایگاه داده رمز شده در سمت کارگزار ذخیره می کند. • ریزدانگی رمزنگاری به خط مشی های محیط برای سطح دسترسی ،امنیت و کارایی بستگی دارد. – بیشتر فعالیت ها ریزدانگی را در سطح چندتایی تعریف کرده اند. درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI عناصر مدل DAS .1 مالک دادهها :فرد یا سازمان است که دادهها را ایجاد و آن را برونسپاري ميکند. .2 کاربر :پرسوجوها را به سیستم ارائه ميکند. .3 کدددارخواه :پرسوجوهددداي کددداربر را بددده پرسوجوهددداي قابدددل اجدددرا روي دادههددداي رمزشده تبدیل ميکند. .4 کارگزار :محل ذخیرهي دادههاي رمدز شدده اسدت و پرسوجوهداي ارسدالي از سدمت کارخواه را روي دادههاي رمزشده اجرا کرده و نتیجه را به کارخواه ارائه ميدهد. درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI سناریوی پرس و جو در مدل DAS .1 کاربر پرس و جوی Qرا با توجه به شمای پایگاه داده ی رمز نشده Bاز طریق کارخواه وارد می کند. – .2 برون سپاری داده می تواند از دید کاربر شفاف باشد. کارخواه پرس و جوی کاربر را به دو بخش Qsو Qcتقسیم می کندQs .پرس و جوی اعمال شده بر روی داده های رمز شده در سمت کارگزار و Qcپرس و جوی اعمال شده در سمت کارفرما بر روی داده های برگشتی از کارگزار به کارخواه است. – کارخواه ساختار پایگاه داده عادی و رمز شده را می داند .3 کارگزار پرس و جوی Qsرا روی داده رمز شده اجرا و نتایج (مجموعه ای از چندتایی های رمز شده) را به کارخواه بر میگرداند. .4 کارخواه نتایج را رمزگشایی کرده و چندتایی های اضافی را با اعمال Qcبه نتایج اولیه حذف می کند. نتایج نهایی به کاربر ارائه می شود. درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI سناریوی پرس و جو در مدل DAS MCI )1 )4 DBK )2 ` )3 DBK درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 مالحظات رمزنگاری در برون سپاری داده • روش هایی که بتوانند به طور مستقیم با داده های رمز شده کار کند باید مالحظات زیر را درنظر بگیرند: – میزان اعتماد به کارگزار • در مدل DASامکان رمزگشایی توسط کارگزار نامطمئن وجود ندارد. – کارایی روش اجرای پرس و جو • رمزگشایی کل داده های قبل از اجرای پرس و جو کارا نیست. – تمرکز اجرای اعمال در سمت کارگزار – سربار قابل قبول برای ذخیره سازی و ارتباطات بین کارفرما و کارگزار – ریزدانگی رمزنگاری • اگر رمزنگاری بصورت درشتدانه باشد امکان بهینهسازی پرسوجو کم می شود • رمزنگاری به صورت ریز دانه نیز کارایی را کمتر و در شرایطی به ممکن است به مهاجم اجازه استنتاج از دادهها را بدهد. – کنترل دسترسی در سیستم های چند کاربره درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI مالحظات رمزنگاری در برون سپاری داده ()2 • مقاومت در برابر حمالت – حمله متن رمزشده معلوم :به طور کلدي فدرم ميشدود کده مهداجم بده داده رمزشدده دسترسدي دارد .هددف در ایدن حمله شکستن متن رمزشده خاص یا پیدا کردن کلید است. – حمله متن اصلی معلوم :مهداجم بده تعددادي مدتن اصدلي و معدادل رمزشدده آنهدا دسترسدي دارد کده از آن بدراي بده دست آوردن بقیهي متون رمزشده یا پي بردن به کلید رمز استفاده ميکند. – حمله متن اصلی انتخابي :مهاجم ميتواند معادل رمزشده متن اصلي دلخدواه خدود را بده دسدت بیداورد .ایدن حملده، نوع قویتري نسبت به حملهي متن اصلی معلوم است. – حمله متن رمز شده انتخابی :مهاجم میتواند رمزگشایی شده معادل متن رمزشده دلخواه را بدست آورد. – حمالت تحلیل فرکانسی :ممکن است مهاجم ( )serverاطالعات اولیهای راجع به دامنده مقدادیر و فرکدانس رخدداد دادههای رمزنشده داشته باشد و از آن برای نفوذ به پایگاه داده استفاده کند. – حمالت مبتنی بر اندازه :ممکن است مهاجم اطالعاتی راجعبه ارتباط طول متن اصلی و متن رمزشده داشته باشدد. بنابراین اگر مهاجم مجموعهای از دادههای اصلی و متن رمز شدده معدادل را داشدته باشدد میتواندد بده پایگداه داده حمله کند. درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI مالحظات رمزنگاری در برون سپاری داده ()3 • پشتیبانی از انواع پرس و جو – پرس و جو روی داده های عددی • پرس و جو با شرط تساوی • پرس و جوی بازه ای – پرس و جو روی داده های رشته ای • پرس و جو با شرط تساوی • پرس و جو های تطبیق الگویی – پرس و جوهای شامل توابع تجمعی درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI روش های جستجو روی داده های رمز شده • جستجوی مستقیم روی داده های رمز شده • جستجوی مبتنی بر شاخص • روش های مبتنی بر حفظ ترتیب • روش های مبتنی بر توابع همریخت اختفایی درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI جستجوی مستقیم روی داده های رمز شده • داده بدده گوندده ای رمددز مددی شددود کدده جسددتجو بتوانددد دقیقدا ر روی همددان داده رمز شده به صورت مستقیم صورت گیرد. • سانگ روشی را بر اساس این ایده برای جستجو روی داده های رشته ای ارائه داده است. درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI روش - Songمعرفی • جستجوی کلمات روی اسناد رمز شده (تمرکز بر DBنیست) • کاربرد مفهوم دریچه • کارگزار میتواند با گرفتن اطالعات کوچکي در مورد هر کلمه (دریچده) ،جسدتجو را بددون اطدالع از کلمات دیگر متن انجام دهد. • توابع مبتنی بر دریچه توابعی هستند که محاسبهي معکوس آنها بدون داشتن اطالعات خاصی به نام دریچه مشکل است. • در رمزنگاري مبتني بر دریچه ،رمزگشایي با داشتن دریچه امکانپذیر است. • در این روشها ،به همراه هر کلمهاي که کارخواه جستجوي آنرا تقاضا کرده است ،دریچهي آن نیدز ارسال ميشود .بدین شکل کارگزار فقط ميتواند کلمه درخواست شده را رمزگشایي کند. درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI روش - Songرمزگذاری .1 متن اصلی به تعدادی کلمه wبا طول یکسان ( nبیت) تقسیم می شود. .2 اسناد اصدلی پدس از رمزشددن بده روش شدرح داده شدده ،بده سدمت کدارگزار ارسدال و در آنجا ذخیره میشوند. .3 کددارگزار بددا دریافددت دریچددهاي از طددرف کددارخواه مددی توانددد کلمددهی مددورد نظددر کدداربر را جستجو کند. • پارامترهای رمزنگاری – :Sمولد اعداد شبه تصادفی – Fو :fتوابع شبه تصادفی – ’ :Kکلید تابع ( fبرای تمام کلمات متن ثابت است) – دریچه هر کلمه :کلید تابع f k’(first n-m bits of Ek’’(wi)) :F درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI روش – Songرمزگذاری()2 • رمزگذاری در دو سطح انجام می شود. – سطح اول: • هر کلمه با یکی از الگوریتمهای رمزنگاري متقارن و کلید (" )kرمز می شود. • کارگزار در هنگام اجراي پرسوجو از کلمهي درخواست شده کارخواه مطلع نمی شود. – سطح دوم: • مولد شبه تصادفي ،Sدنبالهاي از اعداد شبه تصدادفي siبدا طدول n-mبیدت بده تعدداد کلمدات مدتن اصلي ایجاد ميکند. • اعداد شبه تصادفی تولید شده siبا استفاده از تدابع Fدرهمسدازي شدده و خروجدی mبیتدی تولیدد می شود. • (رمزشددهي ییدهي اول هدر کلمدده () ))Ek"(wiبدا ( siو حاصدل درهمسددازی شدده در مرحلده قبددل)، XORمیشود. داری کلمددهي wiبدده عنددوان iامددین کلمددهي مددتن رمزشددده ( )ciدر سددند • نتیجددهی ییددهي دوم رمزنگد رمزشده قرار میگیرد. 15 درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI روش - Songرمزگذاری()3 درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI روش - Songاعمال پرس و جو .1 کارخواه برای جستجوی یک کلمه ( )wدر اسناد رمزشدده ،معدادل رمدز شددهي ییدهي اول کلمده ())Ek"(w به همراه دریچهي آن () )fk'(wرا به کارگزار ارسال میکند. .2 کارگزار با دریافت () )Ek"(wکلمات تمام اسناد را با آن XORمیکند. .3 اگر کلمهي Pام سندی با کلمهي درخواست شده برابدر باشدد ،حاصدل )Tp( XORبایدد سداختاری بده شدکل >) <Sp, Ff (k’(w)) (spداشدته باشدد .بدرای بررسدی وجدود سداختار فدوی بدرای کلمدهي pام مدتن رمزشدده، حاصل تابع Fروی n-mبیت پرارزش Tpبه دست آورده میشود. .4 اگر مقدار بده دسدت آمدده بدا mبیدت باقیمانددهي Tpبرابدر باشدد ،سداختار برقدرار بدوده و کلمدهي Pام مدتن رمزشده به همراه سندی که به آن متعلق است در مجموعهي جواب ارسالی به کارخواه قرار میگیرد. • تددابع Fیددک تددابع درهمسدداز دارای برخددورد اسددت .بنددابراین امکددان وجددود اشددتباه مثبددت در نتددایج ارسددالی بدده کارخواه وجود دارد. – در سمت کارخواه پس از رمزگشایی سند ،مقددار اصدلی کلمدهي پیددا شدده بدا کلمدهي درخواسدت شددهي کداربر مقایسده میشود تا نتایج درستی به کاربر برگردانده شود. درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI روش - Songرمزگشایی • بددرای رمزگشددایی کلمددهي iاُم سددند رمزشددده ( ،)ciابتدددا n-mبیددت پددرارزش ciبددا XOR ،si میشود و n-mبیت پر ارزش ) Ek"(wiبه دست می آید. • از مقدار فوی برای ساختن دریچهي wiاستفاده میشود. • اعمال دریچه بدست آمده و n-mبیت پر ارزش siبده تدابع m ،Fبیدت نتیجده دارد کده بدا XOR کددردن بددا mبیددت کددم ارزش m ،ciبیددت کددم ارزش ) Ek"(wiحاصددل مددی شددود .بدددین ترتیددب تمددام بیتهای ) Ek"(wiبه دست میآیند. • ) Ek"(wiرمزگشایی شده تا مقدار اصلی wiحاصل شود. 18 درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI ویژگی های روش Song • کارگزار نمی تواند در مورد متن اصلی تنها با استفاده از متن رمز شده اطالعاتی بدست آورد. • سربار ذخیره سازی و ارتباطاتی آن کم است. • نتیجه حاوی مکان هایی از سند است که Wدر آن ظاهر شده است و ممکن است دارای اشتباهات مثبت باشد. • اشتباهات مثبت با مقدار mمرتبط است .هر جواب اشتباه با احتمال 1/2mرخ می دهد .بنابراین برای سندی با طول lکلمه انتظار l/2mجواب اشتباه وجود دارد. • متن باید تقسیم به کلماتی با طول مساوی شود که با توجه به ساختار زبان ،روش مناسبی نیست. درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI ویژگی های روش )2( Song • امکان جستجو با هر طول دلخواه وجود ندارد .فقط ميتوان کلمات با طول nیا ضریبي از nبیت را جستجو کرد. • گروه محدودي از الگوها قابل جستجو است. • – الگوهایي به شکل"] "ab[a-zبا تبدیل به aba, abb, abc, …, abzقابل جستجو هستند؛ – جستجوي الگوهایي به شکل ”* "abمشکل است .زیرا تعداد رشتههاي تولیدي بسیار زیاد خواهند شد. در الگوریتم سانگ ،براي یافتن هر کلمه باید کل محتویات تمام اسناد جستجو شود .زمان جستجو نسبت به طول متن خطی است .بنابراین در مقیاس بزرگ (مانند پایگاه داده) کارا نیست. – یک روش افزایش سرعت بکارگیری شاخص های از پیش تعریف شده است. درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI جمع بندی -جستجوی مستقیم روی داده رمز شده • فضای ذخیره سازی نسبت به ذخیره سازی داده اصلی تفاوت زیادی ندارد. • معموی ر احتمال اجرای حمالت فرکانسی نسبت به روش مبتنی بر شاخص کمتر است. – در برخی روش ها کلمه ای که چندین بار بکار رفته ،هر بار به شکل جدیدی رمز می شود (بسته به جایگاه کلمه در متن) • بیشتر اجرای پرس و جو در سمت کارگزار است .تنها رمزنگاری کلمه مورد پرس و جو در سمت کارخواه انجام می شود. • نسبت به روش های مبتنی بر شاخص دارای جواب اشتباه کمتری است. • پیچیدگی محاسباتی باییی دارند و زمان جستجو در آن ها خطی است .بنابراین در مقیاس بزرگ قابل استفاده نیست. • این روش ها بیشتر برای ابزارهایی با جستجوی در مقیاس کوچک (مانند تلفن همراه) مناسب است. • پرس و جوهای با شرایط تطبیق دقیق را پاسخ می دهند. • پرس وجوی شامل شرایط بازه ای و جستجوی الگوها بر روی داده های رشته ای در این روش سخت است. • پرس و جو شامل توابع تجمعی امکان پذیر نیست. درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI جستجوی مبتنی بر شاخص • اطالعاتی با نام شاخص همراه با داده رمز شده در سمت کارگزار ذخیره می شود. • جستجوی داده با استفاده از شاخص ذخیره شده انجام می گیرد. • برای هر عنصر که بخواهد جستجو بر مبنای آن انجام شود ،باید یک شاخص تعریف کرد. • شاخص نباید اطالعاتی در مورد داده اصلی را فاش نماید. • روش های مختلف تولید شاخص باید از یک سو کارایی پرس و جو و از سوی دیگر عددم سوءاستفاده کارگزار از مقدار شاخص در استنتاج داده اصلی را در نظر بگیرند. درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI جستجوی مبتنی بر شاخص • ) Ri (Ai1, Ai2, …, Ainدر پایگاه داده رمز نشده به ) Rki (Counter, Etuple, I1, I2, . . ., Inدر پایگاه داده رمز شده نگاشت می شود Counter .کلید اصلی جدول رمز شده Etuple ،رمز شده چندتایی معادل در پایگاه داده رمزنشده I1 ،تا Inشاخص های متناظر با Ai1تا Ainهستند. درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI روش های اصلی مبتنی بر شاخص • Bucket Based Index • Hash Based Index • B+ Tree Index 24 درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI شاخص مبتنی بر -Bucketمعرفی MCI • هاسیگموس و همکدارانش مبتندی بدر افدزودن شداخص مبتندی بدر باکدت ،روشدی بدرای پدرس و جدو روی داده رمز شده ارائه دادند. • ردیفهداي هددر جدددول بدده طددور جداگاندده و بده کمددک یکددي از الگوریتمهدداي رمزنگدداري متقددارن ،رمددز ميشوند. • به ازاي هدر مشخصده کده جسدتجو روي آن انجدام ميشدود ،یدک مشخصده بده ندام شداخص بده جددول اضافه ميگردد. Year Author Title ID 2001 Alfred J. Menezes Handbook of Applied Criptography 123 IY IA IT IID Enc_Tuple Ψ Φ Π Σ 4%n+!~kl?7klm\||fcapkmvk380($% درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 نحوه تعریف شاخص در روش Bucketبندی براي ایجاد شاخص امن ،بازهي دادههاي هر صفت به تعدادي زیربازه تقسیم ميشود. .1 – بازه ها نباید اشتراک داشته باشند. ایجاد بازهها ميتواند با استفاده از انواع روشهاي تقسیمبندي صورت گیرد. .2 – طول برابر – تعداد اعضاي برابر به هرکدام از بازهها مقداري تعلق ميگیرد. .3 – • می توان از یک تابع تولید اعداد شبه تصادفي استفاده کرد. به ازاي تمام دادههایي که در یک زیربازه قرار ميگیرند ،مقدار تعلق گرفته بده زیربدازهی آنهدا در شاخص رمزشده قرار داده ميشود. درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI مثال – بازه بندی و اعطای شاخص درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI پرسوجو در شاخص دهی مبتنی بر Bucket • پرسوجو در دو مرحله صورت ميگیرد: .1 کارگزار سعي ميکند تا آنجا که امکان دارد پاسخ درستي برگرداند .2 کارخواه نتیجهي ارسالي کارگزار را رمزگشایي کرده و آنرا پردازش ميکند. • در SQLیددک پددرس و جددو مددی توانددد بددا درختهدداي متفدداوت کدده از نظددر نتیجدده یکسددان هستند ،نمایش داده شود. • هاسددیگموس جداسددازی پددرس و جددو را (بخشددی در سددمت کددارگزار و بخشددی در سددمت کارخواه) را با استفاده از درخت پرسوجو انجام داده است. درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI پرس و جو در شاخص دهی مبتنی بر )2( Bucket • نمایش هر پرسوجو به دو قسمت تقسیم ميشود. در روش هاسیگموس ،درخت .1 بخش زیر عملگر رمزگشایی :کلیه اعمالی که می تواند در سمت کارگزار انجام شود. .2 بخش بایی عملگر رمزگشایی :اعمالی که باید در سمت کارخواه انجام شوند. اَعمددال جبددر رابطددهاي وقتددي بدده زیددر عمددل رمزگشددایي بددرده ميشددوند ،بایددد بدده اَعمدال جدیدي که روي دادههاي رمزشده قابل اجرا هستند ،تبدیل شوند. • – 29 هاسیگموس جبر رابطهاي جدیدي را براي اعمال روي دادههاي رمزشده تعریف کرد. درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI بهینه سازی اجرای پرس و جو MCI SELECT name FROM books, keeper "WHERE keeper.ID = books.keeping AND Title = "Handbook of applied cryptography πname • فقط عملگرهایی که در زیر عملگر رمزگشایی هستند قابل اجرا در سمت کارگزار هستند • در این اجرا هیچ عملگری قابل اجرا به روی کارگزار نیست. Books.keeper = Keeper.id • سربار ارتباطي و محاسباتي در سمت کارخواه بای است. • براي افزایش کارآیي باید سعي کرد تا حد امکان، عملگرهاي رابطهاي را به زیر عملگر رمزگشایي منتقل کرد. D ”σTitle = “Cryptography KeeperS D BooksS درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 اجرای بهینه پرس و جو MCI πname • اَعمال تا حد امکان باید در سمت کارگزار انجام شود. • رابطددده SELECTIONروي جددددول Booksبددده زیدددر عملگر رمزگشایي برده شده است. • براي بردن این عملگر به زیر عملگر رمزگشایي بایدد آندرا تبدددددیل بدددده σ sکدددده در جبددددر جدیددددد هاسددددیگموس بددددراي SELECTIONروي جدددداول رمزشدددده و مشخصدددههاي شاخص تعریف شده است ،تبدیل کرد. • این اجرا از پرسوجدو بده دلیدل اجدرای برخدی از عملگرهدا در سمت کارگزار اجرای کارایی است. Λ Books.keeper ”σTitle = “Cryptography = keeper.id D Bookss.keepers = Keepers.ids 0 = σsTitle BooksS درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 KeeperS مزایا و معایب روش باکت بندی برای تولید شاخص • روش های مبتنی بر Bucketبرای اجرای شروط تساوی مناسب هستند. – Aij = v Ij = β • پرس و جوهای بازه ای نیز با کمی تغییر در این روش شاخص دهی قابل اجرا است. – ( Aij> v )Ij = β1 or β2 or …or βk • مثال: – شرط Salary>50000در جدول صفحات قبل باید به شکل زیر تبدیل شود: Salarys=2 OR Salarys=10 OR Salarys=3 • عدم امکان اجرای توابع تجمعی مانند Avg ،MAX ،MIN ،SUMو ... – هاسددیگموس ایددن روش را تعمددیم داد و بددا اسددتفاده از یددک تددابع همریخددت اختفددائی اجددراي توابعي مثل جمع و ضرب را فراهم کرد. درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI مزایا و معایب روش باکت بندی برای تولید شاخص ()2 • وجود مقدار زیادی از داده های اضافی در نتایج کارگزار (به ویژه اگر اعمالی مانند پیوند در پدرس و جو وجود داشته باشد) – روشهایي براي بهبود و کاهش اشتباههاي مثبت در روش هاسیگموس ارائه شده است. • این روش بیشتر براي دادههاي عددي کداربرد دارد و بده کدارگیری روش بدراي دادههداي رشدتهاي یدا متني که دامنهي دادهها بزرگ است ،چندان مناسب نیست. – در تعریف بازه برای دادههای رشتهای ،ممکن است تعداد زیادی داده در یک بازه قدرار گیدرد کده ایدن خدود بدده معنددای ارسددال تعددداد زیددادی دادهي اضددافی در پاسددخ بدده یددک پرسوجددو و در نتیجدده سددربار ارتبدداطي و محاسباتي بای است. • اگر بازه ها طوری ساخته شوند که مثالر در هر بدازه یدک مقددار قدرار بگیدرد امکدان تحلیدل فرکانسدی وجود دارد. 33 درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI شاخص مبتنی بر توابع درهم ساز • از مفهوم توابع درهم ساز برای ساختن شاخص استفاده می شود. • دداز دارای تصدددادم بدددراي سددداخ ت شددداخص در ایدددن روش ،دادههدددا توسدددط یدددک تدددابع درهمسد دستهبندی میشوند. • مزیددت ایددن نددوع شدداخص دهددی نسددبت بدده روش باکددت بندددی ایددن اسددت کدده دسددتهبندي روي دادههاي پشت سرهم انجام نميشود که این ميتواند باعث افزایش امنیت گردد. درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI شاخص مبتنی بر توابع درهم ساز ()2 • اکر riرابطه ای با شمای ) Ri(Ai1, Ai2, . . . , Ainو rkiرابطه متناظر رمز شده آن باشد ،برای هر صفت Aijدر Riکه بخواهیم برای آن شاخص تعریف کنیم ،تابع درهم ساز یک طرفه h: Dij Bijتعریف می شود که Dijدامنه Aijو Bijدامنه شاخص Ijمتناظر با Aijاست. )for all x, y in Dij; if x = y then h(x)= h(y • برد hاز دامنه آن کوچکتر است . – امکان برخورد وجود دارد. • MCI برای هر دو مقدار تصادفی متفاوت ولی نزدیک به هم xو yدر دامنه ،(| x − y |< ε) Dij توزیع احتمالی ) h(x) − h(yیکنواخت است. – تابع درهم ساز ترتیب خصیصه در دامنه را حفظ نمی کند. درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 • شاخص مبتنی بر توابع درهم ساز – ویژگی ها • اجرای پرس و جوهای تساوی (مانند روش های شاخص دهی مبتنی بر )bucketممکن است. – هر شرط Aij=vبه شرط ) ،Ij=h(vکه Ijشاخص متناظر با Aijدر جدول رمز شده است ،تبدیل می شود. • برخورد در توابع درهم ساز باعث ارسال چندتایی های اضافی به سمت کارخواه می شود. – تابع درهم ساز فاقد برخورد مشکل ارسال نتایج زیادی به کارخواه را رفع می کند ولی احتمال تحلیل های فرکانسی را افزایش می دهد. • مشکل اصلی روش های شاخص دهی مبتنی بر توابع درهم ساز عدم پشتیبانی از پرس و جوهای بازه ای است. – دامیاني و همکارانش براي اضافه کردن قابلیت انجام جستجوي بازهاي به این روش از شاخص مبتنی بر درخت B+در کنار این نوع شاخص دهی استفاده کردند. 36 درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI شاخص مبتنی بر درخت B+ • یکی از روش های شاخص دهی استفاده از ساختار داده ای درخت B+است. • در درخت ،B+گره های داخلی به طور مستقیم به چندتایی ها در پایگاه داده اشاره نمی کنند بلکه به سایرگره ها در ساختار اشاره می نمایند. • گره های برگ مستقیما ر به چندتایی هایی در پایگاه داده با مقادیر مشخص برای صفت شاخص اشاره می کنند • درخت B+می تواند برای هر صفت Aijدر شمای Riکه در شروط پرس و جو ظاهر می شود ،تعریف شود. • شاخص توسط کارخواه روی مقادیر رمز نشده صفت ساخته شده و سپس به شکل رمز شده روی کارگزار همراه با پایگاه داده رمز شده ذخیره می گردد. • ساختار درخت B+به جدولی با دو صفت شناسه گره و محتوای گره تبدیل می شود .این جدول برای هر گره یک ردیف دارد. درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI مثال 38 درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI روش ارزیابی پرس و جو در درخت B+ • فرم کنید ،کارخواه اجراي پرسوجویي با شدرط A > vرا درخواسدت کدرده کده vیدک مقددار ثابدت است .کارخواه باید درخت Bذخیره شده روي کارگزار را براي یافتن محل ،vپیمایش کند. ردیدف بدا شدمارهي 1 – کارخواه درخواستي براي دریافت ریشدهي درخدت Bانجدام ميدهدد(.ریشدهي درخدت، است ).این ردیف به کارخواه ارسال و در آنجا رمزگشایي و پردازش ميشود. – با توجه به مقدار ،vگرهي بعدي که باید پیمایش شود انتخاب شده و درخواستی مبني بر ارسال آن گره بده کارگزار فرستاده ميشود .این روند تا پیدا کردن برگ حاوي vادامه پیدا ميکند. – پددس از پیدددا شدددن ،vتمددام برگهدداي بعددد از آن بدده سددمت کددارخواه ارسددال ميشددوند .ایددن گرههددا در سددمت کارخواه رمزگشایي شده و شمارهي رکوردهاي مورد نظر پیدا شده به سمت کارگزار ارسال ميشود. درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI شاخص مبتنی بر درخت -B+ویژگی ها • درخت B+در پاسخ به پرس و جو ،چندتایی اضافی به سمت کارخواه نمی فرستد. • هزینه ارزیابی شرایط پرس و جو برای کارخواه نسبت به روش های مبتنی بر باکت و توابع درهم ساز بسیار بیشتر است. – به همین دلیل معمویر درخت B+را در کنار یکی از روش های شاخص دهی مبتنی بر باکت یا توابع در هم ساز بکار برده و از درخت B+تنها در هنگام ارزیابی بازه ها در پرس و جو ها استفاده می نمایند. • با توجه به این که محتوای درخت B+در سمت کارگزار رمزنگاری شده است ،این روش در برابر حمالت استنتاجی مقاوم است. 40 درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI جستجوی مبتنی بر شاخص در داده های رشته ای • روشی مبتنی بر شاخص برای پرس و جو روی داده هدای رشدته ای توسدط Wangارائده شده است (.)2004 • با اسدتفاده از روش واندگ ،ميتدوان بده جسدتجوي الگوهداي دلخدواه در دادههداي رمزشدده پرداخت. • ریزدانگی رمزنگاری در روش ،Wangدر سطح فیلد است. درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI مراحل رمزنگاری .1 به هر رشته Sکه از nکاراکتر c1c2…cnتشکیل شدده اسدت ،مقددار شاخصدی بده طدول mبیت اختصاص داده ميشود. .2 هر رشتهی S = c1c2…cnبه رشدتهی S'= s1s2…s2n-2کده در آن si = cici+1اسدت، بسط داده میشود. .3 با اسدتفاده از تدابع درهمسداز ،hمقدداري بدین 0تدا mبدراي هدر کددام از siهدا بده دسدت ميآید. .4 اگددر مقدددار ) h(siبرابددر بددا kباشددد .در آن صددورت بیددت شددماره kام در شدداخص مربوطدده برابر با یک ميشود. 42 درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI مثال MCI )S1= (abcehklst • m=16 • • تابعی در هدم سداز دوتدایی هدای ،... ،bc ،abو stرا بده عدددی بدین 0تدا 15نگاشدت می کند. • S2=Index(abcehklst)= (0010100010101001)2 • هشت رشته 2تایی وجود دارد در حالیکه 6بیت یک در S2دیده می شود .یعنی برخدی از کاراکترهای دوتایی به یک مقدار توسط hنگاشت می .شوند 43 درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 روش جستجو مقدددار رشددتهای موجددود در الگددوی رشددته ای مددورد پددرس و جددو بسددط داده میشددود و مقددادیر اختصاص داده شده توسط تابع hبه هر دو حرف متوالی آن به دست میآید. .1 – پرس و جو روی مقدار رشته ای به پرس و جو روی شاخص (رشته بیتی) تبدیل می شود. .2 مقادیر به دست آمده ،مکان بیتهایی از مقادیر شاخص را که باید 1باشدند تدا شدرط پرسوجدو ارضاء شود ،مشخص میکند .این مقادیر به سمت کارگزار ارسال میشوند. .3 کارگزار به ازای هر مقددار شداخص ،مقدادیر بیتهدای آن در مکانهدای ارسدال شدده را بررسدی میکند ،اگر همه دارای مقدار 1بودند ،مقدار شاخص را بده عندوان یکدی از جوابهدا بده سدمت کارخواه برمی گرداند. – در جواب های ارسال شده ممکن است نتایج اضافی وجود داشته باشد که باید توسط کدارخواه مجدددا ر پردازش شده تا جواب دقیق به دست آید. درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI حالت های مختلف پرس و جوی رشته ای .1 تطبیق دقیق ◦ شرط attribute=valueروی جددول رمدز نشدده تبددیل مدی شدود بده ) aS = index (valueکده aSمقددار رمز شده attributeدر سمت کارگزار است. .2 تطبیق الگویی ◦ شرط attribute LIKE valueروی جدول رمز نشده: )a like c0c1…ck => ((as)H(c0c1)=1 AND (as)H(c1c2)=1 AND … AND (as)H(ck-1ck)=1 .3 پرس و جوی با شرایط بولی (attribute=value 1) OR (attribute=value 2), (attribute like value 1) AND (attribute like )value 2), (attribute like value 1) AND NOT (attribute like value 2 – از حالت اول و دوم قابل استنتاج است. درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI مثال MCI select eid, age from employee where did like ‘chess’ Transforms to select * from employeeE where (didsH(ch)=1) and (didsH(he)=1) and (didsH(es)=1) and (didsH(ss) =1) 92-91 نيمسال دوم تحصيلي-درس امنيت پايگاه داده ها 46 تحلیل روش • در این روش ،در صورتي که طول mبزرگ انتخاب شود ،حمله متن اصلی معلوم محتمل است. – هر زوج کاراکتر به مقدار یکتایی در شاخص منتسب می شوند و امکان تحلیل فرکانسي و شکستن شاخص وجود دارد. • در صورت کوچک بودن ،mتعداد زیادی داده اشتباه به سمت کارخواه ارسال خواهد شد. • در جدول رمز شده فیلد اضافه ای برای شاخص باید در نظر گرفته شود که حجم آن به اندازه شاخص ( )mوابسته است. – در صورتی که nفیلد نیاز به رمز شدن داشته و طول شاخص به طور متوسط mبیت باشد ،میزان فضای اضافی مورد نیاز m*nبیت برای شاخص است. 47 درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI جمع بندی روش ها ی مبتنی بر شاخص • تحقیقات زیادی روی این گونه روش ها صورت گرفته و دارای زمینه تئوریک قوی می باشند .حتی دارای جبر رابطه ای مخصوص می باشند. • بیشتر فرایند اجرای پرس و جو بر روی کارگزار متمرکز است. • هزینه ذخیره سازی تقریبا ر دو برابر ذخیره سازی معمولی است .زیرا غیر از مقدار رمز شده ذخیره، مقدار شاخص نیز ذخیره می گردد. • امکان استنتاج و افشای اطالعات وجود دارد که میزان آن وابسته به تعریف شاخص است. – Evdokimovو همکارانش اثبات کرده اند که تقریبا ر تمام روش های مبتنی بر شاخص ذاتا ر امن نیستند .به ویژه روشهایی که در پاسخ به پرس وجو چندتایی های اضافی تولید نمی کنند ،در معرم تهدید افشای اطالعات قرار دارند. • پرس و جوهای شامل پیوند در این روش قابل اعمال است. • پرس و جوهای تساوی ،و الگویی برای داده های عددی و رشته ای قابل انجام است. • امکان اجرای پرس و جوهای بازه ای بسته به تعریف شاخص دارد. • امکان اجرای پرس و جوهای شامل توابع تجمعی وجود ندارد. • چون با تغییر توزیع داده ها نیاز به دسته بندی مجدد داده ها برای تعریف شاخص وجود دارد ،این روش بیشتر برای داده های فقط خواندنی مناسب است. درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI روش های مبتنی بر کاربرد توابع همریخت اختفایی MCI • توابع همریخت اختفایی نوعی توابع برای رمزنگاری است. • در روش رمزنگداری همریخدت اختفدایی ( ،)privacy homomorphismحاصدل انجدام یدک عمدل روي دادههاي رمزشده ،معادل رمزشده حاصل عملي دیگر روي دادههاي اصلي است. β(xE , yE) = (α(x,y))E • )– E(x) . E(y) = E(x+y • بوسیلهي توابع رمزنگاري همریخدت اختفدائی ميتدوان برخدي از عملیدات مانندد جمدع و ضدرب را بده طور مستقیم روي دادههاي رمزشده انجام داد. • فیلدهایی را که روی آنها پرس و جدوی تجمعدی اجدرا مدی شدود ،بدا اسدتفاده از رمزنگداری همریخدت رمز می کنند. درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 روش هاسیگموس MCI • هاسددیگموس بددا اسددتفاده از یددک تددابع رمزنگدداري همریخددت اختفددائی کدده دو خاصددیت جمعددي و ضربي را پشتیبانی می کند ،توابع جمع و ضرب را روي دادههاي رمزشده اجرا کرد. • خواص تابع رمزنگاری همومورفیسم استفاده شده: – کلید رمزنگاری ) K=(p, qکه pو qبه وسیله کاربر تعیین می شوند. که به کارگزار داده می شود n = p.q – )– qq-1 =1 (mod p )– pp-1 = 1 (mod q )– Ek(a mod p, a mod q – درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 مثال MCI • p=5,q=7 )• n = p.q = 35 k = (5, 7 • می خواهیم a1 = 8و a2 = 12را جمع کنیم )• E(a1) = (3,1 )• E(a2) = (2,5 )• E (a1) + E (a2) = (3+2, 1+5) = (5, 6 )• D (5, 6) = 5*qq-1 + 6*pp-1 (mod 35 = (5*7*3 + 6*5*3) (mod 35) =195 (mod 35) = 20 درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 مشکل استنتاج • اختفائی معرفي شده کامالر امن نیست و کارگزار ميتواندد مقددار استفاده از تابع رمزنگاري همریخت اصلي برخي از مقادیر رمزشده را به دست آورد. – فدددرم کنیدددد x ،و yدو عددددد باشدددند کددده بددده صدددورت ) (xp,xqو ) (yp,yqرمدددز شددددهاند .اگدددر z=x.yباشدددد ،رابطدددهي ) (zp,zq)=(xp,xq).(yp,yqنیز بین مقادیر رمزشده این متغیرها وجود دارد .در چنین حالتی کارگزار ميتواند مقادیر اصلي این متغیرها را به دست آورد .کارگزار شروع به جمع کردن ) (xp, xqبا خودش ميکند و این کار را آنقدر ادامه ميدهد تا نتیجه آن با ) (zp, zqبرابر شود .تعداد این جمع کردنها برابر با عدد yاست. • هاسیگموس با اضافه کردن ندویز تصدادفي بده مقدادیر رمزشدده ،مشدکل را حدل مدی کندد R(x) .یدک تابع شبه تصادفي است. • نویز در هنگام رمزگشایي از دادهها حذف ميشود. درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI روش های رمزنگاری مبتنی بر حفظ ترتیب • در روش های رمزنگاری با حفظ ترتیب ( )Order Preservingداده ها به گونه ای رمز می شوند که ترتیب داده ها پس از رمز شدن با ترتیب داده های اصلی یکسان باشد. • این نوع رمزنگاری برای اجرای پرس و جو های بازه ای مناسب است. • آگراوال برای رمزنگاری داده های عددی و اجرای پرس و جوهای بازه ای روی آنها از این روش استفاده کرده است. • فرم کنید ،دادههاي اصلي داراي توزیدع اولیده Aهسدتند .ایدن دادههدا بده نحدوي رمدز ميشدوند ،کده عالوه بر حفظ ترتیب از توزیع دلخواه 'Aتبعیت کنند. – ابتدا دادهها به توزیع یکنواخت fنگاشت شده و سپس توزیع fبه توزیع هدف ' Aنگاشت ميشود. درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI مراحل رمزنگاری • OPESدر سه مرحله کار ميکند(Order Preserving Encryption Scheme). مدددل کددردن :دادههدداي اصددلي بدده تعدددادي دسددته تقسددیم ميشددوند و توزیددع دادههدداي هددر دسددته مدددل ميشود. .1 • روش هایی برای تعیین تعداد دسته ها و طول هر دسته وجود دارد. • افزایش دستهها منجر به افزایش هزینههاي مدل ميشود. مسطح کردن :دادههای اصلي Pبه دادههای مسطح Fبده قسدمي تبددیل شدود کده مقدادیر Fداراي توزیع یکنواخت باشند. .2 .3 • در مرحلهي مسطح کردن براي هر دسته ،یک تابع نگاشت Mایجاد ميشود .تابع Mهر دسته را بده دسدتهاي با توزیع یکنواخت نگاشت ميکند. • دو مقدار متفاوت در داده های اصلي همیشه به دو مقدار متفاوت از فضاي مسطح شده نگاشت شوند. تغییر :دادههای مسطح Fبه دادههدای رمزشدده Cتبددیل ميشدود ،بده قسدمي کده مقدادیر Cداراي توزیع نهایي که براي دادههاي رمزشده در نظر گرفته شده بود ،باشند. درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI MCI B0c B0f B0f B0 Bm 1 Bkf1 Bmf 1 Bkc1 درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 ویژگی های روش رمزنگاری با حفظ ترتیب • اجرای پرس و جوها در این روش چندتایی های اضافی به سمت کارخواه ارسال نمی کند. • امنیت در این روش زمانی تامین می شود که کارگزار/حمله کننده اطالعاتی در مورد پایگاه داده اصلی و یا دامنه صفت ها نداشته باشد. – این روش در مقابل حمله متن اصلی معلوم آسیب پذیر است. 56 درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91 MCI MCI پایان 57 درس امنيت پايگاه داده ها -نيمسال دوم تحصيلي 92-91
© Copyright 2025 Paperzz