مشخصات

زبان

سی شارپ

بانک اطلاعاتی

فایل ها

توضیحات

دارای سورس کد سی شارپ ، داکیومنت تحقیقاتی ۶۰ صفحه در فایل ورد ، مقاله پایه ، توضیح فارسی خطوط برنامه نویسی شده و فیلم نحوه اجرا می باشد

۵۵,۰۰۰ تـــــومان

مطالب مرتبط

سورس پنهان سازی اطلاعات در تصاویر با الگوریتم ژنتیک به زبان سی شارپ

  • دوشنبه ۱۲ اسفند ۱۳۹۸
  • بازدید ۱,۵۵۷ نفر

تصویر image-steganography-for-message-hiding-using-genetic-algorithm-and-c-sharp_8320 سورس پنهان سازی اطلاعات در تصاویر با الگوریتم ژنتیک به زبان سی شارپ

سورس پنهان سازی اطلاعات در تصاویر با الگوریتم ژنتیک به زبان سی شارپ

در این بخش سورس پنهان سازی اطلاعات در تصاویر با الگوریتم ژنتیک به زبان سی شارپ را برای شما آماده کرده ایم که در محیط نرم افزار Visual Studio و زبان برنامه نویسی سی شارپ نوشته شده است. در ادامه می توانید توضیحات، تصاویر و همچنین فیلمی از نحوه کارکرد برنامه را مشاهده کنید.

توضیحات پروژه

برای پنهان سازی اطلاعات در تصاویر، روش های زیادی وجود دارند که یکی از این روش ها استفاده از الگوریتم ژنتیک برای تصاویر خاکستری (DEGGA) است که می تواند داده های زیادی را در تصاویر خاکستری ذخیره کند.

پنهان سازی اطلاعات در تصاویر در حوزه مکان

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

یکی از روش های مرسوم در پنهان سازی حوزه مکان، استفاده از بیت های کم ارزش بایت های تشکیل دهنده تصویر حداکثر تا بیت چهارم است. شکل زیر، نمونه ای از عمل کرد است که این روش را برای یک تصویر ۲۰ در ۲۰ خاکستری نمایش می دهد.

تصویر image-steganography-for-message-hiding-using-genetic-algorithm-and-c-sharp_8320_4 سورس پنهان سازی اطلاعات در تصاویر با الگوریتم ژنتیک به زبان سی شارپ

همانطور که مشاهده می کنید در این روش نهان سازی سطح خاکستری تصویر تغییری جزیی نموده و به جای عدد ۲۵۰ به عددی بین ۲۴۰ تا ۲۵۵ و در این مثال به ۲۵۳ تغییر می کند. چشم انسان نمی تواند به سهولت این میزان تغییر را درک کند و در صورتی که پیام ذخیره شده دارای توزیع تصادفی یکنواخت از صفر ها و یک ها باشد به هیچ عنوان چشم انسان نخواهد توانست تغییرات را احساس کند.

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

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

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

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

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

معرفی الگوریتم ژنتیک برای پنهان سازی اطلاعات در تصاویر خاکستری

در الگوریتم ژنتیک (DEGGA) ابتدا تصویری که قرار است درون تصویر دیگر جاسازی شود پیکسل های آن که عددی بین ۰ تا ۲۵۵ است، خوانده شده و به مبنای ۲ تبدیل می شود. بعد از خوانده شدن تمام پیکسل ها و تبدیل آنها به مبنای ۲ رشته ای از صفر و یک ها بدست خواهد آمد سپس تصویری که قرار است اطلاعات سری درون آن جاسازی شود پیکسل هایش به بلوک های ۳*۳ تقسیم شده و مقدار آنها در مبنای ۲ نمایش داده می شوند. نمونه ای از این عملیات در شکل زیر نشان داده شده است.

تصویر image-steganography-for-message-hiding-using-genetic-algorithm-and-c-sharp_8320_5 سورس پنهان سازی اطلاعات در تصاویر با الگوریتم ژنتیک به زبان سی شارپ

در مرحله ای بعد، از بایت های تصویر سری ۴ بیت را برداشته و با ۴ بیت سمت راست بلوک ۱ تصویر پوششی جایگزین می کنیم این عملیات را تا پایان بیت های تصویر سری، بر روی تمام بایت های بلوک ها انجام می دهیم.

بعد از اتمام عملیات جایگزینی، ۳ بیت از سمت راست بلوک جدید، برداشته وعمل جهش بیتها را با xor کردن آنها با هم انجام می دهیم و دوباره سر جای خود قرار داده می شود این عمل را بر روی تمام بایت های بلوک ها انجام می دهیم.

تصویر image-steganography-for-message-hiding-using-genetic-algorithm-and-c-sharp_8320_6 سورس پنهان سازی اطلاعات در تصاویر با الگوریتم ژنتیک به زبان سی شارپ

بعد از اتمام این عملیات رشته های بدست آمده را به مبنای ۱۰ بر گردانده و با پیکسل معادل خود در تصویر پوششی جایگزین می کنیم. در این روش چون از ۴ بیت کم ارزش هر پیکسل استفاده می شود مقدار هر پیکسل ممکن است بین مثبت ۱۶ تا منفی ۱۶ تغییر پیدا کند.

تصویر image-steganography-for-message-hiding-using-genetic-algorithm-and-c-sharp_8320_7 سورس پنهان سازی اطلاعات در تصاویر با الگوریتم ژنتیک به زبان سی شارپ

بلوک دیاگرام و تصاویر استفاده شده در این الگوریتم بر روی تصاویر خاکستری در دو شکل زیر نشان داده شده است.

تصویر image-steganography-for-message-hiding-using-genetic-algorithm-and-c-sharp_8320_8 سورس پنهان سازی اطلاعات در تصاویر با الگوریتم ژنتیک به زبان سی شارپ

در جدول زیر حداکثر سیگنال به نویز تصویر پوششی با تصویر استگانوگرافی نمایش داده شده است که هر چه مقدار PSNR بیشتر باشد، بدین معنی است که تصویر نهایی به تصویر پوششی نزدیک است و هر چه این مقدار به عدد صفر نزدیک شود نشان دهنده تغییرات بیشتر تصویر نهایی می باشد.

تصویر image-steganography-for-message-hiding-using-genetic-algorithm-and-c-sharp_8320_10 سورس پنهان سازی اطلاعات در تصاویر با الگوریتم ژنتیک به زبان سی شارپ

 


تصویر 1
تصویر 2
تصویر 3
باکس دانلود
شناسه:
۸۳۲۰
زبان:
سی شارپ
توضیحات:
دارای سورس کد سی شارپ ، داکیومنت تحقیقاتی ۶۰ صفحه در فایل ورد ، مقاله پایه ، توضیح فارسی خطوط برنامه نویسی شده و فیلم نحوه اجرا می باشد
قیمت:
۵۵,۰۰۰ تـــــومان
ثبت نظر
ریفریش کنید!
نظرات کاربران (۰ مورد)

هیچ نظری ثبت نشده است