انواع پروتکل های کریپتوگرافی چیست؟ – به زبان ساده
پروتکل های SSL و PGP دو مورد از انواع پروتکل های کریپتوگرافی هستند. این ابزارهای کاربردی برای حفظ امنیت در زمان اتصال بین کلاینت به سرور و ارسال ایمیل به کار برده میشوند. بدون استفاده از آنها امنیت شبکه و پیامهای ارسال شده بین کاربران به شدت افت میکند. بنابراین هکرها میتوانند از کاربران به راحتی جاسوسی کرده و حتی آسیبهایی مانند خسارت مالی ایجاد بکنند. در نتیجه مهندسان کامپیوتر به خصوص افراد فعال در حوزه شبکه باید با این پروتکل ها آشنا باشند. در این صورت میتوانند امنیت اپلیکیشنها، شبکه و کاربران خود را به شکل مناسبی حفظ بکنند.
- متوجه میشوید که معماری امنیتی چیست و با چه سوالاتی باید آن را ارزیابی کنیم.
- با پروتکل SSL آشنا شده و علت استفاده از آن را متوجه میشوید.
- روش کار پروتکل SSL را به صورت مرحله به مرحله یاد میگیرید.
- روش کار پروتکل PGP را در بخش فرستنده و گیرنده ایمیل به شکل مجزا میآموزید.


در این مطلب از مجله فرادرس با انواع پروتکل های کریپتوگرافی در حوزه شبکه و ایمیل آشنا میشوید. دو مورد از کاربردیترین موارد را بررسی میکنیم. هر کدام را به ترتیب معرفی کرده و کاربرد آن را شرح میدهیم. سپس روش کار آنها را به شکل کلی توضیح خواهیم داد.
انواع پروتکل های کریپتوگرافی چیست؟
پروتکل های زیر دو مورد از مهمترین پروتکل های کریپتوگرافی هستند.
- پروتکل لایه سکوت امن یا SSL
- پروتکل PGP
در ادامه این مطلب هر دو پروتکل بالا را به شکل کامل توضیح دادهایم. اما ابتدا باید توضیح مختصری درباره ماهیت پروتکل های کریپتوگرافی بدهیم.
پروتکل کریپتوگرافی چیست؟
پروتکل های کریپتوگرافی ترکیب چند الگوریتم رمزنگاری گوناگون هستند. هدف از استفاده از این پروتکل ها انجام عملیات مختلف همراه با رمزنگاری دادهها است. در طراحی معماریهای امنیتی باید از این پروتکل ها استفاده کنیم. انواع پروتکل های کریپتوگرافی از ترکیب چند الگوریتم رمزنگاری (کریپتوسیستم) مختلف استفاده میکنند. در هنگام ساخت هر پروتکلی باید به نیازها و اهداف سیستم توجه کرد.
در زمان طراحی معماریهای امنیتی باید از تحلیلی به نام «تحلیل ضرر-فایده» استفاده کنیم. یعنی اینکه باید پاسخ چند سوال زیر را بررسی کنیم.
- با استفاده از پروتکل های کریپتوگرافی پیچیده چقدر سیستم کندتر عمل میکند؟
- آیا پیچیدگی بیشتر این سیستمهای امنیتی مفید است یا نه؟
- اگر پیچیدگی معماری امنیتی را کاهش بدهیم چقدر سرعت بیشتر میشود؟
- آیا کاهش پیچیدگی معماری امنیتی برای افزایش سرعت باعث بروز خطرات بیشتری میشود یا نه؟
با توجه به این موارد میتوانیم تصمیم بگیریم که از چه پروتکل امنیتی باید استفاده کنیم.
تا به اینجا شناخت کلی از انواع پروتکل های کریپتوگرافی بدست آوردهاید. در ادامه، این دو پروتکل مشهور را به شکل دقیقتری بررسی میکنیم. در صورت تمایل به مطالعه مطالبی مانند این مورد، پیشنهاد میکنیم که از اپلیکیشن رایگان مجله فرادرس استفاده کنید.
برای نصب اپلیکیشن رایگان مجله فرادرس، کلیک کنید.
پروتکل لایه سکوت امن یا SSL
پروتکل «لایه سوکت امن» (Secure Socket Level | SSL) پروتکلی است که امنیت کریپتوگرافی رو در معماریهای کلاینت-سرور و معماریهای شبکه پیادهسازی میکند. در فهرست پایین، سه مورد از رایجترین سرورهای طراحی شده با این معماری را معرفی کردهایم.
- سرور ایمیل
- سرور (مرورگر) وب
- سرویسهای فضای ابری
نکته: الان از پروتکل «لایه انتقال امن» (Transport Layer Security | TLS) بیشتر بهجای SSL استفاده میشود.
به طور کل میتوان گفت که بیشتر وظیفه آن احراز هویت با هدف برقراری امن سشنها است. البته وظایف این معماری را میتوان در سه مورد اصلی دستهبندی کرد.
- احراز هویت سمت سرور
- احراز هویت کلاینتها
- برقراری ارتباط رمز شده بین سرورها و کلاینتها
روش کار معماری SSL به صورت زیر است.
- ابتدا کلاینت، درخواست یا ریکوئستی به سمت سرور (ایمن شده با پروتکل SSL) ارسال میکند. با کمک این درخواست، کلاینت به سرور متصل شده و تقاضای اتصال میکند. در واقع از سرور میخواهد که خودش را معرفی کند.
- سپس سرور، نسخه کپی از تاییدیه SSL خودش را به کلاینت میفرستد. در این تاییدیه کلید عمومی سرور هم قرار داده میشود.
- مرورگر یا کلاینت، تاییدیه ارسال شده از سرور را ارزیابی میکند. اگر این تاییدیه درست بود، با کمک کلید عمومی سرور، کلیدی عمومی دیگری برای جلسه متقارن میسازد و رمزنگاری میکند. این کلید توسط کلاینت دوباره به سرور ارسال میشود. از این کلید برای رمزنگاری ارتباطات بعدی استفاده خواهد شد.
- سرور کلید جلسه متقارن را به کمک کلید خصوصی خودش رمزگشایی میکند. اگر اعتبار کلاینت تایید شد و متوجه شد که کلاینت هم اعتبار او را تایید کرده است، برای شروع سشن یا ارتباط رمزنگاری شده، کلید سشن به همراه بسته داده رمز شده را به کلاینت ارسال میکند.

