كلیه اطلاعات این سایت مربوط به شركت طراحی سایت - شركت نرم افزاری بهپردازان می باشد


موضوع مقاله : https در طراحی سایت :

شرح : پروتکل https پروتکلي ست براي استفاده از وب سايت ها. تفاوت https با http در اين است که https ميان کلاينت کاربر و سرور وب اطلاعات را  رمز نگاري مي کند و اين رمز نگاري توسط certificate اي که آن سايت به شما مي دهد اتفاق مي افتد . در صورت استفاده از پروتکل http ديتاي تبادل شده ي شما به سرور وب به صورت plain text تبادل شده و اگر شخصي ميان کلاينت شما و به طور مثال مودم اينترنت شما ( مي تواند isp و ... باشد ) واقع شود و شروع به عمليات arp poisoning نمايد ( در اين روش مهاجم آدرس مک gateway شما رو جاي مک آدرس کارت شبکه ي خودش جا ميزنه و به اصلاح شروع به sniff کردن ميکنه يعني تمامي ترافيک اي که قرار است به سمت مودم اينترنت برود ابتدا به سمت اين شخص مهاجم مي رود و سپس  پکت ها از سيستم هکر به سمت gateway واقعي ورانه مي شوند . به اين نوع حمله man in the middle(mitm) attack مي گويند ) مي تواند پکت هاي ارسالي شما به سرور وب را ديده و اگر اين ديتا ها رمز نگاري شده نباشند خواندن محتوي آنها براي هکر کار بسيار راحتي خواهد بود . براي همين دليل است که اکثر وب سايت هاي مهم ( مانند سرويس دهنده گان ايميل و يا اينترنت بانک ها و يا ... ) حداقل هنگامي که به صفحه ي لاگين و ورود نام کاربر و رمز عبور مي رسيم از پروتکل https استفاده مي کنند .
اين نکته را اضافه مي کنيم که به صادر کننده هاي certificate CA (Certificate Authority) مي گويند و هر شخصي که بخواهد در وب سايت خودش از certificate استفاده نمايد بهتر است از ca هاي شناخته شده certificate بخرد و در وب سايت خودش قرار دهد . برخي از اين ca هاي معروف عبارتند از godaddy - verisign - ...
حال اين سوال مطرح مي شود که مگر نمي شود ما خودمان ca باشيم ؟! در پاسخ بايد گفت که بله اين امکان هست اما اگر certificate مورد استفاده ي ما توسط ca هاي متفرقه صادر شده باشد کلاينت هنگامي که مي خواهد صفحه ي https ما را browse کند browser آن به او هشدار مي دهد که certificate مورد استفاده در اين وب سايت valid نيست ! پس اين نکته را بايد بدانيم که سيستم عامل ها و browser ها از قبل  به تعداد مشخص و معيني ca اطمينان دارند و زماني که صفحه اي که از certificate استفاده مي کند ( ssl page ) را باز نماييم ممکن است که مشاهده کنيم درمحيط  url بالاي صفحه ي مرورگر  به رنگ سبز رنگ در آيد و اين به معني اطمينان داشتن سيستم ما به certificate مورد استفاده در آن سايت است و اگر محيط url مرورگر به رنگ قرمز درآمد اين بدين معني ست که سيستم ما به آن certificate مورد استفاده اطمينان ندارد ( که دلايل آن را کاملا در ادامه ي مطلب شرح مي دهيم ) پس مي بينيم که اگر براي وب سايت امان که قرار است دز محيطي عمومي publish شود از ca معتبري استفاده نکنيم کاربران هنگام ورود به صفحه ي امن سايت ما هشدار valid نبودن cerfitiface را مي گيرند و احتمالا به آن trust نميکنند ! اطلاعات مربوط به Cerfiticate را مي تواند در همان url در قسمت cerfiticate information ديد که صادر کنند ه ي اين certificate کيست ؟ براي کجا صادر شده و در چه بازه ي زماني اي valid است . اين نکته را نيز اضافه ميکنيم که ما ميتوانيم certificate هر ca را روي سيستم خود در ليست trust ها قرار دهيم تا سيستم ما به آن certificate و صادر کننده ي اطمينان داشته باشد ( اما هنگام add کردن Certificate در trust هاي سيستم بايد دقت داشته باشيم و ca مزبور را بشناسيم ) .
در بالا اشاره کرديم که اگر هنگام باز کردن صفحه ي ssl محيط url  امان به رنگ قرمز درامد يعني که اين Cerfiticate مورد اطمينان سيستم ما نيست . حال ميخواهيم دلايل اين مورد را بررسي نماييم :
1- ممکن است تاريخ سيستم عامل ما تاريخ روز نباشد براي مثال ممکن است تاريخ سيستم 3 سال اختلاف داشته باشد و certificate مورد استفاده در بازه ي زماني 2 ساله valid باشد .
2-ممکن است صاحب سايت از certificate متفرقه اي استفاده کرده باشد ( که در بالا اشاره کرديم اگر آن سايت و ca آن را مي شناختيم مي توانيم آن را در ليست trust هاي خود add نماييم )
3- ممکن است مورد حمله ي MITM واقع شده باشيم و شخصي دارد پکت هاي ما را sniff ميکند و اين بدين معني ست که ممکن است شخص يک certificate جعلي را به ما بدهد تا بتواند پسورد و ساير اطلاعات مهم ما را بدست آورد . پس بايد دقت کنيم که هر cerfiticate اي رو در trust هاي سيستم خود قرار ندهيم که چه بسا ممکن است آن Certificate مربوط به يک هکر اي باشد که ميان ما و اينترنت واقع شده است !