استاندارد رمزنگاری AES

BirHosting aes index
توسط

استاندارد رمزنگاری AES مشخصه‌ای برای رمزنگاری داده‌های دیجیتال است که در سال ۲۰۰۱ توسط مؤسسه ملی فناوری و استانداردهای ایالات متحده ایجاد گردید. این رمز که در ابتدا ریندال و توسط دو رمزنگار بلژیکی به نام‌های ژوآن دیمن و وینسنت رینمن توسعه داده شد.
استاندارد رمزنگاری پیشرفته توسط دولت ایالات متحده پذیرفته شده و اکنون در سراسر جهان استفاده می‌گردد. این الگوریتم رمزنگاری به جای استاندارد رمزنگاری داده‌ها (DES) که در سال ۱۹۷۷ منتشر شده، جایگزین گردیده‌است. الگوریتم AES یک الگوریتم کلید متقارن است، بدین معنی که از یک کلید یکسان برای رمزنگاری و رمزگشایی استفاده می‌شود.

BirHosting aes

شیوه کار

برای محافظت از دارایی‌های دیجیتال، AES در زمان انجام رمزگذاری و رمزگشایی از کلیدهای مخفی استفاده کند. این کلیدها می‌توانند ۱۲۸، ۱۹۲ یا ۲۵۶ بیتی باشند. به‌طور معمول، قدرت رمزگذاری اغلب براساس اندازه کلیدهای مورد استفاده در فرایند رمزگذاری محاسبه می‌شود. اگر از کلیدی با طول بیشتری استفاده شود، رمزگذاری قوی‌تر است. به بیان دقیق‌تر، AES-128 توانایی کمتری نسبت به AES-256 دارد.

بر مبنای این تعریف مشاهده می‌کنیم که AES یکی از این کلیدها و برخی داده‌ها (متون ساده) را به عنوان ورودی دریافت می‌کند و در ادامه از الگوریتم‌های کلید متقارن برای غیرقابل خواندن (متن رمزنگاری شده) اطلاعات استفاده می‌کند. این محتوای رمزنگاری شده می‌تواند نوشتاری، ویدیویی، صوتی و.... باشد.

شرح کلی الگوریتم

۱-بسط کلید (KeyExpansion) - کلیدهای چرخه از کلید رمز با استفاده از زمانبندی کلید Rijndael مشتق می‌شود.
۲-چرخه اولیه
AddRoundKey - هر بایت از state با کلید چرخه توسط xor بیت به بیت ترکیب می‌شود.
۳-چرخه‌ها
SubBytes- مرحله جانشین سازی (substitution) غیر خطی که هر بایت با بایت دیگری بر اساس یک جدول جستجو (lookup table) جایگزین می‌شود.
ShiftRows- مرحله جابجاسازی (transposition) که هر سطر از state به صورت تکراری در چند مرحله معین شیفت می‌یابد.
MixColumns- فرایند در هم ریختن (mixing) ستون‌ها که روی ستون‌های state عمل می‌نماید و چهار بایت از هر ستون را ترکیب می‌نماید.
AddRoundKey
۴-مرحله آخر
SubBytes
ShiftRows
AddRoundKey

BirHosting aes5
BirHosting aes3
BirHosting aes4
BirHosting aes2

بهینه‌سازی رمز

در سیستم‌های با کلمات ۳۲ بیتی یا بزرگتر، این امکان وجود دارد که به وسیله ترکیب مراحل SubBytes و ShiftRows با مرحله MixColumns با تبدیل آنها به دنباله‌ای از جستجوهای‌های جدول، اجرای این رمزنگاری را سرعت بخشید. این امر نیازمند چهار جدول با ۲۵۶ مدخل ۳۲ بیتی و بهره‌گیری از چهار کیلوبایت (۴۰۹۶ کلمه) حافظه (یک کیلوبایت برای هر جدول) است. آنگاه یک چرخه می‌تواند با ۱۶ جستجوی جدول و ۱۲ عمل OR انحصاری ۳۲ بیتی و در ادامه با چهار عمل OR انحصاری ۳۲ بیتی در مرحله AddRoundKey انجام می‌شود.

AES در کجا استفاده می‌شود؟

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

از این متد در هر فایلی و در هر سناریوی ارسال داده‌ای استفاده می‌شود. برای مثال وقتی در حال انتقال داده از طریق یک اتصال HTTPS باشید، به احتمال زیاد این AES است که از اطلاعات شما در برابر حملات مرد میانی محافظت می‌کند.


پست های توصیه شده