رمزنگاری قابل انکار

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

عملکرد

در رمزگذاری قابل انکار غیرممکن است بتوان صحت متن پیام متنی را بدون داشتن کلید رمزنگاری مناسب مشخص کنیم. در حقیقت پیام توسط کلیدهای استفاده شده به متن سادهٔ متفاوتی تبدیل می‌شود. این به فرستنده اجازه می‌دهد تا در صورتی که مجبور شد کلید را افشا کند انکار قانع کننده ای داشته باشد. مفهوم «رمزنگاری قابل انکار» توسط جولیان آسانژ و رالف وینمن در سیستم فایلهای Rubberhose مورد استفاده قرار گرفت و در سال ۱۹۹۶ در مقاله‌ای از ران کانتی، سینتیا دودر، مونی نائور و رافیل استروسکی انتشار یافت.

فرم‌های رمزگذاری قابل انکار

معمولاً، متون رمزنگاری شده تنها به یک متن ساده رمزگشایی می‌شود که قرار است مخفی نگه داشته شود. اما، یک نوع از رمزگذاری قابل انکار به کاربران اجازه می‌دهد که متن رمز را رمزگشایی کنند تا یک متن سادهٔ متفاوت (بی‌ضرر اما قابل قبول) را تولید کند و کاربر ادعا کند که این مطلب اصلی است که آنها رمزگذاری کرده‌اند. دارنده متن رمزنگاری قادر نخواهد بود بین متن ساده واقعی و متنی ساده جعلی ارتباطی پیدا کند. به‌طور کلی، رمزگشایی یک متن رمزنگاری به چندین متن ساده امکان‌پذیر نیست، مگر اینکه اندازه کلید به اندازه متن ساده باشد بنابراین این روش برای بیشتر اهداف عملی نیست. با این وجود، برخی از روش‌ها اجازه می‌دهند تا رمزگشایی را به متن ساده ای که در بعضی از متریک‌ها نزدیک به متن اصلی است (از قبیل فاصله ویرایش) استفاده کنند.
تکنیک‌های رمزنگاری قابل انکار مدرن از روشی استفاده می‌کنند که بدون داشتن کلید، تشخیص بین متن رمزنگاری از رمزگذاری قطعه‌ای و داده‌های تولید شده توسط یک مولد اعداد شبه تصادفی تأیید شده (خواص جایگزینی شبه تصادفی رمزنگاری) غیر قابل تفکیک است.
این در ترکیب با بعضی از داده‌های طعمه ای استفاده می‌شود که کاربر به صورت قابل قبولی محرمانه نپه می‌دارد تا زمانی که به مهاجم نشان داده می‌شود، ادعا کند که این تمام داده‌است. این یک شکل از پنهان‌نگاری است.
اگر کاربر کلیدی صحیح برای داده‌های واقعاً مخفی را ارائه نکند، رمزگشایی آن به داده‌های ظاهراً تصادفی منجر خواهد شد که قابل شناسایی نیستند و به ظاهر نشان می‌دهد که هیچ داده خاصی در آن ذخیره نشده‌است.
یک مثال از رمزنگاری قابل انکار یک فایل سیستم رمزنگاری است که مفهوم «لایه‌های انتزاعی» را به کار می‌گیرد، که هر لایه می‌تواند با یک کلید رمزگذاری متفاوت رمزگشایی شود. علاوه بر این، "لایه‌های فشرده " ویژه با اطلاعات تصادفی پر می‌شوند تا قابل قبول بودن انکار لایه‌های واقعی و کلیدهای رمزگذاری آنها را داشته باشند. کاربر می‌تواند فایل‌های طعمه را در یک یا چند لایه ذخیره کند، در حالی که امکان انکار دیگر فایل‌ها را می‌دهد در نتیجه می‌توان ادعا کرد که بقیه فضا توسط لایه‌های فشرده پر شده‌است. این نوع فایل سیستم‌ها به‌طور معمول در یک دایرکتوری واحد ذخیره می‌شوند که شامل سایزهای یکسان با نام‌های تصادفی هستند (در صورتی که متعلق به لایه‌های فشرده باشند) یا رشته هشهای رمزنگاری بلوک‌ها را شناسایی می‌کنند. برچسب تاریخ و زمان این فایل‌ها همیشه تصادفی هستند. نمونه‌هایی از این رویکرد عبارتند از فایل سیستم Rubberhose و PhoneBookFS.
یکی دیگر از رویکردهای مورد استفاده برخی از نرم‌افزارهای رمزگذاری دیسک معمولی، ایجاد یک درایو رمزگذاری شده درون درایو اصلی است. حجم درایو اصلی ابتدا با داده‌های تصادفی رمزگذاری شده پر می‌شود، و سپس یک فایل سیستم بر روی آن قالب بندی می‌شود. سپس کاربر مقداری از فایل سیستم را با داده‌های فریبنده مشروع، اما قابل قبول به نظر می‌رسد کاربر انگیزه ای برای پنهان کردن آن دارد پر می‌کند. در مرحله بعد، یک درایو جدید (درایو پنهان) در فضای آزاد فایل سیستم اصلی ساخته می‌شود که برای داده‌هایی که کاربر در واقع می‌خواهد مخفی کند، استفاده خواهد شد. از آنجا که یک مهاجم نمی‌تواند بین داده‌های رمزگذاری شده و داده‌های تصادفی استفاده شده برای پر کردن فایل سیستم اصلی تفاوت قائل شود، این فابل سیستم داخلی اکنون غیر قابل کشف است. LibreCrypt و BestCrypt می‌توانند حجم‌های پنهان زیادی در یک درایو مادر داشته باشند. TrueCrypt به یک درایو مخفی محدود شده‌است.

تشخیص

وجود داده‌های رمزگذاری شده پنهان ممکن است با نقص در اجرای برنامه آشکار شود. همچنین اگر از یک رمزگذاری نامناسب استفاده شود، امکان دارد داده با یک «حمله واترمارکینگ» آشکار شود. ممکن است وجود داده توسط «نشت» در فضای دیسک غیر رمزگذاری شده آشکار شود که در آن می‌توان با ابزار مخصوص دادهٔ رمزگذاری شده را کشف کرد.
شک و تردید در مورد سطح قابل قبول بودن انکار وجود درایو پنهان مطرح شده‌است – محتویات" بیرونی "فایل سیستم اولیه باید به حالت" منجمد " یا در حالت اولیه خود بماند تا از خراب شدن درایو مخفی توسط کاربر جلوگیری شود، که این امر می‌تواند سوء ظن ایجاد کند. این مشکل را می‌توان با راهنمایی کردن سیستم برای محافظت از حجم پنهان برطرف کرد، اگرچه این امر می‌تواند باعث از دست رفتن داده‌ها شود.

اشکالات

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