رمز آتباش

رمز آتباش

آسان

دستورالعمل‌ها

یک پیاده‌سازی از رمز آتباش بسازید؛ یک سیستم رمزنگاری باستانی که در خاورمیانه ابداع شد.

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

رمز آتباش برای الفبای لاتین به این شکل خواهد بود:

Plain:  abcdefghijklmnopqrstuvwxyz
Cipher: zyxwvutsrqponmlkjihgfedcba

این رمز بسیار ضعیف است، چون فقط یک کلید ممکن دارد و یک رمز جانشینی تک‌الفبایی ساده است. با این حال، ممکن است در زمان این رمز مسئله‌ای نبوده باشد.

متن رمزشده در گروه‌هایی با طول ثابت نوشته می‌شود؛ اندازه‌ی سنتی هر گروه ۵ حرف است، اعداد بدون تغییر می‌مانند و نشانه‌گذاری‌ها حذف می‌شوند. این کار برای آن است که حدس زدن بر پایه‌ی مرزهای کلمه سخت‌تر شود. همه‌ی متن‌ها با حروف کوچک رمزگذاری می‌شوند.

مثال‌ها

  • رمزگذاری test نتیجه‌ی gvhg را می‌دهد
  • رمزگذاری x123 yes نتیجه‌ی c123b vh را می‌دهد
  • رمزگشایی gvhg نتیجه‌ی test را می‌دهد
  • رمزگشایی gsvjf rxpyi ldmul cqfnk hlevi gsvoz abwlt نتیجه‌ی thequickbrownfoxjumpsoverthelazydog را می‌دهد

منبع

Wikipediaاین لینک در پنجره یا تب جدیدی باز می‌شود.
ویرایش از طریق GitHub این لینک در پنجره یا زبانه‌ی جدیدی باز می‌شود
Python Exercism

آماده‌اید رمز آتباش را شروع کنید؟

در Exercism ثبت‌نام کنید تا Python را همراه با 17 مفهوم146 تمرین و مربی‌گری انسانی واقعی یاد بگیرید و در آن استاد شوید، همه‌ی این‌ها رایگان.