حریم خصوصی و امنیت
۶ دقیقه

پد یک‌بارمصرف چیست؟ توضیح رمزنگاری و تفاوت آن با OTP

با کاربرد XOR و کلید تصادفی تازه در پد یک‌بارمصرف، معنای محرمانگی کامل، خطر استفادهٔ دوباره از کلید و تفاوت آن با رمز ورود OTP آشنا شوید.

LOCK.PUB
منتشرشده:
پد یک‌بارمصرف چیست؟ توضیح رمزنگاری و تفاوت آن با OTP

پد یک‌بارمصرف (one-time pad) پیام را با یک کلید تصادفی محرمانه رمز می‌کند که دست‌کم به‌اندازهٔ پیام طول دارد. برای هر بار رمزنگاری باید بخش تازه‌ای از پد به کار رود. با رعایت شرایط سخت‌گیرانه، دیدن متن رمزشده هیچ اطلاعات بیشتری دربارهٔ پیام به مهاجم نمی‌دهد.

مخفف OTP می‌تواند به رمز یا کد یک‌بارمصرف ورود هم اشاره کند. پد یک‌بارمصرف، کد ورود و پیوندی که یک بار باز می‌شود، برای حل مسئله‌های متفاوتی هستند.

شرایط یک پد یک‌بارمصرف واقعی

برای پیامی با n بیت، ساختار دودویی به n بیت تازه و محرمانه از پد نیاز دارد:

  • پد را از توزیع یکنواخت انتخاب کنید: احتمال انتخاب تمام کلیدهای n بیتی باید یکسان باشد.
  • آن را مستقل از پیام و دیگر بخش‌های پد تولید کنید.
  • آن را از دید ناظر محرمانه نگه دارید.
  • هر بخش پد را فقط برای رمزنگاری یک پیام به کار ببرید. از بخش‌های یکسان یا هم‌پوشان برای رمزنگاری دیگری استفاده نکنید.

این فرض‌ها پایهٔ اثبات امنیت در فصل پد یک‌بارمصرف اثر مایک روزولک هستند. عبارت به‌یادماندنی یا کلیدی که تکرار می‌شود این شرایط را ندارد.

نمونهٔ چهاربیتی XOR

عمل XOR با نماد ⊕، برای دو بیت یکسان نتیجهٔ 0 و برای دو بیت متفاوت نتیجهٔ 1 می‌دهد. رمزنگاری پیام را با پد ترکیب می‌کند؛ رمزگشایی همان پد را دوباره اعمال می‌کند.

مرحله محاسبه نتیجه
رمزنگاری 1010 ⊕ 0110 1100
رمزگشایی 1100 ⊕ 0110 1010

در این نمونه، پیام 1010، پد 0110 و متن رمزشده 1100 است. تکرار XOR با همان پد اثر آن را خنثی می‌کند. این نمونه ریاضیات روش را نشان می‌دهد؛ پیام‌رسانی واقعی به مدیریت امن کلید و احراز هویت هم نیاز دارد.

محرمانگی کامل واقعاً چه معنایی دارد؟

در بخش ۱۰ مقالهٔ اصلی کلود شانون، محرمانگی کامل یعنی با دانستن متن رمزشده، احتمال‌هایی که ناظر برای پیام‌ها در نظر گرفته است تغییر نکند.

این تعریف نیازی ندارد که همهٔ پیام‌ها به یک اندازه محتمل باشند. اگر پیامی هم‌اندازه از پیش محتمل‌تر به نظر می‌رسید، می‌تواند پس از مشاهده هم محتمل‌تر بماند. متن رمزشده شاهد تازه‌ای اضافه نمی‌کند. مدل متداول با طول ثابت، زمان ارتباط، طرف‌های آن یا طول پیام را نیز پنهان نمی‌کند.

چرا استفادهٔ دوباره از پد این تضمین را از بین می‌برد؟

اگر دو پیام هم‌اندازه از پد یکسان K استفاده کنند، داریم C1 = M1 ⊕ K و C2 = M2 ⊕ K. گرفتن XOR دو متن رمزشده، K را حذف می‌کند:

