PGP Guide Step-by-Stepامروز قصد دارم در مود PGP یک توضیح بدم و همینطور نحوه عملکرد اون که چطور کار میکنه
اول از همه باید بگم که :
PGP مخفف
Pretty Good Privacy است؛ یک نرمافزار/استاندارد رمزنگاری که در سال ۱۹۹۱ توسط Phil Zimmermann معرفی شد.
بهصورت خیلی خلاصه:
برای رمزگذاری و امضای دیجیتال ایمیل و فایلها استفاده میشود.
از رمزنگاری کلید عمومی و کلید خصوصی استفاده میکند.
کمک میکند فقط گیرندهی موردنظر بتواند پیام را بخواند و همچنین هویت فرستنده قابل تأیید باشد.
خب حالا اگر بخوام به صورت عملی هم این رو ببینیم به چه صورت هست
فرض کنید کاربری به اسم
ALICE میخواد یک پیام برای
BOB ارسال کند
ولی این پیام خیلی مهم هست برای این دو شخص و این دو شخص باید از یک پروتکل رمزنگای قوی استفاده کنن که هیچ شخص ثالث نتونه پیام این دو شخص رو ببینه
این دو نفر تصمیم میگیرند از PGP استفاده کنند برای مکالمه های خود خب حالا این دو نفر برای اینکه بتوانند از PGP استفاده کنند، اول از همه
باید هر کدام یک جفت کلید بسازند:
یک Private Key (کلید خصوصی) که فقط نزد خودشان میماند و هرگز منتشر نمیشود.
و یک Public Key (کلید عمومی) که میتوانند آن را در اختیار دیگران قرار دهند.
پس:
ALICE
یک Public/Private Key دارد
BOB
هم یک Public/Private Key دارد
مرحله بعد: تبادل کلید عمومی
برای اینکه ارتباط امن برقرار شود هر دو نفر باید Public Key معتبرِ طرف مقابل را داشته باشند.
یعنی:
ALICE
باید Public Key مربوط به BOB را داشته باشد.
BOB
باید Public Key مربوط به ALICE را داشته باشد.
بدون داشتن کلید عمومی طرف مقابل، نه میتوان پیام را رمز کرد و نه میتوان امضای او را بررسی کرد
خب حالا رمزگذاری پیام چگونه انجام میشود؟
حالا فرض کنید ALICE میخواهد پیام محرمانهای برای BOB ارسال کند.
ALICE
پیام را مینویسد.
پیام با Public Key مربوط به BOB رمزگذاری میشود.
پیام رمز شده ارسال میشود.
از آنجایی که این پیام با کلید عمومی BOB رمز شده است فقط Private Key مربوط به BOB میتواند آن را باز کند. پس حتی اگر شخص ثالثی پیام را در مسیر دریافت کند، فقط یک متن رمز شده و غیرقابلخواندن خواهد دید.
حالا امضای دیجیتال چگونه کار میکند؟
اگر ALICE بخواهد به BOB ثابت کند که پیام واقعاً از طرف اوست:
ALICE
پیام را با Private Key خودش امضا میکند.
BOB
هنگام دریافت پیام، با استفاده از Public Key مربوط به ALICE امضا را بررسی میکند.
اگر امضا معتبر باشد، یعنی پیام واقعاً از ALICE است و پیام در مسیر تغییر نکرده است
حالا نقش Key ID و Fingerprint این وسط چیه :
در PGP هر کلید عمومی دارای یک شناسه به نام Key ID و یک مقدار دقیقتر به نام Fingerprint است.
و حالا چرا این مورد مهم است؟
چون اگر ALICE به اشتباه Public Key یک مهاجم را به جای BOB دریافت کند:
پیام محرمانه را برای مهاجم رمز میکند
مهاجم میتواند پیام را با Private Key خودش باز کند
به همین دلیل معمولاً Fingerprint کلید از طریق یک کانال امن ( تأیید میشود تا مطمئن شویم کلید دقیقاً متعلق به همان شخص است.
پ.ن: در پست بعد مراحل عملی رو توضیح میدم با عکس خدمت شما .
#RedDog
@the_blankroom