رمز ویژنر

از ویکی‌پدیا، دانشنامهٔ آزاد
(تغییرمسیر از رمز ویجنر)
پرش به: ناوبری، جستجو
Blaise de Vigenère

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

این روش در اصل توسط Giovan Battista Bellaso در سال ۱۵۵۳ در کتابش شرح داده شده است. با این حال، این طرح در قرن ۱۹ میلادی به اشتباه به Blaise de Vigenère نسبت داده شده‌است، و در حال حاضر به طور گسترده‌ای به عنوان "رمزنگاری ویجنر(Vigenère)" شناخته شده است.

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

تعریف[ویرایش]

جدول ویجنر

هر حرف از حروف الفبا در رمزنگاری سزار، در امتداد برخی از تعدادی از مکان انتقال یافته است، برای مثال، در رمزنگاری سزار از "سه خانه به چپ" استفاده می‌شود، E می‌تواند تبدیل به B شود و به همین ترتیب ادامه پیدا کند. رمزنگاری Vigenère متشکل از رمز سزار مختلفی است که در دنباله با ارزش‌های مختلف تغییر می‌یابد.

برای رمزکردن می‌توان از یک جدول حروف استفاده کرد، این جدول شامل حروف الفبا است. هر حرف الفبا در ۲۶ ردیف مختلف نوشته شده است، هر یک از حروف الفبا به صورت انتقال دوره‌ای، نسبت به حروف الفبای قبلی مقایسه می‌شود. در نقاط مختلف در فرایند رمزنگاری، رمز را با استفاده از حروف الفبای مختلف متعلق به یکی از ردیف‌ها است. الفبای مورد استفاده در هر نقطه بستگی به انتخاب کلید واژه دارد.

به عنوان مثال فرض کنیم می‌خواهیم کلمه ATTACKATDAWN را با این روش کد کنیم. درابتدا یک کلید انتخاب می‌کنیم فرض کنید کلید LEMON باشد. اگر چه ۲۶ ردیف کلید وجود دارد چون حروف مختلف به عنوان حرف‌های منحصربه‌فرد در رشته اصلی استفاده می‌شود، در اینجا فقط ۵ کلید، {L، E، M، O، N} وجود دارد. برای گرفتن حرف‌های پی‌درپی از رشته اصلی، و نوشتن هر حرف پیام با استفاده از ردیف‌های کلیدی مربوط به آن است. حرف بعدی از کلید را انتخاب کنید، که در امتداد ردیف ستون که منطبق بر کاراکتر پیام برای پیدا کردن متن اصلی است.

متن اصلی: ATTACKATDAWN
کلید: LEMONLEMONLE
متن رمز شده: LXFOPVEFRNHR

تعریف جبری[ویرایش]

رمز ویجنر را همچنین می‌توان جبری تحلیل کرد. اگر برای هر حرف A تا Z اعداد ۰ تا ۲۵ درنظرگرفته‌شود، علاوه بر این باقی‌مانده مجموع‌شان بر ۲۶ نیز مجاسبه می‌شود، سپس Vigenère رمزگذاری شده E با استفاده از کلید K را می‌توان به صورت زیر نوشت،

C_i = E_K(M_i) = (M_i+K_i) \mod {26}

و D رمزگشایی می‌شود با استفاده از کلید K،

M_i = D_K(C_i) = (C_i-K_i) \mod {26}

در حالیکه M = M_0 \dots M_n پیغام هستند، C = C_0 \dots C_n و متن رمزشده هستند K = K_0 \dots K_m کلید استفاده‌شده است.

در نتیجه با استفاده از مثال قبلی، به رمز در آوردن A \widehat{=} 0 با کلیدحرف L \widehat{=} 11 که نتیجه محاسبه می‌شود 11 \widehat{=} L.

11 = (0+11) \mod {26}

تحلیل[ویرایش]

Vigenere letter frequencies.PNG

ایده پشت رمزنگاری ویجنر، مانند تمام رمزهای چندالفبایی است، یعنی برای پنهان کردن فرکانس‌های متنی حروف، با یک برنامه سرراست از تحلیل فرکانس را مداخله دارد. به عنوان مثال، اگر P شایع‌ترین حرف در یک متن رمزی باشد که متن به زبان انگلیسی است، ممکن است که P مربوط به E باشد، گمان به E است چون رایج‌ترن حرف در زبان انگلیسی است. با این حال، با استفاده از رمزنگاری ویجنر، E می‌تواند عنوان حرف دیگری در پیام رمزشده باشد، در نتیجه تحلیلی است که شکست تجزیه و تحلیل فرکانس ساده را نشان می‌دهد.

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

منابع[ویرایش]

Vigenère cipher