تیم برنامهنویسی پیاستور
هزینه سفارش:
۴۹۹,۰۰۰ تومان
تخصصی و منحصر به فرد بودن این اثر، تضمین کننده بهای محصول نسبت به آثار مشابه است.
امنیت تصاویر دیجیتال در بسیاری از سامانههای اطلاعاتی، پزشکی، نظامی و ارتباطی اهمیت زیادی دارد. تصاویر معمولی معمولاً دارای الگوهای قابل تشخیص، همبستگی بالا میان پیکسلهای مجاور و اطلاعات آماری مشخصی هستند. در صورتی که این تصاویر بدون رمزنگاری منتقل یا ذخیره شوند، افراد غیرمجاز میتوانند با بررسی ساختار تصویر به اطلاعات حساس آن دسترسی پیدا کنند.
این پروژه در محیط MATLAB پیادهسازی شده و امکان رمزنگاری، رمزگشایی و ارزیابی کیفیت الگوریتم را فراهم میکند. همچنین معیارهایی مانند ضریب همبستگی، هیستوگرام، آنتروپی، حساسیت به کلید، NPCR، UACI و PSNR برای بررسی عملکرد روش در نظر گرفته شدهاند.
رمزنگاری تصویر فرآیندی است که طی آن تصویر قابل مشاهده به دادهای تبدیل میشود که بدون داشتن کلید صحیح، درک و بازسازی آن دشوار باشد. تصویر اولیه در این فرآیند «تصویر ساده» یا Plain Image نام دارد و خروجی رمزنگاریشده با عنوان Cipher Image شناخته میشود.
هدف اصلی الگوریتم رمزنگاری تصویر، ایجاد تغییرات گسترده و کنترلشده در دو بخش مهم است:
اگر تنها مقدار پیکسلها تغییر کند، ممکن است ارتباط مکانی میان پیکسلها همچنان باقی بماند. از سوی دیگر، اگر تنها مکان پیکسلها جابهجا شود، اطلاعات آماری مربوط به مقادیر تصویر ممکن است حفظ شود. به همین دلیل، بسیاری از الگوریتمهای رمزنگاری تصویر از ترکیب دو عملیات «تغییر مقدار» و «تغییر مکان» استفاده میکنند.
در این پروژه، ابتدا با استفاده از دنبالههای آشوبی، جابهجایی سطرها و ستونها انجام میشود. سپس مقادیر پیکسلها با عملیات XOR تغییر میکنند و در مرحله پایانی، مکان پیکسلها بر اساس یک دنباله آشوبی دیگر جابهجا میشود. فرآیند رمزگشایی نیز با استفاده از همان کلیدها، ترتیب معکوس عملیات رمزنگاری را اجرا میکند.
آشوب یا Chaos به رفتارهایی گفته میشود که در ظاهر تصادفی و غیرقابل پیشبینی هستند، اما از روابط ریاضی مشخصی پیروی میکنند. یکی از ویژگیهای مهم سیستمهای آشوبی، حساسیت زیاد آنها به شرایط اولیه است. به این معنا که تغییر بسیار کوچک در مقدار اولیه میتواند دنبالهای کاملاً متفاوت ایجاد کند.
این ویژگی در رمزنگاری اهمیت زیادی دارد؛ زیرا کلید رمزنگاری میتواند شامل مقادیر اولیه و پارامترهای تابع آشوب باشد. اگر حتی یکی از این مقادیر به اندازه بسیار کمی تغییر کند، دنباله تولیدشده تغییر کرده و رمزگشایی صحیح تصویر امکانپذیر نخواهد بود.
در این پروژه از تابع آشوب لجستیک سهبعدی استفاده شده است. این تابع سه دنباله آشوبی با نامهای x، y و z تولید میکند که در هر مرحله به یکدیگر وابسته هستند. فرم کلی روابط استفادهشده به صورت زیر است:
تابع آشوب لجستیک سهبعدی به دلیل داشتن سه متغیر وابسته، فضای حالت پیچیدهتری نسبت به مدلهای تکبعدی ایجاد میکند. این ویژگی میتواند برای تولید دنبالههای رمزنگاری مناسب استفاده شود.
مهمترین ویژگیهای مورد استفاده در این پروژه عبارتاند از:
با این حال، استفاده از تابع آشوب به تنهایی به معنای تأمین امنیت کامل یک سامانه رمزنگاری نیست. کیفیت نهایی الگوریتم به انتخاب پارامترها، اندازه فضای کلید، روش تولید دنباله، نحوه حذف بخشهای گذرا، روش ترکیب عملیات و تحلیل مقاومت در برابر حملات بستگی دارد. این پروژه برای اهداف آموزشی، پژوهشی و شبیهسازی الگوریتم رمزنگاری تصویر طراحی شده است.
الگوریتمهای رمزنگاری تصویر را میتوان بر اساس نوع عملیاتی که روی تصویر انجام میدهند، به چند گروه تقسیم کرد.
در این روشها مکان پیکسلها تغییر میکند، اما مقدار اصلی آنها ثابت باقی میماند. این عملیات باعث میشود ساختار تصویری تصویر اصلی از بین برود و الگوی قابل مشاهده آن تغییر کند.
جابهجایی سطرها، جابهجایی ستونها و مرتبسازی مکان پیکسلها بر اساس یک دنباله شبهتصادفی، نمونههایی از این نوع عملیات هستند.
در این روشها مقدار عددی پیکسلها تغییر میکند. عملیات XOR یکی از روشهای متداول برای تغییر مقدار پیکسلها است. در این روش، مقدار پیکسل با یک دنباله کلیدی ترکیب میشود و خروجی جدید به دست میآید.
روشهای ترکیبی، تغییر مکان و تغییر مقدار را همزمان یا به صورت مرحلهای انجام میدهند. الگوریتم پیادهسازیشده در این پروژه نیز از همین رویکرد استفاده میکند. ابتدا بخشی از مکان و ترتیب پیکسلها تغییر میکند، سپس مقادیر پیکسلها با عملیات XOR تغییر داده میشوند و در پایان یک جابهجایی سراسری روی پیکسلها صورت میگیرد.
فرآیند رمزنگاری تصویر در این پروژه از چند مرحله مشخص تشکیل شده است. اجرای متوالی این مراحل سبب میشود تصویر خروجی شباهت بصری کمی با تصویر اصلی داشته باشد.
در ابتدای برنامه، کاربر میتواند تصویر مورد نظر خود را از طریق پنجره انتخاب فایل در متلب انتخاب کند. فایلهای تصویری با فرمتهایی مانند JPG و BMP قابل دریافت هستند.
نمونه کد مربوط به انتخاب تصویر به صورت زیر است:
[filename, pathname] = uigetfile( ...
{'*.jpg'; '*.bmp'}, ...
'File Selector');
ss = strcat(pathname, filename);
plainimage = imread(ss);
پس از دریافت تصویر، اندازه آن به ۲۵۶ در ۲۵۶ پیکسل تغییر داده میشود تا ابعاد ورودی برای مراحل بعدی یکسان باشد:
plainimage = imresize(plainimage, [256 256]);
اگر تصویر ورودی رنگی باشد، به تصویر خاکستری تبدیل میشود:
if size(plainimage, 3) == 3
bin_im = rgb2gray(plainimage);
else
bin_im = plainimage;
end
plainimage = bin_im;
تبدیل تصویر رنگی به خاکستری باعث میشود الگوریتم روی یک ماتریس دوبعدی از مقادیر پیکسلها اجرا شود. این موضوع ساختار محاسباتی برنامه را سادهتر کرده و امکان تحلیل مستقیم هیستوگرام و معیارهای آماری را فراهم میکند.
این سورس کد همانطور که در شکل زیر دیده میشود شامل 13 فایل میباشد. که سه فایل Image_Encryption.m ، Image_Decryption.m و Evaluate.m فایلهای اصلی و قابل اجرایی رمزنگاری تصویر با تابع آشوب در متلب هستند و 2 فایل مربوط به تصویر اولیه و کد شده میباشد و بقیه یعنی 8 فایل دیگر توابعی هستند که برای اجرا از داخل سه تابع اصلی فراخوانی میشوند.



