استگانوگرافی یا پنهان نگاری چیست؟
استگانوگرافی یا پنهان نگاری چیست؟
با توجه به حجم دیتایی که امروزه در جهان بصورت الکترونیکی تولید و جابجا می شود جای تعجبی ندارد که روش های متعددی برای حفاظت از داده ها بوجود آید. یکی از روش هایی که در این حوزه به سرعت در حال رشد است روش استگانوگرافی است. در این مقاله سعی کردیم به جزئیات و مفهوم استگانوگرافی بپردازیم.
موضوعات بررسی شده در این آموزش به شرح ذیل می باشد:
- استگانوگرافی چیست ؟
- تفاوت استگانوگرافی و کریپتوگرافی چیست ؟
- تکنیک های استگانوگرافی
- بهترین ابزارهای انجام استگانوگرافی
استگانوگرافی (Steganography) چیست؟
استگانوگرافی هنر و علم قرار دادن پیام های مخفی در یک پیام پوششی است، به طریقی که هیچ کس جز فرستنده و گیرنده پیام به وجود پیام مخفی شک نکند. شکل زیر مدلی از نحوه عملکرد استگانوگرافی را شرح میدهد.
براساس تصویری که مشاهده می کنید پیام پوششی و پیام مخفی هر دو به عنوان ورودی وارد رمزنگار می شوند. تابع بخش رمزنگار استگانوگرافی (f(X,M,K پیام پنهان را در فایل پوششی قرار میدهد . نتیجه کار پیام حامل، بسیار شبیه فایل پوششی شما میباشد و هیچ تغییر قابل مشاهده ای ندارد که این کار باعث تکمیل فرایند رمزنگاری می شود. برای بازیابی و دیدن پیام مخفی فایل حامل وارد رمزگشا steganography می شود .
پیشینه تاریخی steganography
Steganography یعنی پنهان کردن پیام مخفی پشت یک پیام معمولی که از دو کلمه یونانی Steganos به معنی پوشش و کلمه Graphia به معنی نوشتن گرفته شده است. استگانوگرافی یک شیوه باستانی است که طی هزاران سال و به شیوه های مختلف برای حفظ ارتباطات خصوصی انجام شده است. به مثال زیر توجه کنید:
- اولین استفاده از استگانوگرافی را می توان در سال 440 قبل از میلاد مشاهده کرد که مردم در یونان باستان پیام ها را بر روی چوب می نوشتند و آن را با موم می پوشاندند که به عنوان یک وسیله پوشش دهنده عمل میکرد.
- رومیان از اشکال مختلف جوهرهای نامرئی استفاده میکردند که برای رمزگشایی آن پیام ها به نور و گرما نیاز بود.
- در طول جنگ جهانی دوم آلمانی ها ریزگردهایی را معرفی کردند که سایز تمام اسناد، عکس ها و نقشه ها به اندازه یک نقطه میکرد و قابل اتصال به یک برگه کاری معمولی بود.
- رمزهای تهی (Null Ciphers) که از روش پنهان کردن پیام رمزنگاری نشده در یک پیام به ظاهر معمولی استفاده می کنند و پیام خود را در داخل یک متن به صورت پراکنده پنهان می کردند.
امروزه ما از تکنیک ها و ابزارهای steganography مدرنی برای اطمینان از پنهان ماندن پیام های خود استفاده می کنیم. اکنون ممکن است شما تعجب کنید که شاید استگانوگرافی شبیه cryptography باشد. خیر آنها دو مفهوم کاملا متفاوت هستند که در ادامه به تفاوت های آنها اشاره خواهیم کرد.
تفاوت بین Steganography با cryptography در چیست؟
در اصل هر دو یک هدف دارند و آن هم حفاظت از اطلاعات شماست. چه بسا که هرکدام از آن ها مکانیزم های متفاوتی برای حفاظت از اطلاعات دارند.
کریپتوگرافی اطلاعات را به رمز متن تبدیل میکند که بدون کلید رمزگشای آن قابل فهمیدن نیست. بنابراین اگر کسی این پیام رمزگذاری شده را رهگیری کند به راحتی می بیند که نوعی رمزگذاری اعمال شده است. از طرف دیگر Steganography فرمت اطلاعات را تغییر نمیدهد اما وجود پیام را پنهان میکند.
کریپتوگرافی | استگانوگرافی | |
تکنیک تبدیل اطلاعات به شکل غیر مفهوم | تکنیک پنهان کردن وجود ارتباطات | توضیح |
فراهم کردن حفاظت از اطلاعات | امن نگه داشتن ارتباطات | هدف |
همیشه | هرگز | قابل مشاهده بودن اطلاعات |
تغییر کلی ساختار اطلاعات | تغییر ندادن ساختار کلی اطلاعات | ساختار داده |
نیازهای ضروری | اختیاری ، در صورت استفاده از امنیت بیشتری استفاده میشود | کلید |
در صورت داشتن کلید رمزگشایی می توانید پیام اصلی را از درون متن رمزنگاری شده متوجه شوید . | پس از کشف یک پیام مخفی ، هرکسی می تواند از داده های مخفی استفاده کند. | خطا |
بنابراین به زبان دیگر، برای انتقال اطلاعات محرمانه استگانوگرافی روش بهتری نیست. چرا که در صورت آشکار شدن مخفی بودن پیام استخراج پیام مخفی راحت تر است . در ادامه این آموزش با ابزارها و تکنیک های مختلف استگانوگرافی آشنا می شویم.
تکنیک های steganography
بسته به ماهیت شیء پوششی (شی واقعی که داده های مخفی در آن تعبیه شده است) ، استگانوگرافی می تواند به پنج نوع تقسیم شود که در ادامه به جزییات هر کدام از این دسته ها می پردازیم.
- استگانوگرافی متن
- استگانوگرافی عکس
- استگانوگرافی ویدیو
- استگانوگرافی صدا
- استگانوگرافی شبکه
استگانوگرافی متن
steganography متن تکنیک پنهان کردن اطلاعات داخل فایل متنی است که شامل مسائلی مانند تغییر فرمت متن، تغییر کلمات در متن، تولید تصادفی و ترتیبی کاراکتر یا استفاده از گرامر مستقل از متن برای تولید متن های خوانا می شود. تکنیک های مختلفی برای پنهان کردن اطلاعات در متن استفاده می شود که شامل موارد زیر است:
- متد براساس فرمت
- تولید تصادفی و آماری
- روش زبان شناسی
استگانوگرافی عکس
پنهان کردن داده با استفاده از قراردادن عکس بعنوان شی پوششی را steganography عکس می گویند. در استگانوگرافی دیجیتال به دلیل استفاده تعداد زیادی از بیت ها در نمایش دیجیتالی یک تصویر به طور گسترده ای از عکس ها استفاده می شود. راه های زیادی برای پنهان کردن اطلاعات درون یک عکس وجود دارد. راهکارهای رایج شامل موارد زیر می باشد:
- طزریق حداقل بیت کافی
- نقاب زدن و فیلترینگ
- رمزگذاری الگوی زائد
- رمزگذاری و پراکندگی
- کدینگ
استگانوگرافی صدا
در steganography صدا، پیام مخفی داخل سیگنال صوتی که ترتیب باینری فایل صوتی را تغییر میدهد قرار داده می شود. پنهان کردن پیام مخفی در یک سیگنال صوتی به مراتب سخت تر از بقیه انواع steganography مانند استگانوگرافی عکس است. این متد داده ها را در فایل WAV،AU، و حتی MP3 پنهان می کند. متدهای مختلفی برای این کار وجود دارد که شامل موارد زیر می باشد:
- رمزگذاری حداقل بیت کافی
- رمزگذاری برابر
- کدینگ فاز
- گسترش طیف
استگانوگرافی فیلم
در استگانوگرافی فیلم انواع داده را در فایل دیجیتالی فیلم پنهان می کنند. مزیت این مدل آن است که حجم زیادی از داده را می توان در آن پنهان کرد . این مدل را ترکیبی از steganography تصویر و صدا میتوانید در نظر بگیرید. دو کلاس اصلی steganography فیلم شامل موارد زیر می باشند:
- قراردادن داده در فیلم فشرده نشده خام و سپس فشرده سازی آن
- قرار دادن داده در فایل فشرده شده
استگانوگرافی شبکه ( پروتکل steganography)
در این تکنیک داده ها را در پروتکل های کنترل کننده شبکه قرار می دهند مانند پروتکل (TCP,UDP,ICMP) . از استگانوگرافی می توانید در بعضی از کانال های پنهانی مدل OSI استفاده کنید. برای مثال می توانید داده را در بخش هایی که اختیاری است در هدر یک پکت TCP/IP پنهان کنید.
در دنیای دیجیتالی امروز ابزارهای نرم افزاری بسیاری برای انجام steganography وجود دارد. در ادامه این مقاله ما به بررسی چند مورد از ابزارهای رایج استگانوگرافی و قابلیت های آن ها می پردازیم.
بهترین ابزارها برای انجام steganography
نرم افزار های زیادی برای انجام استگانوگرافی وجود دارد. بعضی از آن ها steganography معمولی را انجام می دهند و تعداد کمی از آنها پیش از مخفی کردن داده رمزنگاری را نیز انجام می دهند. در لیست زیر تعدادی از ابزارهای رایگان steganography معرفی شده است:
- Stegosuite: یکی از ابزارهای رایگان که به زبان جاوا نوشته شده است. با این ابزار شما براحتی می توانید اطلاعات محرمانه خود را داخل یک فایل عکس قرار دهید.
- Steghide: یکی از نرم افزارهای متن باز که با استفاده از آن می توانید یک فایل مخفی را در داخل یک عکس یا فایل صوتی پنهان کنید.
- Xiao steganography: یک نرم افزار رایگان که برای پنهان کردن داده در یک فایل عکس با فرمت BMP یا یک فایل صوتی با فرمت WAV از آن استفاده می شود.
- SSuite Picsel: یک نرم افزار رایگان پرتابل(قابل حمل و بدون نیاز به نصب) برای پنهان کردن متن در یک فایل عکساست که اگر با ابزارهای دیگر ترکیب شود کارایی دیگری هم خواهد داشت.
- OpenPuff: یک ابزار حرفه ای استگانوگرافی که توسط آن می توانید فایل ها را در یک فایل عکس ،صوت، فیلم یا فایل فلش پنهان کرد.
این ها چند ابزار برای انجام استگانوگرافی است. ابزارهای دیگری هم با قابلیت های گوناگون وجود دارد گرچه ابزارهای معرفی شده خواسته های شما را پاسخ می دهد.
بنابراین درک نحوه پنهان کردن دیتا در استگانوگرافی و جلوگیری از سواستفاده داده ها برای حمله و دفاع می تواند مفید باشد .
موفق باشید.
دیدگاهتان را بنویسید
برای نوشتن دیدگاه باید وارد بشوید.