بعد از مرحله چهارم، ارتباط امن تحت پروتکل SSL بین کلاینت و سرور برقرار میشود.
چطور در فرادرس رمزنگاری یاد بگیریم؟
وبسایت آموزشی فرادرس مجموعه آموزش حرفهای برای کمک به یادگیری هرچه بهتر رمزنگاری فراهم کرده است. امنیت اطلاعات و رمزنگاری نقش مهمی در حفاظت از دادهها و مقابله با تهدیدات امنیتی در حوزه فناوری اطلاعات ایفا میکنند. رمزنگاری شامل تکنیکهایی مانند رمزنگاری متقارن (استفاده از کلید مشترک)، رمزنگاری نامتقارن (استفاده از جفت کلید عمومی و خصوصی) و رمزنگاری هش (تبدیل داده به مقادیر برگشتناپذیر و یکتا) است. برای حفظ امنیت شبکهها و ارتباطات لازم است که توسعه دهندگان نرمافزار به خصوص وباپلیکیشنها با این تکنیکها آشنا باشند.

فرادرس برای کمک به یادگیری تکنیک بسیار مهم رمزنگاری برای مهندسان کامپیوتر، برنامه نویسان و افراد علاقهمند به این حوزه، مجموعهای از فیلمهای آموزشی را تهیه و منتشر کرده است. این فیلمها بسیار جامع بوده و تقریبا بیشتر بخشهای این حوزه را پوشش میدهند. با مشاهده آنها و انتخاب فیلم مورد نظر میتوانید مهارت خود را در رمزنگاری دادههای کامپیوتری افزایش بدهید.
- فیلم آموزش رمزنگاری Cryptography در دات نت .NET
- فیلم آموزش ساخت اپلیکیشن چت با رمزنگاری سراسری در جاوا و نود جی اس
- فیلم آموزش رایگان الگوریتم های رمزگذاری و رمزنگاری شبکه های بی سیم
- فیلم آموزش امنیت اطلاعات و رمزنگاری + گواهینامه
پروتکل PGP
پروتکل PGP با پروتکل SSL تفاوت دارد. این پروتکل بیشتر برای ایمیلها به کار برده میشود. ویژگی خاص آن این است که نمیتوان در ارتباطات امن SSL از آن استفاده کرد. در واقع نمیتوان با این دو پروتکل به صورت همزمان کار کرد. روش کار این پروتکل در بخش فرستنده ایمیل به صورت زیر است.
- ابتدا پیام نوشته شده در ایمیل هش میشود. هشینگ در امنیت اطلاعات یکی از مهمترین مراحل کار است.
- سپس کد هش پیام با کلید خصوصی ارسال کننده رمزگذاری میشود.
- بعد از آن بلوک رمزگذاری شده با خود پیام اصلی، XOR میشود.
- سپس دوباره نتیجه به دست آمده با کلید دیگری که به فرستنده اختصاص دارد، رمزنگاری میشود.

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

