رمز گذاری برای محافظت از اطلاعات

0
706

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

یکی از این شیوه ها که مورد تایید دولت فدرال آمریکا از لحاظ امنیتی میباشد AES است. AES مخفف عبارت Advanced Encryption Standard به معنای استاندارد رمزگذاری پیشرفته است. این استاندارد به سه روش 128 بیتی، 192 بیتی و 256 بیتی عرضه شده است که AES 256 امن ترین حالت ممکن است. در این مقاله توضیح میدهیم که چگونه رمزگذاری AES 256 کار میکند و چگونه میتوان از آن برای محافظت از داده ها استفاده نمود.

رمزگذاری AES 256-Bit چیست؟

AES در پاسخ به نیازهای دولت آمریکا توسعه یافت. در سال 1977 آژانس های فدرال به الگوریتم رمزگذاری خود با استاندارد DES اعتماد کردند. DES توسط IBM با طراحی رمزنگاری بلوک متقارن 56 بیتی ایجاد شد و نزدیک به بیست سال با موفقیت مورد استفاده قرار گرفت. تا دهه 90 میلادی مشخص بود که DES دیگر به اندازه کافی امنیت ندارد. در یک نمایش عمومی، Distrib.net و بنیاد الکترونیکی Frontier نشان دادند که تنها ظرف مدت 22 ساعت میتوانند یک کلید DES را بشکنند. طبق قانون مور، افزایش قدرت محاسباتی به معنای این بود که یک سیستم 56 بیتی به طرز فجیعی در برابر حملات سایبری شکننده است. بنابراین یک استاندارد رمزگذاری پیشرفته تر یک نیاز فوری محسوب میگشت.
دولت برای یافتن سیستم جایگزین اعلام رقابت عمومی کرد و در نهایت رمز Rijndeal برگزیده شد. این رمز توسط دو رمزنگار بلژیکی، وینسنت ریجمن و جوآن دایمان ساخته شد. در سال 2002 به استاندارد رمزگذاری پیشرفته AES تغییر نام داد و توسط موسسه ملی استاندارد و فناوری ایالات متحده منتشر گردید.
امروز AES یک سیستم قابل اعتماد جهانی است است. کتابخانه های AES برای زبان های برنامه نویسی از جملهC ، C ++ ، Java ، Javascript  و Python توسعه یافته اند. AES توسط برنامه های فشرده سازی پرونده از جمله 7Zip ،WinZip  RAR و استفاده می شود. سیستم های رمزگذاری دیسک مانند BitLocker وFileVault، و سیستم های فایل مانند NTFS یک ابزار مهم در رمزگذاری بانک اطلاعاتی و همچنین در سیستم های VPN مانند IPsec و SSL / TLS است. مدیران برای رمز عبور مانندLastPass ،KeePass و1Password  AES از استفاده می کنند، همچنین برنامه های پیام رسانی مانند WhatsApp و Facebook Messenger  نیز بر مبنای این استاندارد عمل مینمایند. مجموعه دستورالعمل AES در تمام پردازنده های Intel و AMD یکپارچه شده است. حتی بازی های ویدیویی مانند Grand Theft Auto IV از AES برای محافظت در برابر هکرها استفاده می کنند.

AES 256 چگونه کار میکند؟

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

AES بعنوان بلاک های رمزی، رمزگذاری میشود. در این نوع رمزنگاری، اطلاعات رمزگذاری شده (معروف به متن ساده) به بخش هایی به نام بلوک تقسیم بندی میشوند. AES از اندازه بلوک 128 بیتی استفاده میکند که در آن داده ها به یک آرایه چهار در چهار، حاوی 16 بایت تقسیم میشوند. از آنجا که هر بایت شامل هشت بیت است، هر بلوک مشتمل بر 128 بیت خواهد بود.  اندازه داده های رمزگذاری شده یکسان است، در واقع 128 بیت متن ساده 128 بیت متن رمزنگاری را به همراه دارد.

AES چگونه کار میکند؟ اصل اساسی کلیه رمزگذاری این است که هر واحد داده با توجه به کلید امنیتی جایگزین دیگری میشود. به طور خاص، AES بعنوان یک شبکه جایگزینی – جایگشت طراحی شده است. AES امنیت فوق العاده ای را در نهایت به ارمغان خواهد آورد چرا که از یک فرایند گسترش کلید استفاده میکند که در آن از کلید اولیه برای دستیابی به یک سری کلیدهای جدید بنام round keys استفاده میشود. این round keys ها بعد از چندین دور اصلاح تولید میگردند که هر کدام شکستن رمزگذاری را سخت تر از قبل میکنند.

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

