بخشی از مقاله

*** این فایل شامل تعدادی فرمول می باشد و در سایت قابل نمایش نیست ***


رمزنگاری تصویر مبتنی بر آشوب با استفاده از ترکیب الگوریتم ژنتیک و دنباله هایDNA


خلاصه :
این مقاله بر روی الگوریتم های تکاملی که اخیرا در رمزنگاری تصویر توسعه یافته اند مطالعه می کند. یـک الگـوریتم رمزنگاری تصویر نوین بر اساس یک مدل ترکیبـی از پوشـش اسـید دئوکسـی ریبونوکلئیـک (DNA) ، الگـوریتم ژنتیـک (GA) و یک نگاشت لجستیکی ارائه شده است. این مطالعه با اسـتفاده از DNA و توابـع نگاشـت لجسـتیک بـرای ایجـاد تعدادی ماسک DNA اولیه از GA جهت تعیین بهترین ماسک برای رمزگذاری واستفاده می کند. مزیت قابل توجه ایـن روش این است که کیفیت ماسک DNA برای به دست آوردن بهترین ماسک می باشد که سازگار با تصاویر اصلی اسـت را بهبود می دهد. نتایج تجربی و شبیه سازی های کامپیوتری هر دو تایید می کنند که طرح پیشنهادی نـه تنهـا رمزگـذاری بسیار عالی را نشان می دهد بلکه در برابر حملات مختلف معمولی مقاوم است.


کلمات کلیدی: رمزنگاری تصویر - الگوریتم ژنتیک - - DNA نگاشت لوجستیک


.1 مقدمه

از آنجا که توسعه سریع اینترنت در تکنولوژی ابداع شده است، امنیت محتوی داده چند رسانه ای، از جملـه تصـاویر و ویدئو، به یک مشکل اصلی تبدیل شده است .[1] برای محافظـت از ایـن انـواع داده، روشـهای رمزنگـاری مختلـف توسـط دانشمندان ارائه شده است .[2] از آنجا که داده های بزرگ و همبستگی بالا در میان پیکسـل هـای مجـاور در یـک تصـویر مورد نیاز است ، تکنیک های اولیه، مانند AES, DES, IDEA, and RSA, برای رمزنگاری مناسـب کارآمـد نیسـتند .[3] برای حل این مشکل، محققان بر روی روش هایی که برآورده کننده اغتشاش و انتشار مورد نیاز اسـت متمرکـز شـده اند .[4] در سال های اخیر، چندین الگوریتم مبتنی بر آشوب پیشنهاد شـده اسـت [5] و محبوبیـت گسـترده ای در میـان محققان پیدا کرده اند. از آنجا که از ویژگی های ذاتی سیستم های آشوب، مانند حساسـیت بـه مقـدار اولیـه و تصـادفی، از روش رمزگذاری تصویر مبتنی بر سیستم آشوب به نظر می رسد برای رمزگذاری با امنیت بـالا مناسـب باشـد. ایـن نـوع از


