بخشی از مقاله

چکیده :

با گسترش روز افزون تکنولوژی های چندرسانه ای، تبادل امن داده ها و اطلاعات و به طور خاص تصاویر دیجیتال یکی از موارد مهم در دنیای امروزه است. لذا استفاده از یک روش رمزگذاری قوی و مستحکم و در عین حال ساده در مقابل انواع حملات دیجیتالی ضروری به نظر می رسد. در این مقاله سعی شده است با استفاده از کلیدهای دریافتی از کاربر و یکی از الگوریتم های حریصانه به نام الگوریتم زنبور عسل که بیشتر در مسائل بهینه سازی کاربرد دارد، یک الگوریتم ترکیبی برای رمزگذاری تصاویر دیجیتال ارائه شود. در این روش ابتدا تعدادی عدد تصادفی بدون محدودیت بازه از کاربر دریافت می شود، سپس به روش افزایشی تعداد این اعداد تغییر یافته و نتیجه حاصل به عنوان ورودی الگوریتم زنبورعسل استفاده می شود و در نهایت با استفاده از کلید های تولید شده توسط این الگوریتم تصویر رمزگذاری می شود.

کلید واژهها: رمزگذاری، تصاویر دیجیتال، الگوریتم زنبور، کلیدهای دریافتی از کاربر

-1 مقدمه

امروزه که اکثر تبادل اطلاعات بین یک مبداً و مقصد به صورت دیجیتال انجام می گیرد، حفاظت از داده های مبادله شده در مقابل انواع دستبردها و جلوگیری از ایجاد اخلال در محتوای آن ها یکی از موارد مهم و اساسی به شمار می رود . با در نظر گرفتن این مهم، رمزنگاری کردن اطلاعات یکی از روش هایی است که برای حفاظت از داده ها به کار می رود. رمزنگاری تصاویر دیجیتال نیز یکی از انواع رمزنگاری اطلاعات در زمینه پردازش تصویر است. در رمزنگاری یک تصویر دیجیتال با استفاده از یک الگوریتمی تصویر به گونه ای درهم ریخته می شود که هیچ سیستم کامپیوتری و یا انسانی توانایی تشخیص و دسترسی به آن را نداردو یا میزان احتمال این عمل بسیار پایین است و فقط شخصی که آن را رمز نموده است قادر به استخراج اطلاعات اصلی و برگردندان تصویر به حالت اولیه آن است. روش ها و الگوریتمهای مختلفی مانند تبدیل فیبوناتچی، تبدیل بیکر، تبدیل آرنولدی و ... جهت رمزنگاری تصویر ارائه شده است.

تصاویر دیجیتال به صورت فزاینده ای به انواع مختلفی بر روی شبکه ها ارسال می شوند. با توجه به حضور و فعالیت بالای هکرها در این شبکه ها در سراسر جهان ممکن است این تصاویر به راحتی در دست یک عده اشخاص قرار گیرند که آن ها را بدون اجازه مالک و به صورت غیر قانونی برای منافع شخصی خود و اخاذی کردن دگرگون کرده و یا به سرقت ببرند. لذا برای جلوگیری از آسیب پذیری اطلاعات تصویر، در طول چندین سال اخیر محققان حوزه پردازش تصویر و سیگنال تحقیقاتی را در زمینه رمزگذاری اطلاعات انجام و راه کارهایی را ارائه داده اند. هدف از رمزکردن تصویر تولید یک تصویر غیر معقول و خیلی متفاوت با تصویر اصلی است به گونه ای که مانع از تشخیص محتوای آن توسط هر سیستم کامپیوتری و یا هر انسانی می شود و فقط مالک قادر به رمزگشایی اطلاعات آن است.

رمزگذاری تصویر برای اولین بار در سال 1960 جهت جلوگیری از دستبرد اطلاعات مطرح شد که به دو بخش تقسیم می شود. یکی انتقال ماتریس با شیفت دادن مختصات و دیگری پس و پیش کردن مختصات پیکسل ها. بسیاری از روش های رمزگذاری برمبنای تبدیل آرنولدی و یا ترکیب آن با تکنیک های دیگر عمل می کنند. این روش ها فقط برای تصاویر مربعی کاربرد دارند و اگر تصویر مربعی نباشد بایستی با افزودن سلول های خالی آن را مربعی نمود اما تعداد زیادی از این تکنیک ها از هیچ گونه کلیدی که باعث افزایش امنیت الگوریتم رمزنگاری شود استفاده نمی کنند.[ 2] در این مقاله الگوریتمی ارائه داده می شود که یک تصویر را با استفاده از مقادیر دریافتی از کاربر و کلیدهای تولید شده توسط الگوریتم زنبورعسل رمزگذاری می کند.

