رایانه ها بسته های داده را در سراسر اینترنت ارسال می کنند. این بسته ها مانند نامه هایی در یک پاکت هستند: یک بیننده به راحتی می تواند داده های داخل آنها را بخواند. اگر آن داده ها اطلاعات عمومی مانند یک مقاله خبری باشد، مشکل بزرگی نیست. اما اگر این دادهها یک رمز عبور، شماره کارت اعتباری یا ایمیل محرمانه باشد، این خطرناک است که هر کسی آن داده را ببیند.
پروتکل امنیت لایه انتقال (TLS) یک لایه امنیتی در بالای پروتکل های انتقال TCP/IP اضافه می کند. TLS از رمزگذاری متقارن و رمزگذاری کلید عمومی برای ارسال امن دادههای خصوصی استفاده میکند و ویژگیهای امنیتی اضافی مانند احراز هویت و تشخیص دستکاری پیام را اضافه میکند.
TLS مراحل بیشتری را به فرآیند ارسال داده با TCP/IP اضافه می کند، بنابراین افزایش می یابد
در ارتباطات اینترنتی با این حال، مزایای امنیتی اغلب ارزش تأخیر اضافی را دارد.
(توجه داشته باشید که TLS جایگزین یک پروتکل قدیمی به نام SSL شد، بنابراین اصطلاحات TLS و SSL اغلب به جای یکدیگر استفاده می شوند.)
از شروع تا پایان
بیایید روند ارسال امن داده ها با TLS از یک رایانه به رایانه دیگر را طی کنیم. ما کامپیوتر فرستنده را کلاینت و کامپیوتر گیرنده را سرور می نامیم .
دست دادن TCP
از آنجایی که TLS بر روی TCP/IP ساخته شده است، مشتری باید ابتدا دست دادن سه طرفه TCP را با سرور انجام دهد.
شروع TLS
مشتری باید به سرور اطلاع دهد که به جای اتصال ناامن استاندارد، به اتصال TLS میخواهد، بنابراین پیامی را ارسال میکند که توضیح میدهد از کدام نسخه پروتکل TLS و تکنیکهای رمزگذاری میخواهد استفاده کند.
تایید پروتکل سرور
اگر سرور از فناوری های درخواستی مشتری پشتیبانی نکند، اتصال را قطع می کند. اگر یک کلاینت مدرن سعی در برقراری ارتباط با سرور قدیمی داشته باشد، ممکن است این اتفاق بیفتد.
تا زمانی که سرور از نسخه پروتکل TLS درخواستی و سایر گزینهها پشتیبانی میکند، با تأیید، به علاوه یک گواهی دیجیتال که حاوی کلید عمومی آن است، پاسخ میدهد.
تایید گواهی
گواهی دیجیتال سرور روشی است که سرور برای گفتن “بله، من واقعاً همانی هستم که شما فکر می کنید هستم”. اگر مشتری باور نداشته باشد که گواهی قانونی است، اتصال را قطع میکند، زیرا نمیخواهد دادههای خصوصی را برای یک تقلبی ارسال کند.
در غیر این صورت، اگر مشتری بتواند گواهی را تأیید کند، به مرحله بعدی ادامه می دهد.
تولید کلید مشترک
کلاینت اکنون کلید عمومی سرور را میداند، بنابراین از نظر تئوری میتواند از رمزگذاری کلید عمومی برای رمزگذاری دادهها استفاده کند که سپس سرور میتواند با کلید خصوصی مربوطه خود رمزگشایی کند.
با این حال، رمزگذاری کلید عمومی به دلیل دشوارتر بودن عملیات حسابی، زمان بیشتری نسبت به رمزگذاری متقارن نیاز دارد. در صورت امکان، رایانه ها ترجیح می دهند از رمزگذاری متقارن برای صرفه جویی در زمان استفاده کنند.
خوشبختانه، آنها می توانند! رایانه ها می توانند ابتدا از رمزگذاری کلید عمومی برای تولید خصوصی یک کلید مشترک استفاده کنند و سپس می توانند از رمزگذاری متقارن با آن کلید در پیام های بعدی استفاده کنند.
کلاینت این فرآیند را با ارسال پیامی به سرور با یک کلید اصلی که با کلید عمومی سرور رمزگذاری شده است، شروع می کند. کلاینت کلید مشترک را بر اساس آن کلید اصلی محاسبه می کند (زیرا این کلید امن تر از ارسال همراه با کلید مشترک واقعی است) و کلید مشترک را به صورت محلی به خاطر می آورد.
مشتری همچنین یک پیام “تمام” می فرستد که محتوای آن با کلید مشترک رمزگذاری شده است.
تایید سرور کلید مشترک
سرور اکنون می تواند کلید مشترک را بر اساس کلید اصلی محاسبه کند و سعی کند پیام “تمام” را با آن کلید رمزگشایی کند. اگر خراب شود، اتصال را قطع می کند.
تا زمانی که سرور بتواند پیام مشتری را با کلید مشترک رمزگشایی کند، یک پیام تأیید و پیام “تمام” خود را با محتوای رمزگذاری شده ارسال می کند.
ارسال اطلاعات امن
در نهایت، مشتری با استفاده از رمزگذاری متقارن و کلید مشترک، داده های خصوصی را به طور ایمن به سرور ارسال می کند.
اغلب اوقات، یک مشتری نیاز دارد چندین بار داده ها را به سرور ارسال کند، مانند زمانی که کاربر فرم ها را در چندین صفحه یک وب سایت پر می کند. در این صورت، رایانه ها می توانند از یک فرآیند مختصر برای ایجاد جلسه امن استفاده کنند.
TLS در همه جا
TLS برای بسیاری از اشکال ارتباط امن در اینترنت، مانند ارسال امن ایمیل و آپلود امن فایل استفاده می شود. با این حال، بیشتر به دلیل استفاده از آن در مرور امن وب سایت ( HTTPS ) شناخته شده است.
TLS به لطف استفاده از کلید عمومی و رمزگذاری متقارن، یک لایه امن در بالای TCP/IP فراهم میکند، و به طور فزایندهای برای ایمن کردن دادههای خصوصی در حال پرواز در اینترنت ضروری است.
دیدگاهتان را بنویسید