امنیت سرور لینوکس چیست؟ +10 روش برای افزایش امنیت در سرور های Linux 🟢
سپتامبر 27, 2023انواع دوربین مداربسته + معرفی 12 نوع دوربین+ 3 نکته مهم قبل از خرید🟢
سپتامبر 28, 2023این روزها، تمرکز کسبوکارها و شرکتها بر روی مکانیسم رمزگذاری برای سیستم خود بسیار رایج شده است. زیرا هر گزارش و هر فعالیتی که آنلاین میشود با استاندارد رمزنگاری پیشرفته ایمن می شود . و تنها ناجی آنها الگوریتم رمزگذاری AES-256 است. زیرا نه تنها از سیستم در برابر حملات شخص ثالث محافظت می کند، بلکه بی عیب، سریع و ایمن است و از داده های آنلاین کاربران و تراکنش های روزانه آنها در برابر چشمان کنجکاو محافظت می کند. در این مقاله می خواهیم به طور کامل درباره AES یعنی استاندارد رمزنگاری پیشرفته با شما صحبت کنیم!.
آنچه در این مقاله خواهید خواند :
استاندارد رمزنگاری پیشرفته (AES) چیست؟
ما می دانیم که امنیت اطلاعات یک موضوع داغ است. همه ما اطلاعات شخصی و حساس خود را به بسیاری از نهادهای اصلی میسپاریم و همچنان مشکلاتی با نقض دادهها، نشت دادهها و غیره داریم. به عنوان کوچکترین مثال امنییت اینستاگرام شما توسط شرکت متا تامین می شود. برخی از این موارد به دلیل پروتکلهای امنیتی در شبکه یا شیوههای بد مدیریت احراز هویت اتفاق میافتد . اما، واقعاً، تعداد زیادی راه وجود دارد. راه هایی که ممکن است نقض داده ها رخ دهد. با این حال، فرآیند واقعی رمزگشایی یک متن رمزی بدون کلید بسیار دشوارتر است.
برای این کار، میتوانیم از الگوریتمهای رمزگذاری – مانند استاندارد رمزگذاری پیشرفته محبوب – و کلیدهای امنی که دادههای ما را به یک حرفهای غیرقابل کشف تبدیل میکنند تشکر کنیم. بیایید به نحوه عملکرد AES و برنامه های مختلف برای آن نگاه کنیم. ما کمی به ریاضیات مبتنی بر ماتریس خواهیم پرداخت.
بیشتر بخوانید🚀🚀🚀🚀🚀 امنیت سرور لینوکس
تعریف AES
ممکن است نام استاندارد رمزگذاری پیشرفته یا به اختصار AES را شنیده باشید، اما ممکن است پاسخ این سوال را ندانید که “AES چیست؟” در اینجا چهار چیز وجود دارد که باید در مورد AES بدانید:
AES کجا استفاده می شود؟
رمزگذاری AES معمولاً به روشهای زیادی استفاده میشود، از جمله امنیت بیسیم، امنیت پردازنده، رمزگذاری فایل و SSL/TLS. در واقع، مرورگر وب شما احتمالاً از AES برای رمزگذاری اتصال شما با این وب سایت استفاده کرده است:
چرا AES اینقدر محبوب است؟
ثابت شده است که AES بسیار مؤثر و کارآمد است و با توجه به کلید صحیح، تفاوت چندانی در سربار برای هر فرآیندی که در آن مورد استفاده قرار می گیرد، اضافه می کند. اساسا، AES یک شکل سریع و بسیار ایمن از رمزگذاری است که مورد علاقه مشاغل و دولت ها در سراسر جهان است.
AES چقدر امن است؟
با یک کلید رمزگذاری 256 بیتی، AES بسیار ایمن است – عملاً نشکن. (اطلاعات بیشتر در مورد آن فقط در یک دقیقه.)
چرا استاندارد رمزگذاری پیشرفته استاندارد است؟
موسسه ملی استانداردها و فناوری (NIST) نزدیک به 20 سال پیش AES را به عنوان یک استاندارد رمزگذاری برای جایگزینی استاندارد رمزگذاری داده قدیمی (DES) ایجاد کرد. به هر حال، کلیدهای رمزگذاری AES می توانند تا 256 بیت بروند، در حالی که DES فقط در 56 بیت متوقف شده است. NIST میتوانست رمزی را انتخاب کند که امنیت بیشتری را ارائه دهد. اما این مبادله به سربار بیشتری نیاز داشت که عملی نبود. بنابراین، آنها با یکی از آنها رفتند که عملکرد و امنیت فوق العاده ای داشت.
نتایج AES آنقدر موفق است که بسیاری از نهادها و آژانس ها آن را تایید کرده اند و از آن برای رمزگذاری اطلاعات حساس استفاده می کنند. آژانس امنیت ملی (NSA)، و همچنین سایر نهادهای دولتی، از رمزگذاری و کلیدهای AES برای محافظت از اطلاعات طبقه بندی شده یا سایر اطلاعات حساس استفاده می کنند. علاوه بر این، AES اغلب در محصولات مبتنی بر تجارت گنجانده می شود، از جمله:
Wi-Fi (می تواند به عنوان بخشی از WPA2 استفاده شود)
برنامه های موبایل (مانند WhatsApp و LastPass)
پشتیبانی از پردازنده بومی
کتابخانه ها در بسیاری از زبان های توسعه نرم افزار
پیاده سازی VPN
اجزای سیستم عامل مانند سیستم فایل
استاندارد رمزگذاری پیشرفته چقدر قوی است؟
اگرچه به معنای واقعی کلمه برای همیشه طول نمی کشد، اما شکستن یک کلید رمزگذاری 256 بیتی AES با استفاده از فناوری محاسباتی مدرن بسیار بیشتر از تمام عمر ما طول می کشد. این از نقطه نظر نیروی بی رحم است، مانند تلاش برای هر ترکیب تا زمانی که صدای “کلیک”/باز کردن قفل را بشنویم.
نیازی به گفتن نیست که واآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآآ (حافظه کافی برای پشتیبانی از تعداد حروف “آ” که من میخواهم منتقل کنم، بر روی رایانههای ما وجود ندارد) طولانیتر از زمانی است که جهان فعلی ما وجود داشته است. و این فقط برای یک بلوک 16 بایتی از داده است. بنابراین، همانطور که می بینید، اجبار بی رحمانه AES – حتی اگر AES 128 بیتی باشد – بیهوده است.
با این حال، زمانی که محاسبات کوانتومی کمی جریان اصلی، در دسترس و مؤثرتر شود، این احتمالاً تغییر خواهد کرد. انتظار میرود محاسبات کوانتومی رمزگذاری AES را بشکند و به روشهای دیگری برای محافظت از دادههای ما نیاز داشته باشد – اما این هنوز راهحلی است.
بیشتر بخوانید🚀🚀🚀🚀🚀 نرم افزار هک کردن گوشی
استاندارد رمزنگاری پیشرفته چگونه کار می کند؟
برای درک بهتر AES چیست، باید نحوه عملکرد آن را بدانید. اما برای اینکه ببینیم استاندارد رمزگذاری پیشرفته واقعاً چگونه کار می کند، ابتدا باید به نحوه تنظیم و “قوانین” مربوط به فرآیند بر اساس انتخاب کاربر از قدرت رمزگذاری نگاه کنیم. به طور معمول، هنگامی که ما در مورد استفاده از سطوح بالاتر بیت امنیتی بحث می کنیم، به مواردی نگاه می کنیم که امن تر هستند و شکستن یا هک کردن آنها دشوارتر است. در حالی که بلوک های داده به 128 بیت تقسیم می شوند، اندازه کلید دارای چند طول متفاوت است: 128 بیت، 196 بیت و 256 بیت. این یعنی چی؟ بیایید یک ثانیه در اینجا از آن پشتیبانی کنیم.
ما می دانیم که رمزگذاری معمولاً با درهم آمیختن اطلاعات به چیزی غیرقابل خواندن و یک کلید مرتبط برای رمزگشایی درهم سروکار دارد. رویههای درهمآمیزی AES از چهار عملیات تقلا در راند استفاده میکنند، به این معنی که عملیات را انجام میدهد و سپس فرآیند را بر اساس نتایج دور قبلی X بار تکرار میکند. به طور ساده، اگر X را وارد کنیم و Y را خارج کنیم، یک دور خواهد بود. سپس Y را از طریق سرعتها قرار میدهیم و برای دور 2 از Z خارج میشویم. آنها را بشویید و تکرار کنید تا تعداد دور مشخصشده را کامل کنیم.
اندازه کلید AES که در بالا مشخص شده است، تعداد دورهایی را که رویه اجرا خواهد شد تعیین می کند. مثلا:
یک کلید رمزگذاری AES 128 بیتی 10 دور خواهد داشت.
یک کلید رمزگذاری 192 بیتی AES دارای 12 دور خواهد بود.
و یک کلید رمزگذاری 256 بیتی AES دارای 14 دور خواهد بود.
همانطور که گفته شد، هر دور دارای چهار عملیات است.
نحوه خواندن داده ها
قبل از اینکه به بخشهای عملیاتی استاندارد رمزگذاری پیشرفته برسیم، بیایید به نحوه ساختار دادهها نگاه کنیم. منظور ما این است که دادههایی که عملیات روی آنها انجام میشود، آنطور که ما معمولاً به آن فکر میکنیم، ترتیبی از چپ به راست نیستند. در یک ماتریس 4×4 از 128 بیت (16 بایت) در هر بلوک در آرایه ای که به عنوان “وضعیت” شناخته می شود، انباشته شده است. یک ایالت چیزی شبیه به این است:
بنابراین، اگر پیام شما “قرص آبی یا قرمز” بود، چیزی شبیه به این خواهد بود:
بنابراین، برای روشن بودن، این فقط یک بلوک 16 بایتی است – بنابراین، این بدان معنی است که هر گروه از 16 بایت در یک فایل به این شکل مرتب شده اند. در این مرحله، تقلا سیستماتیک از طریق اعمال هر عملیات رمزگذاری AES آغاز می شود.
4 عملیات رمزگذاری AES چیست و چگونه کار می کنند
همانطور که قبلاً ذکر شد، هنگامی که ترتیب داده های خود را انجام دادیم، عملیات پیوندی خاصی وجود دارد که در هر حالت تقلا را انجام می دهد. هدف در اینجا تبدیل داده های متن ساده به متن رمزی با استفاده از یک کلید مخفی است.
چهار نوع عملیات AES به شرح زیر است (توجه داشته باشید: در بخش بعدی به ترتیب عملیات ها می پردازیم):
1. Key Expansion و AddRoundKey
همانطور که قبلاً ذکر شد، اندازه کلید تعداد دورهای تقلبی که انجام می شود را تعیین می کند. رمزگذاری AES از Rjindael Key Schedule استفاده می کند که کلیدهای فرعی را از کلید اصلی برای اجرای Key Expansion مشتق می کند.
عملیات AddRoundKey وضعیت فعلی داده ها را می گیرد و عملیات XOR Boolean را در مقابل کلید فرعی گرد فعلی اجرا می کند. XOR به معنای «به طور انحصاری یا» است، که در صورت متفاوت بودن ورودیها، نتیجه درست را به دست میدهد (به عنوان مثال، یک ورودی باید 1 باشد و ورودی دیگر باید 0 باشد تا درست باشد). در هر دور یک کلید فرعی منحصربفرد به اضافه یک کلید دیگر (که در پایان اجرا می شود) وجود خواهد داشت.
2. SubBytes
عملیات SubBytes که مخفف بایت های جایگزین است، بلوک 16 بایتی را می گیرد و آن را از طریق S-Box (جعبه جایگزینی) اجرا می کند تا یک مقدار جایگزین تولید کند. به عبارت ساده، عملیات یک مقدار می گیرد و سپس با بیرون ریختن مقدار دیگری جایگزین آن می شود.
عملیات واقعی S-Box یک فرآیند پیچیده است، اما بدانید که رمزگشایی آن با محاسبات معمولی تقریبا غیرممکن است. همراه با بقیه عملیات AES، کار خود را انجام می دهد تا به طور موثر داده های منبع را درهم کند و مبهم کند. “S” در کادر سفید در تصویر بالا نشان دهنده جدول جستجوی پیچیده برای S-Box است.
3. ShiftRows
عملیات ShiftRows کمی ساده تر است و درک آن آسان تر است. بر اساس چیدمان دادهها، ایده ShiftRows این است که موقعیت دادهها را در ردیفهای مربوطه خود با بستهبندی جابهجا کند. به یاد داشته باشید، داده ها به صورت انباشته چیده شده اند و مانند بسیاری از ما که به خواندن عادت داریم، از چپ به راست نیستند. تصویر ارائه شده به تجسم این عملیات کمک می کند.
ردیف اول بدون تغییر می ماند. اما ردیف دوم بایت ها را یک موقعیت به چپ با بسته بندی ردیف در اطراف جابجا می کند. ردیف سوم بایتها را یک موقعیت فراتر از آن جابهجا میکند و بایت را در مجموع دو موقعیت به سمت چپ میبرد که در اطراف ردیف قرار میگیرد. به این معنی است که ردیف چهارم بایت ها را در مجموع سه موقعیت به سمت چپ جابجا می کند و ردیفی در اطراف قرار می گیرد.
بیشتر بخوانید🚀🚀🚀🚀🚀» امنیت توییتر
4. MixColumns
عملیات MixColumns، به طور خلاصه، یک تبدیل خطی از ستون های مجموعه داده است. از ضرب ماتریس و جمع بیتی XOR برای خروجی نتایج استفاده می کند. داده های ستون، که می تواند به عنوان یک ماتریس 4×1 نمایش داده شود، در برابر یک ماتریس 4×4 در قالبی به نام فیلد Gallois ضرب می شود و به عنوان معکوس ورودی و خروجی تنظیم می شود. چیزی شبیه به شکل زیر خواهد بود:
همانطور که می بینید، چهار بایت وجود دارد که در برابر یک ماتریس 4×4 اجرا می شوند. در این حالت، ضرب ماتریس دارای هر بایت ورودی است که بر هر بایت خروجی تأثیر می گذارد و بدیهی است که اندازه یکسان را به دست می آورد.
ترتیب عملیات
اکنون که درک مناسبی از عملیات های مختلف مورد استفاده برای به هم زدن داده های خود از طریق رمزگذاری AES داریم، می توانیم به ترتیب اجرای این عملیات نگاه کنیم. به این صورت خواهد بود: Key Expansion فهرست کلیدهای گرد را که در هر دور استفاده می شود به اضافه یک دور اضافی (و ابتدایی، همانطور که خواهید دید) تنظیم می کند.
AddRound اولین قدم برای مبهم کردن داده ها است. بلافاصله، ما داده ها را درهم کرده ایم.
اکنون وارد دورهای درهمکاری شدید دادهها میشویم. باز هم بسته به بیت رمز انتخاب شده، تعداد دورها متفاوت خواهد بود.
برای 9، 11 یا 13 دور، بسته به انتخاب بیت رمز، موارد زیر به ترتیب انجام می شود:
ساب بایت ها
ShiftRows
MixColumns
AddRound
به ترتیب در دور دهم، دوازدهم یا چهاردهم، مجموعه نهایی عملیات را انجام می دهیم که به شرح زیر است:
ساب بایت ها
ShiftRows
AddRound
توجه:
عملیات MixColumns در مرحله نهایی نیست. بدون وارد شدن به ریاضیات واقعی، هیچ مزیت دیگری برای انجام این عملیات وجود ندارد. در واقع، انجام این کار به سادگی فرآیند رمزگشایی را از نظر سربار کمی سختتر میکند.
اگر تعداد راندها و عملیات در هر راند را در نظر بگیریم، در پایان آن، شما باید یک بلوک درهم ریخته زیبا داشته باشید. و این فقط یک بلوک 16 بایتی است. در نظر بگیرید که چه مقدار اطلاعات در تصویر بزرگ برابر است. در مقایسه با اندازه فایل/بسته امروزی کوچک است! بنابراین، اگر هر بلوک 16 بایتی ظاهراً هیچ الگوی قابل تشخیصی نداشته باشد – حداقل، هر الگوی که بتواند به موقع رمزگشایی شود – من می گویم AES کار خود را انجام داده است.
کاربردهای الگوریتم AES چیست؟
الگوریتم رمزگذاری AES که به نام الگوریتم Rijndael نیز شناخته میشود، بر روی قالب SP (جایگزینی و جابجایی) کار میکند که بلوکهای 128 بیتی خود را در متن رمزگذاری میکند. این الگوریتم به ترتیب از کلیدهای 128، 192 و 256 بیتی برای تبدیل به متن رمزگذاری شده استفاده می کند. به دلیل این نوع رمزگذاری قوی، الگوریتم AES اکنون به طور گسترده برای بخش های متنوع استفاده شده است. و بسیاری از کسبوکارها اکنون این تکنیک را با الگوریتمهای رمزنگاری صادر شده NIST ترکیب میکنند تا رمزگذاری دادههای تجاری را تقویت و تقویت کنند.
در اینجا لیستی از برنامه های کاربردی AES وجود دارد که الگوریتم آن بلند مدت است:
1. مراقبت های بهداشتی
داده های بیماران و همه انواع ارتباطات باید ایمن باشد و محرمانه بودن باید حفظ شود. برای این کار، رمزگذاری بیتی AES 256 به همراه چند استاندارد دیگر مورد توجه قرار گرفته است.
2. چت بلادرنگ یا پیامرسانی فوری
امروزه کسبوکارها از انواع جلسات و کلید عمومی الگوریتم AES 256 برای حفظ امنیت چتهای بیدرنگ استفاده میکنند. این الگوریتم در واقع مکالمات شخصی را از هرگونه نفوذ شخص ثالث قفل نگه داشته است.
3. پلتفرم های کیف پول دیجیتال
هر نوع پلتفرم پرداخت را نام ببرید، مطمئن باشید که از AES برای رمزگذاری خود استفاده کرده اند. با این حال، اندازه بیت برای استفاده به داده های تراکنش بستگی دارد. برخی از کلیدهای 192 بیتی استفاده می کنند، در حالی که برخی دیگر از 256 بیت برای رمزگذاری استفاده می کنند.
4. داده های مرور
مرورگرهای وب شما نیز ممکن است از AES برای رمزگذاری اتصالات با هر وب سایتی استفاده کنند. نقش بزرگی در ارائه احراز هویت به مشتری و محاسبات سمت سرور دارد.
ما میدانیم که باید خیلی بیشتر از آن استفاده کرد. اما شرطبندی، بدون بینش در مورد این موضوع ، یادگیری شما ناقص خواهد بود.
جمع بندی
ما می دانیم که الگوریتم استاندارد رمزگذاری پیشرفته خود کاملاً مؤثر است، اما سطح اثربخشی آن به نحوه پیاده سازی آن بستگی دارد. برخلاف حملات brute force که در بالا ذکر شد، حملات مؤثر معمولاً بر روی پیادهسازی و نه بر روی خود الگوریتم انجام میشوند. این را می توان با حمله به کاربران – مانند حملات فیشینگ – در مقابل حمله به فناوری پشت سرویس/عملکردی که ممکن است به سختی نقض شود برابر دانست. اینها را می توان حملات کانال جانبی در نظر گرفت که در آن حملات بر جنبه های دیگر کل فرآیند و نه نقطه کانونی اجرای امنیتی انجام می شود.
در حالی که من همیشه از یک گزینه امنیتی معقول/موثر حمایت می کنم، بسیاری از رمزگذاری AES بدون اینکه شما حتی آن را بدانید اتفاق می افتد. این در حال قفل کردن نقاطی از دنیای محاسبات است که در غیر این صورت کاملاً باز خواهند بود. به عبارت دیگر، اگر استاندارد رمزگذاری پیشرفته اصلاً پیادهسازی نشود، فرصتهای بیشتری برای هکرها برای گرفتن دادهها وجود خواهد داشت. ما فقط باید بدانیم که چگونه سوراخ های باز را شناسایی کنیم و نحوه وصل کردن آنها را بیابیم. برخی ممکن است بتوانند از AES استفاده کنند و برخی دیگر ممکن است به پروتکل یا فرآیند دیگری نیاز داشته باشند.