-2 الگوریتم کلونی زنبورعسل

الگوریتم زنبور شامل گروهی مبتنی بر الگوریتم جستجو است که اولین بار در سال 2005 میلادی توسعه یافت؛ این الگوریتم شبیهسازی رفتار جستجوی غذای گروه های زنبور عسل است. در نسخه ابتدایی این الگوریتم، الگوریتم نوعی از جستجوی محلی انجام می دهد که با جستجوی تصادفی ترکیب شده و میتواند برای بهینه سازی ترکیبی یا بهینهسازی تابعی به کار رود.[15] در الگوریتم کلونی زنبور، زنبورها به سه دسته زنبورهای کارگر، ناظر و دیده بان تقسیم می شوند. در ابتدا نصف کلونی، زنبورهای کارگر و نصف دیگر شامل زنبورهای ناظر هستند. به هر منبع غذایی یک زنبور کارگر اختصاص داده می شود. به عبارتی تعداد زنبورهای کارگر برابر تعداد منابع غذایی پیرامون محوطه موردنظر است. زنبورکارگری که منبع غذایی اش متروکه شود - نامناسب شناسایی شود - تبدیل به زنبور دیده بان می شود.[4] یک کلونی زنبور عسل میتواند در مسافت زیادی و نیز در جهتهای گوناگون پخش شود تا از منابع غذایی بهرهبرداری کند.

قطعات گلدار با مقادیر زیادی نکتار و گرده که با تلاشی کم قابل جمع آوری است، به وسیله ی تعداد زیادی زنبور بازدید میشود؛  به طوری که قطعاتی از زمین که گرده یا نکتار کمتری دارد، تعداد کمتری زنبور را جلب میکند. پروسه جستجوی غذای یک کلونی به وسیله زنبورهای کارگر آغاز میشود که برای جستجوی گلزارهای امید بخش - دارای امید بالا برای وجود نکتار یا گرده - فرستاده میشوند. در مرحله اول این زنبورها شروع به جستجوی تصادفی در منطقه موردنظر می کنند . سپس هر زنبور کارگر یک زنبور همسایه را به تصادف انتخاب و به صورت تصادفی به سمت آن حرکت می کند. این کار جهت مقایسه منبع غذایی خود با منبع غذایی همسایه انجام می شود تا بهترین منبع غذایی شناسایی شود. موقعیت جدید این زنبور با رابطه زیر حاصل می شود:

