HTTP در مقابل
HTTP (پروتکل انتقال ابرمتن) یک پروتکل در سطح برنامه برای سیستم های اطلاعاتی توزیع شده، مشارکتی و ابررسانه ای است. در RFC 2616 (درخواست برای نظرات) تعریف شده است. اساساً ویژگی اصلی HTTP قسمت مذاکره انتقال داده است. نمونههای معمولی از سرویسهای HTTP، ارتباطات وب سرور و ارتباطات سرویس نام دامنه هستند.
در سطح برنامه ارتباط پایان به انتها داده یک سر به عنوان سرور و انتهای دیگر به عنوان مشتری عمل می کند. برای برقراری ارتباط با مشتری سرور باید آدرس IP و شماره پورت سرور را بداند. آدرس IP به دسترسی به سرور کمک می کند و شماره پورت فقط مشخص می کند که مشتری به دنبال چه سرویسی است.(از نظر فنی به عنوان سوکت تعریف می شود).
همین اینجا در HTTP. فقط به عنوان مثال وب سرور را در نظر بگیرید، در این مدل، وب سرور نرم افزار کاربردی است که بر روی سرور سخت افزاری اجرا می شود و مشتری، مرورگر کاربر است. برنامه وب سرور در حال گوش دادن به پورت شماره 80 برای پذیرش اتصالات HTTP است. بنابراین این پورت 80 به عنوان پورت HTTP تعریف می شود.
HTTPS نیز مشابه HTTP است اما S مخفف Secure است. در HTTP داده ها همانطور که هست منتقل می شوند که به آن متن ساده می گویند. هر کسی می تواند در مسیر خود بین سرور و کلاینت بخواند. اما در HTTPS هیچکس نمیتواند اطلاعات بین سرور و کلاینت را که معمولاً مرورگر وب و سرور وب شما هستند، بخواند.
اضافی، اجرای TLS (امنیت لایه حمل و نقل) یا SSL (لایه سوکت ایمن) تونل رمزگذاری شده سرتاسری را برای انتقال داده ایجاد می کند. تونل رمزگذاری شده یعنی ارتباط داده بین سرور و کلاینت بسته است و سرور و کلاینت فقط می توانند ارتباط را بخوانند.
در این حالت، کلاینت، که در مثال ما مرورگر وب شما است، از طریق درگاه شماره 443 با سرور وب ارتباط برقرار می کند. در اکثر برنامه های بانکی، تبادل اطلاعات ورود به سیستم کاربر از HTTPS استفاده می کند.
به طور خلاصه:
(1) HTTP داده های معمولی را منتقل می کند در حالی که HTTPS داده های بسته یا رمزگذاری شده را ارسال می کند
(2) HTTP برای برنامههای معمولی است و HTTPS بیشتر برای برنامههای بانکی یا امن است
(3) HTTP از پورت 80 استفاده می کند در حالی که HTTPS از پورت 443 استفاده می کند
(4) HTTP در RFC 2616 و HTTPS در RFC 2817 تعریف شده است (ارتقا به TLS در