هر مرحله از الگوریتم رمزگذاری AES یک عملکرد مهم را ارائه می دهد. استفاده از یک کلید متفاوت برای هر دور نتیجه بسیار پیچیده تری ارائه می کند. بایت جایگزین شده داده ها را بصورت غیرخطی اصلاح می کند و رابطه بین محتوای اصلی و رمزگذاری شده را مبهم می کند. تغییر ردیف ها و مخلوط کردن ستون ها، داده ها را پراکنده می کند و بایت ها را برای پیچیدگی بیشتر رمزگذاری، جابجا می کند. تغییر مکان پراکنده داده ها بصورت افقی می باشد، در حالی که مخلوط کردن داده ها این کار را بصورت عمودی انجام میدهد در نهایت شکل بسیار پیچیده ای را بعنوان اطلاعات رمز نگاری شده در خروجی نمایش خواهد داد.

رمزگذاری AES 256 چقدر ایمن است؟

انستیتوی ملی استاندارد و فناوری، سه ورژن AES را انتخاب نمود: 128 بیتی، 192 بیتی و 256 بیتی.
هر سه نسخه از بلوک های 128 بیتی استفاده میکنند. اما تفاوت در طول کلید نهفته است. بعنوان طولانی ترین رشته، کلید 256 بیتی قوی ترین سطح رمزنگاری را ارائه میدهد. با داشتن یک کلید 256 بیتی، یک هکر باید 2256 ترکیب مختلف را امتحان کند تا انتخاب صحیح را بتواند پیدا نماید. این تعداد بسیار بزرگ است و در کل به نمایی با 78 رقم میرسد. قابل درک است که ایالات متحده برای رمزگذاری داده های حساس به رمزگذاری 128 یا 256 بیتی روی آورده است.

سه نوع AES بر اساس تعداد سیکل های رمزگذاری مشخص میشوند. AES 128 از 10 سیکل استفاده میکند، AES 192 از 12 سیکل و AES 256 از 14 سیکل استفاده می نمایند. هرچه تعداد این سیکل ها بیشتر باشد رمزنگاری پیچیده تر است بنابراین AES 256 امن ترین شیوه رمزنگاری اطلاعات خواهد بود. لازم به ذکر است که با داشتن کلید طولانی تر و سیکل بیشتر، الزامات عملکردی بالاتری نیاز هست. AES 256 نسبت به AES 192 چهل درصد بیشتر منابع سیستم را درگیر خود میکند.

آیا AES 256 قابل شکت است؟

روش های بکار رفته در AES 256 عملاً ان را به یک استاندارد غیرقابل نفوذ تبدیل کرده است. در حالی که یک کلید DES 56 بیتی در کمتر از یک روز قابل شکستن است و AES میلیاردها سال طول میکشد تا با استفاده از فناوری رایانش فعلی بشکند. با این وجود هیچکدام از سیستم های رمزگذاری کاملاً ایمن نیستند. محققانی که AES را آزمایش کرده اند چند روش بالقوه را پیدا کرده اند. در سال 2009 آنها یک حمله مهم مرتبط با کلید را کشف کردند. خوشبختانه حمله با کلید مرتبط فقط تهدیدی برای سیستم های AES است که به درستی پیکربندی نشده اند.

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

علاوه بر فناوری پیشرفته، طبیعت باز AES 256 آن را به یکی از امن ترین پروتکل های رمزنگاری تبدیل کرده است. محققان دائماً در حال مطالعه AES برای کشف هرگونه آسیب پذیری بالقوه هستند. هر زمان که یکی از آنها کشف شد، کاربران میتوانند برای حل مساله اقدام کنند.

آیا علاقه مند به کسب اطلاعات بیشتر در مورد چگونگی پشتیبان گیری ایمن از سرورها و برنامه های مهم خود هستید؟ مجموعه کوشا فناوران مبتکر راه کارهای نوین را بر مبنای استاندارد AES 256 به شما ارائه خواهند نمود.