j تعداد ابعاد موجود برای حرکت - حرکت یک زنبور می تواند در یک بعد یا در تمامی ابعاد ممکن باشد - ، D} و....و2وj={ 1 و   موقعیت اولیه رنبور است. k تعداد زنبورهای همسایه - اندازه جمعیت - ، SN} و....و2و .k={ 1   یک عدد تصادفی بین 1]و-[1 و   موقعیت جدید زنبور است. اگر موقعیت جدید کیفیت بهتری داشته باشد در منطقه جدید باقی می ماند و در غیر این صورت به منطقه قبلی خود باز می گردد و یک واحد به شاخص محاکمه این زنبور افزوده می شود. شاخص محاکمه شمارنده تعداد دفعات متوالی حرکت یک زنبور با عدم بهبود است. اگر زنبوری مقدار شاخص محاکمه اش از حد معین بیشتر شود به این معنی است که آن منطقه غذایی دیگر شهدی ندارد و بایستی ترک شود و بدین ترتیب این زنبور کارگر تبذیل به زنبور دیده بان می شود و آن منطقه را ترک و به ناحیه دیگری به صورت تصادفی حرکت می کند. هنگامی که جستجوی تمام گلزارها پایان یافت، هر زنبور کارگر، بالای گلزاری که اندوخته کیفی مطمئنی از نکتار و گرده دارد، رقص خاصی را اجرا میکند. این رقص که به نام رقص چرخشی شناخته میشود، اطلاعات مربوط به جهت تکه گلزار نسبت به کندو، فاصله تا گلزار و کیفیت گلزار را به زنبورهای دیگر انتقال میدهد. این اطلاعات زنبورهای ناظر را به سوی گلزار میفرستد.

زنبورهای ناظر به سوی گلزارهایی میروند که امید بخشتر هستند و امید بیشتری برای یافتن نکتار و گرده در آنها وجود دارد. وقتی همه زنبورها به سمت ناحیهای مشابه بروند، دوباره به صورت تصادفی و به علت محدوده ی رقصشان در پیرامون گلزار پراکنده میشوند تا به موجب این کار سرانجام نه یک گلزار، بلکه بهترین گلهای موجود درون آن تعیین موقعیت شوند. بیانگر کیفیت منبع غذایی iام، SN تعداد اعضای جمعیت و   احتمال انتخاب شدن هر منبع غذایی - یا زنبور کارگر موجود در آن منظقه - توسط زنبورهای ناظر است. به عبارتی الگوریتم زنبور عسل هر نقطه را در فضای پارامتری - متشکل از پاسخهای ممکن- به عنوان منبع غذا تحت بررسی قرار میدهد. زنبورهای کارگر - کارگزاران شبیه سازی شده - به صورت تصادفی فضای پاسخها را ساده میکنند و به وسیله تابع شایستگی کیفیت موقعیتهای بازدید شده را گزارش میدهند. جوابهای ساده شده رتبه بندی میشوند و دیگر زنبورها نیروهای تازه ای هستند که فضای پاسخها را در پیرامون خود برای یافتن بالاترین رتبه محلها جستجو می کنند که گلزار نامیده میشود. الگوریتم به صورت گزینشی دیگر گلزارها را برای یافتن نقطه ی بیشینه ی تابع شایستگی جستجو میکند .[16,15,12, 4]

-3 الگوریتم پیشنهادی

الگوریتم پیشنهادی شامل پنج مرحله به شرح زیر است:

-1 دریافت تعدادی کلید - عدد تصادفی - از کاربر: در این مرحله تعدادی عدد تصادفی بدون محدودیت بازه از کاربر دریافت می شود.

-2 تولید دنباله تصادفی: با استفاده از روش افزایشی تعداد کلید های مرحله قبل زیاد شده وتعداد آن ها برابر با اندازه سطرها و ستون های ماتریس تصویر می شود.

-3 دنباله تولید شده در محله قبل به عنوان ورودی به الگوریتم زنبورعسل داده شده و این الگوریتم کلیدهای نهایی جهت رمزنگاری را تولید می کند - اگر تصویر غیرمربعی باشد الگوریتم زنبورعسل دوبار اجرا می شود تا یک دنباله کلید برای رمزنگاری سطرها و یک دنباله دیگرهم برای رمزنگاری ستون ها تولید شود - .

-4 با استفاده از کلیدهای تولید شده ابتدا سطرها و سپس ستون های ماتریس تصویر جا به جا می شوند و رمزنگاری اولیهتصویر صورت می گیرد - مثلاً اگر مقدار اولین کلید برابر 50 باشد، مقدار های سطر شماره 1 با سطر شماره 50 جابجا می شوند - .

-5 جهت افزایش هر چه بیشتر امنیت رمزنگاری، ابتدا روی سطرها و سپس روی ستون های تصویر رمزگذاری شده شیفت چرخشی انجام یافته و تصویر رمزگذاری نهایی می گردد. برای رمزگشایی تصویر نیز معکوس مراحل فوق از آخر به اول اجرا می شود.

- 4 نتایج پیاده سازی تکینیک پیشنهادی را ابتدا روی دو تصویرمربعی میمون و هواپیما در اندازه های 64*64 و سپس روی همین تصویرها در حالت غیرمربعی در اندازه های 128*64 اعمال کرده که نتایج زیر حاصل گردیدند.

شکل - - 3 تصویر مربعی هواپیما و میمون در اندازه64*64 ، الف - تصویر اصلی، ب - تصویر رمزنگاری شده با استفاده از درهم ریزی و جا به جایی سطرها و ستون ها، ج - تصویر رمزنگاری شده نهایی با شیفت چرخشی، د - تصویر بازسازی شده

در متن اصلی مقاله به هم ریختگی وجود ندارد. برای مطالعه بیشتر مقاله آن را خریداری کنید