UTILS.
۱۰۰٪ در مرورگر
✖️

رمزگذار / رمزگشای رمز افاین (Affine)

رمز تک‌الفبایی با E(x)=(a·x+b) mod 26، همراه با اعتبارسنجی کلید (gcd(a,26)=1) و رمزگشایی با معکوس پیمانه‌ای. حروف را فوری رمزگذاری یا رمزگشایی کنید.

کلید a باید با ۲۶ متباین باشد: ۱، ۳، ۵، ۷، ۹، ۱۱، ۱۵، ۱۷، ۱۹، ۲۱، ۲۳ یا ۲۵.

— خروجی اینجا نمایش داده می‌شود —

درباره این ابزار

رمزگذار / رمزگشای رمز افاین (Affine) ابزاری رایگان و درون‌مرورگری برای رمز تک‌الفباییِ ساخته‌شده بر پایهٔ حساب پیمانه‌ای است. حروف A–Z با شماره‌های ۰ تا ۲۵ نمایش داده می‌شوند و هرکدام با تابع خطی E(x) = (a·x + b) mod 26 دگرگون می‌شوند، که در آن a و b دو مقدار کلید هستند. رمزگشایی این را با D(y) = a⁻¹·(y − b) mod 26 معکوس می‌کند، که در آن a⁻¹ معکوس ضربی پیمانه‌ای a به پیمانهٔ ۲۶ است.

برای آنکه رمز برگشت‌پذیر باشد، ضریب a باید با ۲۶ متباین باشد — یعنی gcd(a, 26) = 1. دوازده انتخاب معتبر عبارت‌اند از ۱، ۳، ۵، ۷، ۹، ۱۱، ۱۵، ۱۷، ۱۹، ۲۱، ۲۳ و ۲۵؛ هر مقدار دیگری دو حرف متفاوت را به یک خروجی نگاشت می‌کند و رمزگشایی‌پذیر نیست، پس ابزار آن را با پیامی روشن رد می‌کند. کلید افزایشی b می‌تواند هر مقداری از ۰ تا ۲۵ باشد. همه‌چیز به‌صورت محلی در مرورگر شما محاسبه می‌شود، پس هیچ‌چیزی که تایپ می‌کنید دستگاه شما را ترک نمی‌کند.

حالت حروف حفظ می‌شود و کاراکترهای غیرحرفی بدون تغییر عبور می‌کنند. رمز افاین رمزهای کلاسیک ساده‌تر را تعمیم می‌دهد: تنظیم a = 1 آن را به یک جابه‌جایی سزار به اندازهٔ b تقلیل می‌دهد، و a = 25، b = 25 رمز اتباش را بازتولید می‌کند. این رمز پایهٔ ثابت درس‌های ریاضیات گسسته و نظریهٔ اعداد است، چون ایده‌های تباین و معکوس پیمانه‌ای را ملموس می‌کند، و به‌طور منظم در پازل‌های CTF و ابزارهایی مانند CyberChef ظاهر می‌شود.

پرسش‌های پرتکرار

فرمول رمز افاین چیست؟
رمزگذاری E(x) = (a·x + b) mod 26 و رمزگشایی D(y) = a⁻¹·(y − b) mod 26 است، با حروف شماره‌گذاری‌شده از ۰ تا ۲۵. در اینجا a⁻¹ معکوس ضربی پیمانه‌ای a به پیمانهٔ ۲۶ است.
کدام مقادیر a مجاز است؟
تنها مقادیر متباین با ۲۶، یعنی gcd(a, 26) = 1: یعنی ۱، ۳، ۵، ۷، ۹، ۱۱، ۱۵، ۱۷، ۱۹، ۲۱، ۲۳ یا ۲۵. مقادیر دیگر رمز را برگشت‌ناپذیر می‌کنند، پس ابزار آن‌ها را رد می‌کند.
رمزگشایی چطور انجام می‌شود؟
به معکوس پیمانه‌ای a⁻¹ از a به پیمانهٔ ۲۶ نیاز دارد، عددی که در آن a·a⁻¹ ≡ 1 (mod 26). ابزار آن را به‌طور خودکار می‌یابد، سپس D(y) = a⁻¹·(y − b) mod 26 را بر هر حرف اعمال می‌کند.
ارتباط آن با سزار و اتباش چیست؟
هر دو را تعمیم می‌دهد. با a = 1 رمز افاین به یک جابه‌جایی سزار به اندازهٔ b تبدیل می‌شود، و با a = 25، b = 25 رمز اتباش را بازتولید می‌کند. این شکل خطیِ یک جانشینی تک‌الفبایی است.

ابزارهای بیشتر