رمزنگاری داده ها چیست؟
رمزنگاری داده روشی برای محافظت از اطلاعات است که با کدگذاری دادهها، تنها به افرادی که کلید رمزنگاری مناسب را دارند، اجازه دسترسی یا رمزگشایی میدهد. اگر فرد یا نهادی بدون مجوز به دادههای رمزنگاریشده دسترسی پیدا کند، این دادهها بهصورت درهمریخته و غیرقابلخواندن به نظر میرسند. به زبان ساده، رمزنگاری فرآیند تبدیل دادهها از فرمت قابلخواندن (متن ساده یا Plaintext) به اطلاعاتی درهمریخته (متن رمزنگاریشده یا Ciphertext) است تا از دسترسی غیرمجاز به دادههای حساس در حین انتقال جلوگیری شود. رمزنگاری میتواند برای اسناد، فایلها، پیامها یا هر نوع ارتباطی در شبکه اعمال شود. به گفته کارشناسان امنیت سایبری در کسپرسکی، رمزنگاری به "تبدیل دادهها از فرمت قابلخواندن به فرمتی کدگذاریشده تعریف میشود که تنها پس از رمزگشایی قابلخواندن یا پردازش است." آنها تأکید میکنند که رمزنگاری بلوک اصلی امنیت داده است و توسط سازمانهای بزرگ، کسبوکارهای کوچک و حتی کاربران فردی بهطور گسترده استفاده میشود. با توجه به افزایش خطرات سایبری، هر فرد یا گروهی که از اینترنت استفاده میکند، باید با تکنیکهای پایه رمزنگاری آشنا باشد و آنها را به کار گیرد. من حمیدرضا تائبی، کارشناس امنیت شبکه در این مطلب سعی خواهم کرد، مفهوم فوق را به زبانی ساده برای شما شرح دهم.
رمزنگاری داده چگونه کار میکند؟
دادهای که باید رمزنگاری شود، متن ساده (Plaintext) نامیده میشود. این متن ساده از طریق الگوریتمهای رمزنگاری که محاسبات ریاضی روی داده خام هستند، پردازش میشود. الگوریتمهای مختلفی وجود دارند که بسته به کاربرد و سطح امنیتی متفاوتاند. علاوه بر الگوریتم، به یک کلید رمزنگاری نیز نیاز است. با استفاده از این کلید و الگوریتم مناسب، متن ساده به متن رمزنگاریشده (Ciphertext) تبدیل میشود. به جای ارسال متن ساده، متن رمزنگاریشده از طریق کانالهای ناامن به گیرنده ارسال میشود. گیرنده با استفاده از کلید رمزگشایی، متن رمزنگاریشده را به فرمت اولیه و قابلخواندن (متن ساده) بازمیگرداند. این کلید رمزگشایی باید همیشه محرمانه بماند و ممکن است با کلید رمزنگاری یکسان یا متفاوت باشد. برای درک بهتر موضوع به مثال زیر دقت کنید.
فرض کنید فردی میخواهد یک پیام شخصی برای دوستش ارسال کند. او پیام را با نرمافزاری خاص رمزنگاری میکند که دادهها را به متنی غیرقابلخواندن تبدیل میکند. سپس پیام را ارسال میکند و دوستش با استفاده از کلید رمزگشایی مناسب، آن را به متن اولیه بازمیگرداند. این فرآیند تضمین میکند که حتی اگر شخص دیگری پیام را رهگیری کند، نمیتواند آن را بخواند.
چرا به رمزنگاری داده نیاز داریم؟
دلایل اصلی نیاز به رمزنگاری عبارتاند از:
احراز هویت: رمزنگاری کلید عمومی تأیید میکند که سرور مبدأ یک وبسایت، کلید خصوصی را دارد و گواهی SSL قانونی دریافت کرده است. این در دنیایی پر از وبسایتهای جعلی بسیار مهم است.
حریم خصوصی: رمزنگاری تضمین میکند که جز گیرنده یا مالک داده، هیچکس نمیتواند پیامها یا دادهها را بخواند و از دسترسی هکرها، ارائهدهندگان اینترنت و حتی نهادهای دولتی جلوگیری میکند.
پیروی از قوانین: بسیاری از صنایع و سازمانهای دولتی قوانینی دارند که شرکتها را ملزم به رمزنگاری دادههای شخصی کاربران میکند، مانند استانداردهای HIPAA، PCI-DSS و GDPR.
امنیت: رمزنگاری از دادهها در برابر نقض، چه در حالت سکون و چه در حین انتقال، محافظت میکند و از حملاتی مانند حملات مرد میانی (Man-in-the-Middle) جلوگیری میکند.
انواع تکنیکهای رمزنگاری داده
متخصصان امنیت سایبری معمولاً رمزنگاری را به سه روش اصلی تقسیم میکنند: متقارن، نامتقارن و هش کردن.
رمزنگاری متقارن (Symmetric Encryption)
در این روش که به رمزنگاری کلید خصوصی نیز معروف است، فرستنده و گیرنده باید به یک کلید مشترک دسترسی داشته باشند. این روش برای سیستمهای بسته که خطر نفوذ شخص ثالث کم است، مناسب است. رمزنگاری متقارن سریعتر از نامتقارن است، اما هر دو طرف باید کلید را ایمن نگه دارند.
رمزنگاری نامتقارن (Asymmetric Encryption)
این روش که به رمزنگاری کلید عمومی نیز شناخته میشود، از دو کلید (عمومی و خصوصی) استفاده میکند که به صورت ریاضی به هم مرتبط هستند. کلید عمومی برای همه در دسترس است، اما کلید خصوصی فقط در اختیار گیرنده است. این روش برای ارتباطات امن در اینترنت بسیار کاربردی است.
هش کردن (Hashing)
هش کردن امضایی با طول ثابت برای یک مجموعه داده یا پیام تولید میکند. هر پیام یک هش منحصر بهفرد دارد که تغییرات کوچک را قابل ردیابی میکند. دادههای هششده قابل رمزگشایی نیستند و فقط برای تأیید صحت دادهها استفاده میشوند.
الگوریتمهای رمزنگاری
الگوریتمهای رمزنگاری برای تبدیل دادهها به متن رمزنگاریشده استفاده میشوند. برخی از بهترین الگوریتمهای رمزنگاری عبارتاند از:
AES: استاندارد رمزنگاری پیشرفته (AES) که توسط دولت آمریکا استفاده میشود، با کلیدهای ۱۲۸، ۱۹۲ و ۲۵۶ بیتی، بسیار ایمن است.
Triple DES: جانشین DES که سه بار الگوریتم DES را روی هر بلوک داده اعمال میکند و برای رمزنگاری رمزهای عبور یونیکس و پینهای ATM استفاده میشود.
RSA: یک الگوریتم نامتقارن که استاندارد رمزنگاری دادههای اینترنتی است و با تولید دادههای پیچیده، هکرها را ناکام میگذارد.
Blowfish: یک ابزار متقارن که پیامها را به بلوکهای ۶۴ بیتی تقسیم و رمزنگاری میکند و به دلیل سرعت و انعطافپذیری شناخته شده است.
Twofish: جانشین Blowfish، با رمزنگاری ۱۲۸ بیتی و ۱۶ دور، که برای نرمافزار و سختافزار مناسب است.
3DES و آینده رمزنگاری داده
الگوریتم رمزنگاری سهگانه داده (Triple Data Encryption Algorithm) که بهطور رسمی 3DEA نامیده میشود، معمولاً با نام 3DES شناخته میشود. این روش دادهها را با استفاده از استاندارد رمزنگاری داده (DES) سه بار رمزنگاری میکند. DES یک تکنیک کلید متقارن مبتنی بر شبکه فایستل است که از یک کلید یکسان برای رمزنگاری و رمزگشایی استفاده میکند. شبکه فایستل باعث میشود فرآیند رمزنگاری و رمزگشایی تقریباً یکسان باشد و این روش را کارآمدتر کند. اگرچه DES دارای بلوک و کلید ۶۴ بیتی است، اما در عمل کلید تنها ۵۶ بیت امنیت ارائه میدهد. به دلیل طول کوتاه کلید DES، الگوریتم 3DES به عنوان جایگزینی امن تر توسعه یافت. در 3DES، الگوریتم DES سه بار با سه کلید اجرا میشود، اما این روش تنها در صورتی ایمن تلقی میشود که از سه کلید متفاوت استفاده شود. وقتی ضعفهای DES آشکار شد، 3DES بهطور گسترده در کاربردهای مختلفی استفاده شد و پیش از ظهور AES، یکی از پرکاربردترین الگوریتمهای رمزنگاری بود. نمونههایی از کاربردهای آن شامل سیستمهای پرداخت EMV، مایکروسافت آفیس و فایرفاکس میشود. با این حال، به دلیل وجود جایگزینهای بهتر، بسیاری از این پلتفرمها دیگر از 3DES استفاده نمیکنند. طبق پیشنویس پیشنهادی مؤسسه ملی استاندارد و فناوری (NIST)، تمام نسخههای 3DES تا سال ۲۰۲۳ منسوخ شدهاند و از سال ۲۰۲۴ استفاده از آنها ممنوع شده است. بنابراین، شرکتهایی که هنوز از الگوریتم فوق استفاده میکنند، ملزم به جریمههای سنگینی خواهند شد.
آینده رمزنگاری داده
صنعت رمزنگاری در حال پیشرفت در چندین جبهه است. برخی تلاشها بر افزایش اندازه کلیدها برای جلوگیری از حملات جستجوی فراگیر (Brute-Force) متمرکز است. پروژههای دیگر در حال بررسی الگوریتمهای رمزنگاری نوین هستند. بهعنوان مثال، NIST در حال آزمایش الگوریتمهای کلید عمومی مقاوم در برابر کوانتوم است. مشکل این است که اکثر الگوریتمهای مقاوم در برابر کوانتوم روی سیستمهای کامپیوتری سنتی ناکارآمد هستند. برای حل این مشکل، صنعت روی توسعه شتابدهندههایی برای اجرای سریعتر این الگوریتمها روی سیستمهای x86 تمرکز دارد. رمزنگاری همومورفیک (Homomorphic Encryption) ایدهای جذاب است که به کاربران اجازه میدهد روی دادههای رمزنگاریشده بدون نیاز به رمزگشایی محاسبات انجام دهند. برای مثال، یک تحلیلگر میتواند بدون نیاز به مجوز از یک تحلیلگر ارشد یا درخواست رفع محرمانگی دادهها، از یک پایگاه داده حاوی اطلاعات محرمانه پرسوجو کند. این نوع رمزنگاری دادهها را در حالتهای در حال انتقال، در حال استفاده و در حالت سکون (روی هارد دیسک) محافظت میکند و از آنجایی که از محاسبات مشابه کامپیوترهای کوانتومی استفاده میکند، مقاوم در برابر کوانتوم است.
رمزنگاری متقارن یا نامتقارن: کدام را استفاده کنیم؟
هر دو نوع رمزنگاری متقارن و نامتقارن برای سناریوهای خاصی مناسبتر هستند. رمزنگاری متقارن که از یک کلید استفاده میکند، برای دادههای در حالت سکون (Data-at-Rest) مناسب است. دادههای موجود در پایگاه دادهها باید رمزنگاری شوند تا از هک یا سرقت محافظت شوند، و چون این دادهها فقط تا زمان بازیابی نیاز به امنیت دارند، یک کلید کافی است. اما برای دادههایی که از طریق ایمیل منتقل میشوند، رمزنگاری نامتقارن بهتر است. اگر فقط از رمزنگاری متقارن برای ایمیلها استفاده شود، مهاجم میتواند با به دست آوردن کلید، دادهها را سرقت یا به خطر بیندازد. در رمزنگاری نامتقارن، با استفاده از کلید عمومی برای رمزنگاری، فقط گیرنده با کلید خصوصی میتواند دادهها را رمزگشایی کند.
کاربرد رمزنگاری در کسبوکارها
رمزنگاری داده در کسبوکارها از نقض اطلاعات جلوگیری کرده و هزینههای ناشی از آن را کاهش میدهد. این یکی از مؤثرترین روشهای امنیتی برای حفاظت از اطلاعات حساس است، اما باید بدانید کدام اسناد را رمزنگاری کنید و چگونه از آنها بهطور مؤثر استفاده کنید. طبق نظرسنجی سال ۲۰۱۹، حدود ۴۵ درصد از شرکتها یک سیاست رمزنگاری مداوم در سراسر سازمان خود دارند. اگر شرکت شما از زیرساخت ابری استفاده میکند، ابتدا باید نیازهای امنیتی خود را برای استقرار ابری و دادههایی که به ابر منتقل میشوند، برنامهریزی کنید. فهرستی از تمام منابع داده حساس تهیه کنید تا بدانید چه چیزی و با چه سطحی از امنیت بیت-کلید نیاز به رمزنگاری دارد.
مراحل اجرای یک استراتژی رمزنگاری مؤثر
همکاری
تدوین یک استراتژی رمزنگاری نیازمند همکاری است. بهتر است آن را بهعنوان یک پروژه بزرگ با مشارکت مدیران، تیم فناوری اطلاعات و عملیات در نظر بگیرید. ابتدا دادههای مهم را از ذینفعان جمعآوری کنید و قوانین، مقررات و عوامل خارجی تأثیرگذار بر تصمیمات خرید و پیادهسازی را شناسایی کنید. سپس نقاط پرریسک مانند لپتاپها، دستگاههای موبایل، شبکههای بیسیم و نسخههای پشتیبان را مشخص کنید.
تعریف نیازهای امنیتی
درک کلی از نیازهای امنیتی مفید است. ارزیابی تهدیدات نقطه شروع خوبی است، زیرا به شما کمک میکند دادههایی که نیاز به رمزنگاری دارند را شناسایی کنید. همچنین، باید میزان امنیت موردنیاز سیستم خود را ارزیابی کنید، زیرا الگوریتمهای مختلف قدرت و نیازهای پردازشی متفاوتی دارند.
انتخاب ابزارهای رمزنگاری مناسب
پس از تعیین نیازهای امنیتی، میتوانید راهحلهایی را که بهترین تطابق را دارند، جستجو کنید. به احتمال زیاد برای حفاظت مؤثر از شبکه، به الگوریتمهای مختلف رمزنگاری نیاز خواهید داشت. برای مثال، میتوانید از پروتکل SSL برای رمزنگاری دادههای ارسالی به وبسایت و از استاندارد AES برای حفاظت از دادههای در حالت سکون و نسخههای پشتیبان استفاده کنید.
آمادهسازی برای اجرای روان برنامه رمزنگاری
اجرای استراتژی رمزنگاری، مانند هر تغییر بزرگ در شرکت، باید بهخوبی برنامهریزی شود. اگر برنامههای روبهمشتری دارید، ممکن است رمزنگاری جدید نیاز به ادغام در بخش پشتیبان برنامه داشته باشد. برنامهریزی دقیق و همکاری با ارائهدهندگان خدمات فناوری اطلاعات شخص ثالث میتواند این انتقال را آسانتر کند.
حفظ فرهنگ امنیتی پس از نصب
رمزنگاری بهتنهایی راهحل نهایی مشکلات امنیتی نیست. تیم خود را برای استفاده صحیح از رمزنگاری و مدیریت کلیدها آموزش دهید. اگر کارمندان کلیدهای رمزنگاری را روی سرورهای ناامن قرار دهند، مهاجمان میتوانند به دادههای رمزنگاریشده دسترسی پیدا کنند. ۸۴ درصد از نقضهای امنیتی به خطای انسانی نسبت داده میشود.
کلید در رمزنگاری چیست؟
کلید یک رشته از کاراکترهای تصادفی با ترتیب خاص است که در رمزنگاری برای درهمریختن دادهها استفاده میشود تا بدون کلید قابل رمزگشایی نباشد. الگوریتمهای مدرن رمزنگاری از محاسبات پیچیده ریاضی استفاده میکنند و کلیدهای امروزی بسیار تصادفیتر از یک رشته ساده هستند. این به دلایل مختلفی است: کامپیوترها میتوانند محاسبات پیچیدهتری را سریعتر انجام دهند، دادهها را در سطح باینری تغییر میدهند و تصادفی بودن واقعی برای امنیت بالا ضروری است. کلید رمزنگاری همراه با الگوریتم، متن را به شکلی غیر قابل شناسایی برای انسان در میآورد.
کلام آخر
رمزنگاری داده یکی از مهمترین ابزارهای امنیت سایبری است که با روشهای مختلف مانند متقارن، نامتقارن و هش کردن، از اطلاعات محافظت میکند. انتخاب الگوریتم مناسب بستگی به نیازهای خاص سازمان دارد، اما استفاده از رمزنگاری برای حفظ حریم خصوصی، امنیت و انطباق با قوانین ضروری است.
ماهنامه شبکه را از کجا تهیه کنیم؟
ماهنامه شبکه را میتوانید از کتابخانههای عمومی سراسر کشور و نیز از دکههای روزنامهفروشی تهیه نمائید.
ثبت اشتراک نسخه کاغذی ماهنامه شبکه
ثبت اشتراک نسخه آنلاین
کتاب الکترونیک +Network راهنمای شبکهها
- برای دانلود تنها کتاب کامل ترجمه فارسی +Network اینجا کلیک کنید.
کتاب الکترونیک دوره مقدماتی آموزش پایتون
- اگر قصد یادگیری برنامهنویسی را دارید ولی هیچ پیشزمینهای ندارید اینجا کلیک کنید.
نظر شما چیست؟