C1 ⊕ C2 = M1 ⊕ M2

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

محدودیت‌های عملی فراتر از معادله

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

پد به‌تنهایی نه تمامیت پیام را تضمین می‌کند و نه هویت فرستنده را تأیید می‌کند. تغییر یک بیت از متن رمزشده، بیت متناظر در نتیجهٔ رمزگشایی را بدون هشدار داخلی تغییر می‌دهد. محرمانگی به‌تنهایی ثابت نمی‌کند چه کسی پیام را فرستاده یا آیا پیام دست‌کاری شده است.

پد یک‌بارمصرف، OTP ورود و پیوند یک‌بار مشاهده

اصطلاح هدف معنای «یک‌بار»
پد یک‌بارمصرف رمزنگاری محتوای پیام هر بخش پد برای یک رمزنگاری به کار می‌رود
OTP ورود تأیید در اختیار داشتن ابزار احراز هویت کد تولیدشده در مدت اعتبارش یک بار پذیرفته می‌شود
پیوند یک‌بار مشاهده محدود کردن دسترسی از طریق سرویس پس از بازگشایی موفق، نمایش‌های تازه مسدود می‌شوند

بخش ۳.۱.۴ راهنمای ابزارهای احراز هویت NIST کدهای OTP ورود را توضیح می‌دهد که با مقدار محرمانهٔ ابزار احراز هویت و زمان یا شمارنده تولید می‌شوند. این کدها برای احراز هویت هستند، نه پدی برای رمزنگاری پیام.

جایگاه LOCK.PUB در این میان

ابزار ساخت یادداشت محافظت‌شده با رمز عبور در LOCK.PUB برای اشتراک‌گذاری یادداشت‌هایی است که می‌توان دوباره باز کرد؛ یادداشت عادی به‌طور پیش‌فرض یک‌بار مشاهده نیست. LOCK.PUB پد یک‌بارمصرف را پیاده‌سازی نمی‌کند و رمزنگاری سرتاسری ارائه نمی‌دهد: سرور متن آشکار یادداشت را پردازش می‌کند. سیاست دسترسی یک‌بار مشاهده مفهوم جداگانه‌ای است. چنین سیاستی پس از نمایش موفق محتوا با رمز عبور درست، نمایش‌های تازه را مسدود می‌کند؛ محتوای ذخیره‌شده را حذف نمی‌کند و دانلودها، تصویرهای صفحه یا دیگر نسخه‌ها را پس نمی‌گیرد.

برای اشتراک‌گذاری عملی، راهنمای یادداشت محرمانه را بخوانید. راهنمای رمزنگاری متن آنلاین توضیح می‌دهد هنگام اشتراک‌گذاری متن چه نکاتی را باید دربارهٔ رمزنگاری و پردازش داده توسط سرویس بدانید.

پرسش‌های متداول

آیا شکستن پد یک‌بارمصرف ناممکن است؟

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

آیا می‌توان با یک بذر کوتاه پد واقعی ساخت؟

یک مولد شبه‌تصادفی امن می‌تواند بذر کوتاه را به ماسکی بلندتر گسترش دهد و با فرض‌های مشخص امنیت محاسباتی ارائه کند. خروجی آن در میان تمام رشته‌های بلندتر توزیع یکنواخت ندارد؛ بنابراین محرمانگی کامل پد یک‌بارمصرف را فراهم نمی‌کند.

آیا «یک‌بار» یعنی پیام ناپدید می‌شود؟

برای پد، این واژه به نحوهٔ استفاده از کلید اشاره دارد. برای پیوند، به دسترسی مربوط است. هیچ‌یک از این اصطلاح‌ها به‌تنهایی حذف را ثابت نمی‌کند یا نسخه‌های از قبل تهیه‌شده را از بین نمی‌برد.

ساخت یادداشت

ساخت یادداشت

کلمات کلیدی

پد یک‌بارمصرف چیست
رمزنگاری one time pad
تفاوت پد یک‌بارمصرف و OTP
پد یک‌بارمصرف چیست؟ توضیح رمزنگاری و تفاوت آن با OTP | LOCK.PUB Blog