پیاده سازی و کد رمزنگاری تصویر با استفاده از تابع آشوب لجستیک سه بعدی در متلب در نرم افزار Matlab 2014 نوشته شده و در نسخههای بالاتر نیز قابل اجرا میباشد. این فایل بصورت زیپ شده قابل دانلود میباشد. این اثر به صورت کامل در مورد رمزنگاری تصویر است و توسط کارشناسان پی استور بازنگری و تایید شده میباشد. این اثر دارای نشان تضمین کیفیت پی استور میباشد. برای دانلود اثر مذکور آن ر ا خریداری فرمایید. به محض خرید فایل لینک دانلود در دسترس خواهد بود. در صورت بروز هرگونه مشکل با واحد فروش پی استور تماس حاصل فرمایید.
برای مشاهده ویدیوی هر بخش، روی عنوان آن کلیک کنید.
تیم برنامه نویسی پی استور یکی از اولین گروههای تشکیل شده در مجموعه آموزشی پی استور میباشد. این تیم از اساتید مجرب و فارغ التحصیلان رشتههای فنی و مهندسی تشکیل شده که در زمینههای مختلف برنامهنویسی و تهیه سورس کد فعال هستند.
اطلاعات و جزئیات کامل این محصول
جهت تسلط عمیقتر و تکمیل مهارتهای خود، یادگیری این سرفصلها پیشنهاد میشود.
هزینه سفارش:
۴۹۹,۰۰۰ تومان
دیدگاهها و نظرات
مدیریت و پشتیبانی
نظرات و پیشنهادات خود را با ما در میان بگذارید.