بخشی از مقاله
چکیده
تبادل کلید به صورت امن در شبکه های بی سیم از جمله شبکه های حسگر بیسیم، یکی از مقولههایی است که علاوه بر مشکلات امنیتی، از نظر مصرف انرژی و بارپردازشی روی گرههای حسگر همیشه مورد توجه جدّی بوده است. به دلیل محدودیت توان پردازشی و مقدار انرژی در این گره ها، یکی از مهمترین مؤلفه های مورد بررسی در تبادل کلید، مصرف انرژی در فرایند این تبادل است.
در این مقاله یک مدل سلسله مراتبی با مدیریت پخش کلید به صورت تک پخشی ارائه می گردد که در آن، مصرف انرژی در گرهها کاهش پیدا نموده و در نتیجه پایداری شبکه و افزایش طول عمر گره ها را به دنبال خواهد داشت. در این روش گرهها در خوشههایی سازماندهی شده و هر سرخوشه با استفاده از روش تک پخشی، از درگیر کردن سایر گره ها برای تبادل کلید یک گره مشخص جلوگیری می کند. در بخش دوم مقاله، کارهای انجام شده در این زمینه بحث میشود. در بخش سوم، فرضیات مسئله ارائه، در بخش چهارم روش پیشنهادی و در بخش پنجم مدل پیشنهادی بررسی میشود، و در انتها نتیجهگیری و کارهای آتی بیان خواهد شد.
-1 مقدمه
یک شبکه حسگر بی سیم از تعداد زیادی گره های حسگر کوچک بدون مراقب که دارای قابلیت های پردازشی و مخابراتی محدود هستند، تشکیل می شود. گره هایی که از گره مرکزی دور هستند، اطلاعات خودشان را توسط گره های میانی و از طریق قراردادهای چندپرشی ارسال میکنند. در این حالت گره ها ممکن است هم تولیدکننده اطلاعات و هم انتقال دهنده اطلاعات باشند
مهمترین مشکل در چنین شبکههایی، آن است که گره های حسگر بهطور معمول توسط باتری تغذیه میشوند و معمولاً تعویض و یا شارژ باتری آنها، به دلیل هزینههای زیاد مورد نیاز برای آن و یا به دلیل استفاده در مناطق غیرقابل دسترس، بسیار مشکل و یا غیر عملی است. منابع مصرف انرژی در شبکههای حسگر شامل حس کردن، پردازش اطلاعات، خواب و مخابره داده - سه حالت ارسال، دریافت و بیکاری را در بر می گیرد - میباشد.
برخی از مهمترین منابع اصلی تلف شدن انرژی در این شبکههارا میتوان بدین صورت طبقه بندی کرد :
تصادم، همشنوایی، بستههای سربار کنترلی، حالت بیکاری، استفاده غیر بهینه از منابع موجود: مثل مسیریابی غیر بهینه برای ارسال و دریافت اطلاعات و توان ارسالی زیاد در موارد غیرضروری.
ساختار ویژه این شبکه ها باعث بوجود آمدن مشکلات جدید برای ایجاد امنیت در این دسته از شبکه ها شده است که این مشکلات را می توان زائیده چند عامل عمده در نظر گرفت که عبارتند از:
محیط انتقال بدون سیم، ساختار پویا، عدم وجود یک زیرساخت ثابت، ضعف های مربوط به گرههای شبکه، بزرگ و متراکم بودن شبکه، ریسک بالای حملات فیزیکی و ناشناخته بودن توپولوژی شبکه قبل از توسعه .
روش های بکار رفته برای حفظ امنیت در شبکههای حسگر بیسیم باید حداقل محرمانگی احراز اصالت جامعیت، قابلیت توسعه و انعطافپذیری را برآورده سازد .[4]امروزه یکی از روش هایی که برای جلوگیری از حملات و ایجاد امنیت در این شبکه ها استفاده میشود مدیریت کلید میباشد، گرچه استفاده از این روش نیز خود دچار مشکلات و چالشهای خاصی است.
-2 کارهای انجام شده
در[5] پروتکلDGKM1 پیشنهاد شده است که از دو شمای مدیریت کلید جداگانه استفاده می کند که اولی برای پیام های همه پخشی غیرحساس بین گره ها استفاده میشود و برای ارتباط امن بین همسایهها از یک کلید جلسه استفاده می کند و شمای دوم مدیریت کلید زیرشبکه است که برای ارتباط امن بین گره های ایجاد کننده یک زیرشبکه و تنظیم یک کلید زیرشبکه استفاده می شود. این روش، در زمان لغو گرههای تسخیر شده و نفوذی انرژی بیشتری مصرف میکند و قدرت شناسایی پایینتری دارد.
در [6] یک شمای مدیریت کلید مبتنی بر ترافیک شبکه های حسگر بیسیم ارائه شده است، که فقط کلیدهای به اشتراک گذاشته شده را برای حسگرهای فعال که دارای ارتباط مستقیم با هم هستند، برقرار میکند. این روش در مقابل تسخیر گره مقاوم نیست.در[3]شمای مدیریت کلید مبتنی بر EBS[7] و t-degree bivariate[8-9] با استفاده از کلیدهای محرمانه بین ایستگاه پایه و سرخوشه های دیگر را بیان میکند. این روش شمای EEDKM2 را ارائه می دهد که از معماری دو لایه مانندLOCK[10] استفاده می کند. این شما سربار موجود برای مدیریت کلید بصورت پویا را کاهش داده است، اما سربار محاسباتی و ارتباطی بالایی دارد.
در یک پروتکل مدیریت کلید برای شبکه های حسگر با مقیاس بزرگ بیان شده است، که کلید گروهی مبتنی بر موقعیت است. این پروتکل لغو گره های به خطر افتاده را پشتیبانی میکند. این روش مصرف انرژی کمتری نسبت به LEAP[12] دارد. در[13] یک روش جدید به نامDPM[14]3 را بیان میشود که سیاست وضعیت خواب را توسعه داده و با OGDC4[15] ترکیب شده است.
در پروتکل مدیریت کلید گروهی برای شبکه های حسگر سلسلهمراتبی توصیف میگردد که در آن برای هر گره حسگر یک کلید اولیه با استفاده از اعداد تصادفی تولید میشود. این کلید در شبکه همه پخشی شده و براساس آن، کلید گروهی ساخته می شود. این روش قابلیت ارتجاع بعد از تسخیر گره در شبکه را ندارد.. در ELKM5[17] معرفی میگردد که برای هر گره، کلیدها را براساس مکانهای وابسته به آن میسازد. براساس زمان همگام سازی، ELKM تمامی محتوی کلید را در طول ارتباط امن ایجاد شده انتقال نمیدهد، بلکه تعداد کمی از بایتهای پیام را براساس زمان همگام سازی ارسال می کند.
دریک مدل توزیع تصادفی کلید میان گره های حسگر از طریق یک مجموعه ای از کلیدها بیان میشود که در آن هر دو همسایه حداقل یک کلید را با احتمال P به اشتراک گذاشتهاند و کل گراف شبکه نیز با یک احتمال مشخص متصل شده است.
در ایده یEKM6 بیان میشود که در آن شناسه ها، انرژی باقیمانده و کلیدهای جفتی درون هر گره را در فاز پیش توزیع ذخیره میکند. سپس بهترین ارتباط های امن را طبق شناسه و انرژی باقیمانده جستجو کرده و از توابع چکیده ساز برای ایجاد امنیت در ارتباطهای چندگامی استفاده میکند.
در روش مدیریت کلیدی برای کار در شبکههای موبایل موردی با انرژی کم طراحی شده است. گره ها بصورت پویا کلید ارتباط را براساس مواد کلیدبندی که در حال حاضر دارا میباشند، ایجاد میکنند.طرحی را برای توزیع و مدیریت کلیدهای گروهی در شبکههای موردی مبتنی بر SOLSR[22] بیان می کند. کلیدهای گروهی براساس ادغام و افراز شبکه مدیریت می شوند. این پروتکل تعداد پیام های کنترلی را کاهش می دهد و پروتکل سبک وزنی برای مدیریت کلید در شبکههای موردی است.
پروتکل مدیریت کلید جدید برای شبکههای حسگر سلسله مراتبی مبتنی بر ابرگراف7را بیان میکند. این پروتکل شامل فازهای برپایی، توسعه آغازی، درج و لغو پویاست. در این روش ایستگاه پایه، گرههای حسگر را داخلn گروه تقسیم میکند که بهطور تصادفی در n بازه زمانی توسعه داده میشوند. ایستگاه پایه نیاز به مدیریت موقعیت های گرهها قبل از توسعه ندارد. این روش محدودیتی در تعداد گرهها و خوشه ها ندارد، اما مصرف انرژی بالایی دارد. در [24] پروتکل مدیریت کلید سلسله مراتبی چندفاز8 ارائه شده است. NPMHW روشی خاص برای برقراری حلقه کلید با استفاده از اعداد تصادفی و تابع درهم سازی بیان میکند.
-3 مفروضات مسئله
طرح مورد نظر ما، برای شبکههای بیسیم تک گام ارائه شده است. همچنین بین گره های حسگر تفاوتی وجود ندارد و همه آن ها از نظر توان محاسباتی، ارتباطی و انرژی محدود می باشند. کانال بیسیم را باز و ناامن در نظر میگیریم.
در طرح ما شبکه حسگر دارای معماری سلسله مراتبی است. در این معماری شبکه حسگر، با چند سطح شامل گره های برگ و سرخوشه ها است. تعداد گروه ها در شبکه براساس تعداد زیردرخت های ریشه است. شکل 1 معماری این مدل را نشان میدهد. همانطور که در این شکل مشاهده می کنید، دو گروه وجود دارد. هر گره حسگر، داده را از یک ناحیه جغرافیایی خاص جمعآوری و به نزدیکترین گره حسگر - والد - ارسال میکند. در نهایت، سر خوشه، داده را تجمیع میکند و آن را به سطح بالاتر ارسال میکند.
در این مقاله از یک شناسه برای تمامی گرههای حسگر در تمامی سطوح استفاده شده است که با استفاده از تابعی از موقعیت گره و عدد تصادفی تولید می شود. فرض بر این است که هر خوشه، از سمت چپ پر می شود و هر گره برای استقرار در هر خوشه باید در سمت راست گرههای موجود قرار گیرد.
سطح صفر
شکل : - 1 - معماری سلسله مراتبی شبکه حسگر
در این مدل از کلید متقارن برای رمزگذاری داده ها در ابتدای تشکیل شبکه استفاده میشود. بعد از تولید کلید گروهی، از این کلید برای رمزگذاری/رمزگشایی دادهها در شبکه استفاده میشود.
-4 تشریح مسئله
در اینجا یک پروتکل مدیریت کلید گروهی پیش توزیع با استفاده از یک معماری سلسله مراتبی شامل گروه های مختلف با یک کلید گروهی واحد بیان میشود. در این روش دو نوع کلید گروهی استفاده می شود." کلید سرخوشه داخل گروه" برای رمزگذاری/ رمزگشایی پیامهای درون یک گروه شبکه حسگر و " کلید بین گروهی " برای رمزگذاری/ رمزگشایی پیامهای گروه هایی از سرخوشه ها استفاده می شود. برای تولید کلید گروهی از کلیدهای اولیه پویا استفاده میشود. دو مزیت مهم استفاده ازکلیدهای اولیه پویا عبارتند از:
1. گره های حسگر نیاز به ذخیره سازی تعداد زیادی کلید ندارند.
2. کلید به خطر نمیافتد زیرا آن بهطور دورهای تغییر میکند.
در شمای مورد نظر ما هر گره حسگر در یک گروه، یک کلید اولیه را بصورت پویا تولید کرده و آن را برای محاسبه کلید گروهی در یک روش پایین به بالا استفاده میکند. در این روش، کلیدهای اولیه با استفاده از تابع اختصاص داده شده به هر گره محاسبه میشوند. محاسبه کلید توسط گرههای برگ با استفاده از شناسه آن ها که در تولید کلید اولیه نقش دارد، شروع میشود. سرخوشه، کلید گروهی را با استفاده از یک عدد بهینه از کلیدهای اولیه محاسبه میکند.
-1-4 تعریف ID
ID یک شناسه اختصاصی برای هر گره است که با استفاده از موقعیت گره و عدد تصادفی توسط گره حسگر تولید میشود. تابع آن بصورت زیر میباشد:
موقعیت گره i براساس محل قرارگیری گره در سطح و موقعیت در آن سطحاست. مثلاً گرهای با موقعیت 1 - و - 3 یعنی گره در سطح 3 قرار داشته و دومین گره در آن سطح می باشد. Frand تابع مولد اعداد تصادفی است که بر اساس الگوریتم Blum,Blum and Shub[25] یک عدد تصادفی تولید می نماید. هدف از انتخاب این الگوریتم برای تولید اعداد تصادفی سربار کم آن میباشد.
-2-4 ثبت نام کردن گرهها
در زمان ایجاد شبکه، گره ها ID خود را برای معرفی و ثبت نام به گره والد ارسال می کنند. گره والد، کلید متقارن مورد استفاده در شبکه را برای گره فرزند ارسال میکند.
-3-4 محاسبه کلید اولیه
گره های برگ کلید اولیه خود را با استفاده از شناسه محاسبه شده در مرحله قبل، براساس رابطه - 2 - تولید میکنند.
g مولد گروه ضرب کننده است و p عدد اول است و ID شناسه اختصاصی برای هر گره است. گره های سطح 0 تا L-1 با استفاده از کلید اولیه فرزندان و تابع - 3 - ، کلید اولیه خود را محاسبه میکنند. ρ عدد اول، ریشه اصلی ρ و k1 و k2 کلیدها هستند.
با استفاده از یک روش پایین به بالا، همه گره های حسگر غیربرگ میتوانند کلیدهای اولیه خود را محاسبه کنند. در یک درخت غیرباینری، بدلیل کاهش مصرف انرژی و بالابردن ضریب امنیت تنها دو فرزند گره والد در تولید کلید اولیه برای والد نقش دارند که این دو با استفاده از تابع تصادفی
rand[26] انتخاب میشوند. این دو فرزند در تابع K<l+1,v2> - برای تولید کلید اولیه برای والد قرار میگیرد. l سطح درخت و v موقعیت گره از سمت چپ است وv1 و v2 از رابطه 4 بدست میآید. sibling - تعداد همزاد در سمت چپ زیردرخت است و nchild تعداد فرزندان یک گره است. -
کلید اولیه با استفاده از کلید متقارن رمزگذاری شده، و برای گره والد ارسال می شود. گره والد کلید اولیه خود را محاسبه و کلید محاسبه شده را برای گره والد خودش ارسال می کند و این روال تا ریشه ادامه دارد. الگوریتم محاسبه کلید اولیه در زیر بیان میشود که در آن L سطح درخت - گره ریشه سطح صفر دارد - ، V موقعیت گره از سمت چپ در سطح L - سمت چپترین گره در سطح L دارای موقعیت صفر است - و PK، کلید اولیه میباشد.
-4-4 محاسبه کلید سرخوشه داخل گروه
هر گره حسگر،کلید اولیه خود را برای محاسبه کلید سرخوشه، خوشه عضو با تک پخشی شرکت می دهد. گره سرخوشه همه کلیدهای اولیه فرزندان را برای محاسبه کلید سرخوشه داخل گروه روی هم قرار میدهد. این یک روش پایین به بالا است، به طوری که کلیدهای اولیه از گره های برگ به گره های پدر روی هم قرار می گیرند یا جمع می شوند. لازم بذکر است تنها یکبار کلید اولیه از زمان تولید، برای گره های پدر ارسال می شود. بعد از محاسبه کلید اولیه، آن گره کلید سرخوشه داخل گروه را محاسبه میکند.