HTTPS چیست؟ آشنایی با HTTPS به روش کبوتر نامهبر
HTTPS چیست؟ | آشنایی با HTTPS به روش کبوتر نامهبر
ارسال پیغام به صورت حمل بسته
فرض می کنیم شخص اول قصد ارسال نامه به شخص دوم را داشته باشد. در این صورت :
چون شخص اول و شخص دوم از قبل همدیگه رو ملاقات نکردن و با نحوه رمزنگاری همدیگه هماهنگ نیستند بنابراین به فکر چارهای میافتند و راهکاری که به ذهنشون میرسه به شرح زیر خواهد بود.
- شخص اول که کبوتر نامهبر برای شخص دوم میفرسته که حامل هیچ نامه و پیغامی نیست.
- بعد از رسیدن کبوتر، شخص دوم به جای نامه یک جعبه با قفل باز به پای کبوتر میبنده و اونو راهی میکنه برای شخص اول در حالی که کلید این قفل فقط دست شخص دوم هست
- شخص اول کبوتر را به همراه جعبه با قفل باز دریافت کرده و پیغام خودش را بعد از نوشتن داخل جعبه قرار میده و اونو قفل میکنه
- شخص دوم کبوتر را به همراه نامه که داخل جعبه قفل شده هست دریافت میکنه و چون کلید این جعبه را فقط خودش داره، بنابراین جعبه را باز کرده و پیغام را مشاهده میکنه
در این مرحله هم هکر ناکام مونده و چون کلید این جعبهها را نداره قادر به باز کردن جعبه و خوندن پیغامها نیست. حالا همین مراحل که از شخص اول شروع شده و با گرفتن نامه توسط شخص دوم بعد از طی 4 مرحله به اتمام میرسه به صورت برعکس هم انجام میگیره و هر دو طرف با کلید اختصاصی قفلی که دارند میتونن برای هم پیغام ارسال کنند.
به این روش ارسال پیغام به صورت رمزنگاری شده، رمز نگاری کلید نامتقارن asymmetric key cryptography نامیده میگویند. دلیل اینکه به این روش نامتقارن میگن اینه که اگر شما یک پیام را رمزگذاری کنید(جعبه را قفل کنید) دیگه نمیتونید اونو رمزگشایی کنید(قفل جعبه را باز کنید). که در این حالت به جعبه کلید عمومی public key و کلیدی که آن را باز میکند کلید خصوصی private key گفته میشود.
آیا جعبه قابل اطمینان هست؟
اگر دقت کنید وقتی که شخص دوم به جای نامه، یک جعبه با قفل باز را به پای کبوتر بست و راهی شخص اول کرد، شخص اول باید از کجا متوجه بشه که این جعبه دریافتی از سوی شخص دوم ارسال شده؟ در این صورت هکر با این ایده میتونه جعبه خودش را به جای جعبه ارسالی شخص دوم جا زده و با شخص اول پیغام ارسال و دریافت بکنه که شخص اول هم از این موضوع کاملا بی اطلاع هست.
پس شخص دوم تصمیم میگیره که روی جعبه باز ارسال شده امضا خودش را درج بکنه که وقتی شخص اول جعبه را دریافت کرد اول امضای روی جعبه را بررسی بکنه، اگر امضا با امضای شخص دوم مطابقت داشت پیغام خودش را داخل جعبه قرار داده و بعد از قفل کردن برای شخص دوم ارسال بکنه.
اینجاست که باز یک راه تقلب پیش میاد. در این صورت شخص اول که اصلا با شخص دوم ملاقاتی نداشته از کجا باید بمونه که امضا درج شده روی جعبه جعل نشده و متعلق به شخص دوم هست؟ در این صورت برای فرار شخص اول و دوم از دسته کر اونها میتونند از یک شخص مورد اعتماد کمک بگیرند که امضای روی جعبهها را تایید بکنه.
اینجاست که آلن تورینگ که مورد اعتماد همه است و تونسته در جنگ جهانی دوم با شکستن نحوه رمزگذاری پیغامهایی که ارتش هیتلر داشتند این جنگ را در کوتاهترین زمانی که میتونسته جور دیگری رقم بزنه و جان میلیونها انسان را نجات بده وارد عمل خواهد شد. شخص اول و دوم هم کاملا به آلن اعتماد دارند.
پس از این به بعد ارسال پیغام از طریق جعبه و کبوتر نامهبر به این صورت انجام میگیره که آلن تورینگ که مورد اعتماد همه است، امضا خودشو به همه میده و همه اعتماد دارند که اون فقط جعبهها را برای افراد احراز هویت شده یا مشروع امضا میکند. پس وقتی شخص دوم برای شخص اول نامهای ارسال میکنه به حضور آلن رفته و ازش میخواد که با زدن امضا اونو احراز هویت کرده و این امکان را برای ارسال امضا به اون بده. بنابراین دیگه هکر در این بین نمیتونه جعبه شخص دوم را که آلن اونو امضا کرده در دست گرفته و خودش رو برای شخص اول به جای شخص دوم قالب بکنه. شخص اول هم میدونه که جعبهها فقط زمانی تایید میشن که آلن اونها را امضا کرده باشه.
در اینجا آلن تورینگ درواقع همون مرجع صدور گواهینامههای امنیتی SSL هست. پس الان که در حال خوندن ای مقاله روی بستر امن HTTPS، باید بدونید که گواهینامه امنیتی ما در واقع میشه گفت توسط آلن امضا شده و مورد تایید هست. پس وقتی برای اولین بار وارد پایگاه دانش میشید، به جعبه امنیتی پایگاه دانش اعتماد میکنید. چرا که این جعبه امنیتی از طرف آلن که مورد اعتماد شماست امضا شده و به صورت کاملا قانونی هست.
حالا اشخاص برای ارسال پیغام از یک سیستم امنیتی قوی و مورد اعتماد استفاده میکنند
که میتونن پیغامهاشونو با خیال راحت برای همدیگه ارسال بکنند. اما اونا متوجه میشن کبوتری که پیغامها را همراه با جعبه رد و بدل میکنه، در مقایسه با کبوتر اولی که بدون جعبه پیغامها را رد و بدل میکرد بخاطر سنگینی جعبه خیلی کند عمل میکنه. پس تصمیم میگیرند که از روش جعبه(رمزگذاری نامتقارن) برای انتخاب کردن کلید مخفی و از کلید برای ارسال پیغامهاشون(رمز سزار) استفاده کنند. در این صورت نیازی به ارسال جعبه همراه کبوتر نیست