رمزنگاری به طور معمول نیاز به دو مرحله دارد: جایگشت و انتشار .[6] در مرحله جایگشت، پیکسل تصویر با کمک از یـک نگاشت آشوب بدون تغییر سطح خاکستری پیکسل اختصاص می یابد. سپس، در مرحله انتشار، ارزش هر پیکسل اسـت بـا استفاده از یک دنباله آشوب تغییر می کند. وانگ و همکاران [7] رمزنگاری تصویر سریع مبتنی بر آشوب است که ترکیبـی از جایگشت و انتشار در یک مرحله است را ارائه داده اند. تصویر اصلی را به بلوک هایی تقسیم می کند، و از آشوب فضـایی و زمانی استفاده می کند برای برهم زدن بلوک ها، در حالی که گام انتشار به طور همزمان استفاده می شـود. دانشـمندان یکی دیگر از روش های موفق برای رمزگذاری تصویر پیدا کرده اند، که ، رویکرد رمزگذاری نوری است کـه توسـط تکنیـک هــــــای تبــــــدیل دامنــــــه [8] الهــــــام گرفتــــــه اســــــت، تبــــــدیل فوریــــــه کســــــری((FrFT [9] ، تبدیل فوریه کسری گسسته [10] (DFrFT) ، تبدیل چرخنده[11] ، تبدیل فرنل[12]و تبدیل آرنولـد[13] بـرای بهبود تکنیک های رمزنگاری تصویر می باشد.

یکی از جدیدترین و موفق ترین روش های رمزگذاری تصویر رمزگذاری تصـویر مبتنـی بـر DNA اسـت .[14] ایـده اساسی همه رمزنگاری های تصویر مبتنی بر DNA در دو مرحله طبقه بندی می شود: ابتدا، با استفاده از تئـوری DNA پیکسل های تصویر اصلی به دنباله های DNA کد گذاری شده و سپس با استفاده از قواعد انهـا، کلیـد تصـویر تولیـد مـی شود. در مرحله دوم، کد گذاری پیکسل تصویر اصلی یک تصویر کلید بر اساس قوانین عمل DNA ایجاد کردهو تشـکیل تصویر رمز را می دهد. ژانگ و همکاران [15] رمزگذاری تصویر مبتنی بر DNA پیشنهاد داده اند که در آن آنها از تعاریف عملیات دنباله DNA و ترکیب نگاشت فوق آشوب جهت رمزنگاری پیکسل های تصویر استفاده کرده اند، عملیات تلفیقی تصویر و دنباله های DNA اعمال XOR برای پیاده سازی رمزنگاری تصویر می باشد.

یکی دیگر از روش های اخیر شامل استفاده از رمزنگاری تصویر بر اساس الگوریتم های تکاملی (EA) می باشـد .[16] این نوع روش در دو مرحله اجرا می شود. اول، شماره مشخص شده از تصاویر رمز از تصویر سـاده بـا اسـتفاده از یـک تـابع آشوب استخراج شده است. در مرحله دوم، EA یک روند تکاملی برای بهبود کیفیت تصاویر رمـز را بکـار مـی گیـرد و در نهایت بهترین تصویر رمز را به عنوان خروجی الگوریتم رمزنگاری نشان می دهد. Enayatifar و همکاران .[17] الگـوریتم رقابت استعماری (ICA) برای رمزگذاری تصویر را با موفقیت توسعه داده اند. الگوریتم برخی از تصاویر رمزگذاری شده را با استفاده از نگاشت تنت (tent) نامتقارن تولید می کند. پس از آن، ICA آنتروپی و ضریب همبستگی را به عنوان یک تابع بهینه برای بهبود کیفیت تصویر رمز بکار می گیرد.

به عنوان یک پیشنهاد برای یک الگوریتم رمزنگاری تصویر قدرتمند، در این تحقیق، یک مدل ترکیبی نـوین از دنبالـه DNA، نگاشت آشوب و الگوریتم ژنتیک توسعه داده شده است. مزیت اصلی روش ارائه شـده انجـام یـک الگـوریتم تکـرار شونده تا زمانی که آن به نتایج مطلوب برسد می باشد. برای این کار، تعداد مشخص از ماسک های DNA تحت تاثیر قـرار میگیرند توسط ترکیب (crossover) برای پیدا کردن بهترین ماسک که سازگار با تصـویر اصـلی اسـت. در مرحلـه اول از الگوریتم، برخی از ماسک DNA با استفاده از دنباله DNA و نگاشت لجستیک ایجاد می شوند. این اندازه ماسک با تصویر اصلی برابر است. رمز اولیه تصاویر می تواند بسیار امن باشد، هنگامیکه شیوه ی ماسک DNA با سـرعت وآنتروپـی بـالا، پیشنهاد شد.

در مرحله دوم، GA با استفاده از آنتروپی به عنوان یک تابع بهینه پیدا کـردن بهتـرین ماسـک DNA بـرای تصـویر اصلی است. در واقع، هدف ما استفاده از قدرت دنباله DNA در رمزگذاری اطلاعـات، در همـان زمـان، اسـتفاده از توانـایی GA به منظور بهبود و پیدا کردن بهترین راه حل در میان همه راه حل ها می باشد.

بقیه مقاله به شرح زیر است. ماسک DNA، نگاشت لجستیک و GA در بخش 2 معرفـی شـده اسـت، بخـش 3 بـه معرفی روش پیشنهادی اختصاص داده شده است. نتایج تجربی و تجزیه و تحلیل امنیتی در بخش 4 ارائه شده اسـت. ارائـه نتیجه گیری در آخرین بخش بحث شده است.

 

.2 مقدمات اولیه

در این بخش، ماسک DNA، تابع نگاشت لجستیک و GA توضیح داده می شود.

.2-1 دنباله اسید دئوکسی ریبونوکلئیک

دانش دنباله اسید دئوکسی ریبونوکلئیک (DNA) دنباله ها برای تحقیقات پایه بیولـوژیکی ضـروری هسـتند، و در زمینه های کاربردی متعددی از قبیل تشخیصـی، بیوتکنولـوژی، پزشـکی قـانونی، و سیسـتماتیک زیسـتی هسـتند. چهـار اسیدهای نوکلئیک مختلف در یک دنباله DNA وجود دارد: A (آدنـین)، T (تیمـین)، C (سـیتوزین)، و G (گـوانین). بـا توجه به قوانین جفت شدن پایه، آدنین پورین (A) همیشه جفت با تیمین پیریمیدینی (T)، و سـیتوزین پیریمیـدینی (C) همیشه جفت با گوانین پورین .(G) این را می توان نتیجه گرفت که A و T مکمل هستند، و G و C نیز مکمل هم هستند .[18] این روابط اغلب به نام واتسون-کریک، قوانین جفت شدن پایه و پس از اینکه توسط دو دانشمند، که اساس ساختاری آنها کشف شد نام دارد. . در باینری، 0, 1 مکمل یکدیگر می باشند، بنابراین 00 , 11 مکمل یکدیگر بوده و همچنین 01, 10 نیز مکمل یکدیگر می باشند. برای برآورده کردن پایه واتسون -کریک جفت شـدن قـوانین، جـدول1 برنامـه نویسـی و رمزگشایی قوانین نگاشت برای دنباله DNA مورد استفاده در این مقاله را معرفی می کند. به عنوان مثال اگر یک پیکسـل با سطح خاکستری 157 باشد، قالب باینری آن (10011101)2 می باشد. کد DNA برا همـه 8 قـانون در جـدول 1 بـه صـورت زیـر اسـت: Rule 1 (CGTG), Rule 2 (GCTC), Rule 3 (CGAG), Rule 4 (GCAC), Rule 5 .(ATGT), Rule 6 (TAGA), Rule 7 (ATCT) and Rule 8 TACA) بـا توجـه بـه توسـعه گسـترده ای محاسبات DNA، به نظر می رسد که بررسی برخی از اپراتورهای جبری و بیولوژیکی ضروری [19] است. استفاده از جدول 2 نشان دهنده عملیات XOR ، جمع، و تفریق می باشد.


.2-2 تابع نگاشت لجستیک

به طور کلی، به دلیل ویژگی های ذاتی توابع آشوب، آنها به شدت به مقادیر پارامتر های اولیه و عملکرد تکامل مربـوط به آنها [20] حساس هستند. این به این معنی است که تغییر جزئـی در مقـدار پـارامتر ورودی باعـث تغییـرات بزرگـی در مقادیر است که توسط تابع تکاملی تولید می شود. یکی از توابع آشوب محبوب ترین و مفیدترین، تـابع نگاشـت لجسـتیک است که در معادله((1 شرح داده شده است.

 

مقادیر تابع نگاشت لوجستیک برای R=3.999 و Xn=0.66 برای سیصد بار تکرار در شکل((1 نشان داده شده است.
(1) Xn+1=R.Xn (1-Xn)

.2-3 الگوریتم ژنتیک

به تازگی، الگوریتم های تکاملی (EAS) مقدار زیادی از توجه محققان را دریافت کرده اند و در نظر گرفته شده اسـت که در بسیاری از برنامه های کاربردی مفید باشند .[21] یکی از شناخته شده ترین الگوریتم های تکاملی الگوریتم ژنتیـک است.الگوریتم ژنتیک (GA) جستجوی اکتشافی و نوعی از الگـوریتم تکـاملی اسـت. بسـیاری از برنامـه هـای کـاربردی بـا استفاده از الگوریتم ژنتیک توسعه یافته اند .[22] در واقع، GA به چهار مرحله اصلی طبقه بندی شده است:

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

-3روش پیشنهادی

روش ارائه در سه زیر زیر بخش که در آن جزئیات توضیح داده شده، دسته بندی خواهد شد.

.3-1 تولید کلیدهای مخفی
برای داشتن یک الگوریتم رمزنگاری امن و مطمئن، ارزش X0 در معادله (1) از یک کلید 120 بیتی در نظر گرفته شده توسط روابط (2) و (3) توضیح داده می شود.
(2) Key={K1,K2'…'.15}


(3)
که در آن Ki نشان دهنده یک کاراکتر 8 بیتی و ⊕ نشان دهنده xor می باشد.

.3-2 تولید جمعیت اولیه
تعداد مشخص از ماسک DNA به عنوان جمعیت اولیه تولید می شود. هر عضو از جمعیت با داشتنX0 و معادله (1) ایجاد شده است و به شرح زیر است:

ماسک خالی با ابعاد N × M می تواند به عنوان یک آرایه یک بعدی در نظر گرفته شود (معادله .((4)

(4) [P (n-1)*M*N+1, P (n-1)*M*N+2,…' P (n-1)*M*N+M*N]


آرایه بالا نشان می دهد یک جمعیت 1 هنگامی که n=1 اسـت و جمعیـت 2 هنگـامی کـه n=2 اسـت و بـه همـین ترتیب. هر P با استفاده از معادله (5) به دست می آید.
(5) Pi= [Xi*255]

در حالی که همه ی Xi ها از معادله (1) می آیند.
برای هر یک از اعضای جمعیت، کلید Key1 و Key2 به عنوان کلید مخفی داخلی ذخیره می شوند و همـانطور کـه در معادلات (6) و (7) نشان داده شده است محاسبه می شوند.
(6) Key1n=X (n-1)*M*N+1
(7) Key2n =X (n-1)*M*N+ (M+N)/2
در این مرحله، تمام جمعیت انتظار می رود که به ماسک DNA با توجه به معادله (1) و جـدول 1 تبـدیل شـود، در
مرحله اول، یک تعداد قانون (R) در جدول 2 با کمک معادله (8) انتخاب خواهد شد.
(8) Ri= [Xi*7] +1
که مقدار اولیه Xi با استفاده از معادله (1) تولید می شود و مقدار آخر Xi در معادله (5) بدست می آید.
قانون در جدول (2)، متناظر با R1 ، برای اولین مقدار در جمعیت اولیه استفاده می شود، و این رونـد تـا هتگـامی کـه آخرین مقدار در جمعیت نهایی ملاقات شود ادامه خواهد یافت. برای درک بهتر ، یک مثال ساده ارائـه شـده اسـت. فـرض کنید که ابعاد یک تصویر اصلی به طور نمونه 2 × 2 است، و X0 بدست آمده است،از معادلات ( 9 ) و (3) فرآیند محاسبات مقدار اولیه از جمعیت اولیه در فاز 1 در شکل 2 نشان داده شده است.

.3-3 اعمال الگوریتم ژنتیک

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

.3-3-1 گام :1 اندازه گیری آنتروپی ماسک های DNA

برای اندازه گیری آنتروپی هر ماسک ) DNA یک عضو از جمعیت اولیه)، ابتدا، یک تصویر اصـلی 2 بعـدی بـه یـک آرایه ی 1 بعدی همانطور که در بخش 3-2 گفته شد باید تبدیل شود. پس از آن، تمامی پیکسل های تصویر اصلی به یـک قالب باینری تبدیل می شوند. در نهایت، با استفاده از جدول (1) ، تصویر اصلی به دنباله های DNA کدگذاری مـی شـود. شماره ی قانون برای پیکسل i با استفاده از معادله (9) تعیین می شود.
(9) (i mod 8)+1
آنگاه، معادله زیر برای
کدگذاری پیکسل های تصویر اصلی و تولید تصویر رمز شده استفاده می شود Pi/=Pi. XOR. P/i-1.XOR.Di
(10)
= Subject to:

 

که P/ و P/i به ترتیب، پیکسل های تصویر اصلی و تصویر رمزنگاری شده هستند. Di نشان دهنـده ی مقـدار ماسـک DNA می باشد. XOR در معادله (10) یک XOR بیولوژیکی است که از جدول 2 گرفته شده اسـت. بـرای سـهولت در درک بهتر، یک مثال ساده در فاز 1 در شکل 2 در ادامه ارائه شده است.

اولین دنباله DNA بر روی تصویر اصلی، ماسک می شود. سپس، هر دو پیکسل متناظر (یکی متعلق به تصویراصـلی و دیگری متعلق به ماسک (DNA توسط XOR بیولوژیکی تحت تاثیر قرار میگیرند (جدول .(2 و این بـرای پیکسـل هـای تمام تصویر ادامه خواهد یافت. نتایج به دست آمده نشان می دهد که برای اولین بار تصویر رمزشده، و با استفاده از معادلـه (11)، که توسط شانون پیشنهاد [23]، آنتروپی این تصویر رمز محاسبه می شود. آنتروپی همه ماسک DNA یکسـان بـه دست می آید.


(11)

در حالی که M نشان دهنده ی سطح خاکستری استفاده شده در تصویر است، که در این مقاله برابر 8 می باشد و P(Si) احتمال رخداد متغییر Si می باشد.


.3-3-2 گام : 2 تولید فرزندان

چرخ رولت [24] نوع روش انتخابی در GA مورد استفاده در این تحقیق است. پس از انتخاب یک جفت از راه حل ها ( تصویر رمزنگاری شده) به عنوان والد، یک ترکیب تک نقطه ای بر رو هر دو والد انتخاب شده انجام می شود. همه پیکسل فراتر از آن نقطه بین دو والد عوض می شوند . موقعیت نقطه ذکر شده (W) برای هر جمعیـت بـا اسـتفاده از معادلـه (12) محاسبه شده است. این مقدار در هر جمعیت با موقعیت Key2 در جمعیت ذکر شده برابر است.

(21) W=(M*N)/2

مثال زیر یک ترکیب تک نقطه ای را نشان می دهد و همچنین مقدار Key 1وKey 2 پس از ایجاد فرزند جدید می باشد. فرض کنید که جمعیت Y و جمعیت Z توسط انتخاب چرخ رولت جهت انجام ترکیب انتخاب شده باشند. شـکل 3 راه حل جدید را به عنوان Child 1وChild 2 نشان می دهد و همچنین مقـدار جدیـد Key 1وKey 2 را بـرای هـر یک از آنها نشان می دهد.

.3-3-3 گام :3 جهش

در هر تکرارف برخی راه حل ها که حداقل مقدار انتروپی را دارند به عنوان راه حل ضعیف انتخاب شده اند و جایگزین خواهند شد توسط راه حل هایی تصادفی جدید که طبق بخش 3.2 ایجاد شده اند.

.3-3-4 گام :4 همگرایی

گام 1، گام 2 و گام 3 در بخش جاری ادامه خواهند یافت تا هنگامی که شرایط توقف ملاقات شود. در نهایـت راه حـل با بیشترین انتروپی انتخاب شده به عنوان تصویر رمز key1,key2وkey در معادله (2) برای رمزگشایی تصـویر رمزگـذاری شده مورد نیاز هستند. کل فرآیند روش ارائه شده در شکل 4 نشان داده شده است.

 


شکل -2 درست کردن یک نمونه عدد برای جمعیت اولیه

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