پروتکل PGP پیادهسازی اوپن سورسی از روی پروتکل OpenPGP است. این پروتکل بیشتر برای تامین امنیت ایمیلها طراحی و توسعه داده شده است. پروتکل PGP امکاناتی مانند احراز هویت، محرمانگی، فشردهسازی و سازگاری برای ایمیل را به توسعهدهندگان ارائه میدهد. این پروتکل به صورت رایگان و در نسخههای مختلف برای پلتفرمهای گوناگونی مانند ویندوز، یونیکس، مکینتاش و سایر سیستم عاملها ارائه شده است. البته نسخه تجاری PGP هم برای انجام وظایف خاص امنیتی مانند سرورهای بزرگ، نیروهای نظامی و غیره وجود دارد.
چند نکته مهم درباره PGP
در این بخش از مطلب چند نکته مهم درباره پروتکل PGP را توضیح میدهیم. توجه به این نکات برای توسعهدهندگان از اهمیت زیادی برخوردار است.
- در پروتکل PGP به جای رمزنگاری نامتقارن از رمزنگاری متقارن استفاده میشود. این کار سرعت عملیات را خیلی بیشتر میکند.
- PGP از الگوریتم RSA استفاده میکند. این الگوریتم نیازی به کلید خصوصی نداشته و تمام کارهای خود را با کلید عمومی انجام میدهد. در نتیجه کاربرد زیادی در توزیع کلیدهای جلسه یا سشنهای یکبارمصرف دارد.
به دلیل خاصیت ذخیره و فروارد کردن ایمیلها نمیتوان از پروتکل های SSL و TLS استفاده کرد. زیرا SSL تلاش میکند که سشنها را حفظ کند. اما PGP میخواهد ایمیلها را ذخیره کند و حتی شاید در آینده برای کس دیگری فروارد کند. بنابراین جلسات PGP با همدیگر همخوانی ندارند. در نتیجه برای ارسال ایمیل از فرستده به گیرنده در پروتکل PGP باید از چند کلید مختلف استفاده کنیم.
یادگیری مهارتهای مربوط به امنیت شبکه
امنیت شبکههای کامپیوتری مجموعه اقدامات و فرایندهایی است که به منظور حفاظت از اطلاعات، سیستمها، شبکهها و منابع مرتبط در شبکه کامپیوتری انجام میشود. هدف اصلی امنیت شبکه، جلوگیری از دسترسی غیرمجاز، تخریب، دستکاری و سرقت اطلاعات است. موقعیتهای شغلی خوبی برای افراد دارای مهارت حفظ امنیت شبکه وجود دارد. بنابراین فرادرس تلاش کرده است تا با کمک فیلمهای آموزشی حرفهای به تمام افراد علاقهمند به این حوزه کمک کند تا مهارتهای مربوط به حفظ امنیت شبکههای کامپیوتری را فرا بگیرند.
در فهرست پایین، چند مورد از فیلمهای مربوط به این مجموعه آموزشی را معرفی کردهایم.
- فیلم آموزش امنیت شبکه با پایتون از مبانی تا تست نفوذ + گواهینامه
- فیلم آموزش حملات DoS و DDoS در شبکه مجازی از شناسایی تا روشهای مقابله + گواهینامه
- فیلم آموزش فایروال پی اف سنس، مدیریت امنیت شبکه با PfSense Firewall + گواهینامه
- فیلم آموزش «سیسکو آیس» (Cisco ISE) برای امنیت شبکه های کامپیوتری + گواهینامه
- فیلم آموزش تامین امنیت شبکه با «فایروال سوفوس» (Sophos Firewall) + گواهینامه
در صورت تمایل به مشاهده فیلمهای بیشتر میتوانید بر روی تصویر پایین کلیک کنید.

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












