دو تا از موانعی که توسعه دهندگان هنگام مهاجرت به HTTPS با آن مواجه می شوند مفاهیم و اصطلاحات هستند. این راهنما یک مرور مختصر از هر دو ارائه می دهد.
خلاصه
- از کلیدهای عمومی/خصوصی برای امضا و رمزگشایی پیام ها بین مرورگر و سرور استفاده می شود.
- یک مرجع گواهی (CA) سازمانی است که نقشه برداری بین کلیدهای عمومی و نام های DNS عمومی (مانند "www.foobar.com") را تضمین می کند.
- درخواست امضای گواهی (CSR) یک فرمت داده ای است که یک کلید عمومی را همراه با برخی فراداده در مورد نهادی که دارای کلید است بسته بندی می کند.
جفت کلید عمومی و خصوصی چیست؟
یک جفت کلید عمومی/خصوصی یک جفت اعداد بسیار بزرگ است که به عنوان کلیدهای رمزگذاری و رمزگشایی استفاده می شود و رابطه ریاضی خاصی با هم دارند. یک سیستم رایج برای جفت کلید، سیستم رمزنگاری RSA است. کلید عمومی برای رمزگذاری پیامها استفاده میشود و پیامها را فقط میتوان با کلید خصوصی مربوطه رمزگشایی کرد. وب سرور شما کلید عمومی خود را در جهان تبلیغ می کند و مشتریان (مانند مرورگرهای وب) از آن برای راه اندازی یک کانال امن به سرور شما استفاده می کنند.
مرجع گواهی چیست؟
مرجع صدور گواهینامه (CA) سازمانی است که نقشه برداری بین کلیدهای عمومی و نام های DNS عمومی (مانند "www.foobar.com") را تضمین می کند. به عنوان مثال، چگونه یک مشتری می تواند بفهمد که آیا یک کلید عمومی خاص، کلید عمومی واقعی برای www.foobar.com است؟ پیش از این، هیچ راهی برای دانستن وجود ندارد. یک CA با استفاده از کلید خصوصی خود برای امضای رمزنگاری کلید عمومی وب سایت، یک کلید خاص را به عنوان کلید واقعی برای یک سایت خاص تضمین می کند. جعل این امضا از نظر محاسباتی غیرممکن است. مرورگرها (و سایر مشتریان) فروشگاههای لنگر اعتماد حاوی کلیدهای عمومی متعلق به CAهای معروف را حفظ میکنند و از این کلیدهای عمومی برای تأیید رمزنگاری امضاهای CA استفاده میکنند.
گواهی X.509 فرمت داده ای است که یک کلید عمومی را همراه با برخی فراداده مربوط به نهادی که دارای کلید است، همراه می کند. در مورد وب، صاحب کلید اپراتور سایت است و ابرداده مهم نام DNS وب سرور است. هنگامی که یک کلاینت به یک وب سرور HTTPS متصل می شود، وب سرور گواهی خود را برای تأیید مشتری ارائه می دهد. کلاینت تأیید میکند که گواهی منقضی نشده است، نام DNS با نام سروری که کلاینت میخواهد به آن متصل شود مطابقت دارد، و اینکه یک CA لنگر اعتماد شناخته شده گواهی را امضا کرده است. در بیشتر موارد، CA ها به طور مستقیم گواهی های وب سرور را امضا نمی کنند. معمولاً، زنجیرهای از گواهیها وجود دارد که یک لنگر اعتماد را به امضاکننده یا امضاکنندگان میانی و در نهایت به گواهی خود سرور وب ( موجود نهایی ) مرتبط میکند.
درخواست امضای گواهی چیست؟
درخواست امضای گواهی (CSR) یک قالب داده ای است که مانند یک گواهی، یک کلید عمومی را با برخی فراداده در مورد نهادی که دارای کلید است، همراه می کند. با این حال، مشتریان CSR ها را تفسیر نمی کنند. CA ها انجام می دهند. هنگامی که به دنبال ضمانت CA برای کلید عمومی سرور وب خود هستید، یک CSR به CA ارسال می کنید. CA اطلاعات موجود در CSR را تأیید می کند و از آن برای تولید یک گواهی استفاده می کند. سپس CA گواهی نهایی را برای شما ارسال می کند و شما آن گواهی (یا به احتمال زیاد، یک زنجیره گواهی) و کلید خصوصی خود را روی سرور وب خود نصب می کنید.