زیرساخت کلید عمومی کیست؟ توضیح بده.
زیرساخت کلید عمومی (PKI) مجموعه‌ای متشکل از سخت‌افزار، نرم‌افزار، افراد، سیاست‌ها و دستورالعمل‌های مورد نیاز برای مدیریت، توزیع، استفاده، ذخیره و ابطال گواهی‌های دیجیتال می‌باشد.در رمزنگاری، PKI مقدمه‌ای است برای الصاق کلید عمومی به هویت کاربر، که با استفاده از یک مرکز صدور گواهی (CA) انجام می‌گیرد. هویت کاربر باید برای هر CA یکتا باشد. نسبت دادن کلید عمومی به هویت افراد مطابق با یک روند ثبت و صدور انجام می‌شود، که بر اساس سطح تضمین لازم ممکن است توسط یک نرم‌افزار در CA انجام شود یا با نظارت انسان باشد. مسئولیت تضمین درستی در PKI بر عهدهٔ مرکز ثبت نام (RA) است. مرکز ثبت نام، اطمینان می‌دهد که کلید عمومی به گونه ای به فرد مورد نظر الصاق شده‌است که عدم انکار را تضمین می‌کند.بررسی اجمالی.رمزنگاری کلید عمومی تکنیک پنهانی است، تا کاربران را قادر به ارتباط امن بر روی یک شبکهٔ عمومی ناامن سازد و به‌طور قابل اعتماد، هویت کاربر را با استفاده از امضای دیجیتال بررسی کند.زیرساخت کلید عمومی (PKI)، یک سیستم برای ایجاد، ذخیره‌سازی و توزیع امضاهای دیجیتال می‌باشد که به منظور بررسی یک کلید عمومی منحصربه‌فرد متعلق به نهاد خاص مورد استفاده قرار می‌گیرد. زیرساخت کلید عمومی، گواهی‌های دیجیتال را که حاصل نگاشت کلیدهای عمومی به هویت افراد است، ایجاد کرده و این گواهی‌ها را در یک مخزن مرکزی، به‌طور امن نگهداری می‌کند و اگر لازم باشد، آنها را باطل می‌کند.زیرساخت کلید عمومی از موارد زیر تشکیل شده‌است:روش‌های تأیید گواهی.به‌طور کلی، سه رویکرد برای جلب اعتماد وجود دارد: مراکز صدور گواهی (CAها)، وب سایت‌های مورد اعتماد (WoT) و زیرساخت کلید عمومی ساده (SPKI).مراکز صدور گواهی.وظیفهٔ اصلی مرکز صدور گواهی امضای دیجیتالی کلید عمومی مربوط به هر کاربر و انتشار آن است. این کار با استفاده از کلید خصوصی مرکز صدور گواهی انجام می‌شود بنابراین اعتماد به کلید کاربر، متکی به اعتماد به درستی کلید مرکز صدور گواهی است. ساز و کاری که کلیدها را به کاربران الصاق می‌کند، مرکز ثبت نام¬ (RA) نامیده می‌شود که ممکن است از CA جدا باشد یا نباشد. الصاق کلید به کاربر بسته به سطح اطمینان لازم در آن، توسط نرم‌افزار یا تحت نظارت انسان صورت می‌پذیرد.ممکن است برای مرکز صدور گواهی (CA) عبارت طرف سوم قابل اعتماد (TTP) نیز بکار رود. علاوه بر این، زیرساخت کلید عمومی اغلب خود به عنوان مترادف برای پیاده‌سازی مرکز صدور گواهی استفاده می‌شود.گواهی‌های موقت و شناسایی یگانه.این نگرش شامل سروری است که به عنوان یک مرکز صدور گواهی آنلاین، درون یک سیستم شناسایی یگانه عمل می‌کند. یک سرور شناسایی یگانه، گواهی‌های دیجیتال را برای کاربران سیستم صادر خواهد کرد، اگرچه هرگز آنها را ذخیره نخواهد کرد. کاربران می‌توانند برنامه‌ها و غیره را با گواهی‌های موقت اجرا کنند. استفاده از این راهکار به‌طور متنوع در گواهی‌های مبتنی بر x.509 متداول است.وب (شبکه) اعتماد.مقالهٔ اصلی: Web of trustرویکرد جایگزین برای مسألهٔ احراز هویت عمومی اطلاعات کلید عمومی، طرح وب اعتماد است که این طرح از گواهی‌های امضا شده و تصدیق شخص سوم استفاده می‌کند. «وب اعتماد» یا Web of Trust (WoT) را نباید با مفهوم رایج وبگاه یا وب سایت اشتباه کرد. وب اعتماد در حقیقت شبکه معنائی در هم تنیده‌ای است از افراد مختلفی که هرکدام به نسبتهای مختلف به سایر افراد موجود در این شبکه و اصالت کلید عمومی‌اشان اعتماد دارد و آن را با استفاده از امضای دیجیتال خود بر روی کلید عمومی آنها نشان می‌دهد. کلید عمومی که توسط یک نفر از اعضای وب اعتماد امضا شده‌است را اصطلاحاً «گواهی» یا Certificate می‌نامند. واژهٔ منحصربه‌فرد «وب اعتماد» دلالت بر وجود یک وب اعتماد منحصربه‌فرد، یا نقطهٔ مشترک اطمینان ندارد، بلکه منظور یک وب اعتماد از شمار زیادی وب اعتماد گسسته و بالقوه می‌باشد. نمونه‌هایی از پیاده‌سازی این رویکرد، PGP (Pretty Good Privacy) و GnuPG (از جمله پیاده‌سازی‌های آزاد استاندارد OpenPGP، که خود حاوی ویژگی‌های استاندارد شدهٔ PGP است) می‌باشد. از آن جایی که PGP و پیاده‌سازی‌های آن به منظور انتشار اطلاعات کلید عمومی، اجازهٔ استفاده از امضاهای دیجیتال را برای پست الکترونیکی خود می‌دهند، طبعاً، ایجاد یک نسخه از وب اعتماد آسان است.یکی از مزایای وب اعتماد، از جمله پیاده‌سازی PGP این است که می‌تواند با تمام بخش‌های داخل دامنه تعامل داشته باشد (از جمله، مرکز صدور گواهی داخلی در یک شرکت)، در حقیقت برای ارتباط با مرکز صدور گواهی داخلی یک شرکت از آن به عنوان یک معرف مورد اعتماد استفاده می‌شود. اگر «وب اعتماد» کاملاً مطمئن باشد، به دلیل ماهیت وب اعتماد، اعتماد به یک گواهی، اطمینان به تمام گواهی‌های موجود در آن وب را باعث می‌شود. زیرساخت کلید عمومی دارای ارزشی به اندازهٔ استانداردها و روش‌هایی است که صدور گواهی‌ها را کنترل می‌کند و شامل PGP یا یک وب اعتماد تأسیس شده می‌باشد که می‌تواند به‌طور قابل توجه، قابلیت اطمینان در پیاده‌سازی حوزهٔ PKI یا سرمایه‌گذاری در آن را کاهش دهد.مفهوم وب مورد اعتماد اولین بار توسط خالق PGP, Phil Zimmermann در سال ۱۹۹۲ در راهنمای PGP نسخهٔ ۲ به کار برده شد.زیرساخت کلید عمومی ساده.گزینهٔ دیگر که با احراز هویت عمومی اطلاعات کلید عمومی سرو کار ندارد، زیر ساخت کلید عمومی ساده (SPKI) می‌باشد که حاصل ۳ تلاش مستقل برای غلبه بر پیچیدگی‌های X.509 و وب مورد اعتماد PGP می‌باشد. از آن جایی که کلید، تنها چیز قابل اعتماد به جای شخص می‌باشد، SPKI کاربران را با افراد وابسته نمی‌کند. SPKI از هیچ مفهوم اعتماد و اطمینان استفاده نمی‌کند، به طوری که تصدیق کننده، صادرکننده هم هست. این موضوع، در اصطلاحات SPKI «حلقهٔ احراز هویت» نامیده می‌شود، که در آن احراز هویت از طراحی اش جدایی ناپذیر است.تاریخچه.در سال ۱۹۷۶ افشاء عمومی الگوریتم‌های کلید نامتقارن و تبادل کلید امن توسط Diffe, Hellman, Rivest, Shamir، و Adleman ارتباطات امن را کاملاً تغییر داد. همراه با گسترش بیش تر ارتباطات الکترونیکی دیجیتال دارای سرعت بالا (اینترنت و ماقبل آن)، نیاز به روش‌هایی که در آن کاربران می‌توانستند به‌طور ایمن با همدیگر ارتباط برقرار کنند، مشهود شد، به طوری که نتیجهٔ آن، پیدا کردن روش‌هایی بود که کاربران می‌توانستند از کسی که با او تعامل دارند، اطمینان حاصل کنند.پروتکل‌های رمز نگاری مناسب ابداع شدند و در چارچوب اصول رمزنگاری جدید با توانایی بهره بری مؤثر تحلیل شدند. با ابداع شبکهٔ جهانی وب و گسترش سریع آن، نیاز به احراز هویت و ارتباط امن روز به روز بیش تر شد. دلایل تجاری به تنهایی کافی بودند. (برای مثال، تجارت الکترونیکی و دستیابی آنلاین به پایگاه داده‌های اختصاصی از طریق مرورگرهای وب و غیره). Taher Elgamal و دیگران در مرورگر Netscape پروتکل SSL را توسعه دادند. (https در URLهای وب)؛ آن شامل تشکیلات ایجاد کلید و احراز هویت سرور (پیش از v3 و فقط یک طرفه) و مانند آن بود. به همین ترتیب، ساختار PKI برای سایت‌ها و کاربران وبی که خواستار ارتباطات ایمن بودند، ایجاد شد.فروشندگان و کارآفرینان، متوجه احتمال یک بازار بزرگ و شرکت‌های تازه به کار (یا پروژه‌های جدید در شرکت‌های موجود) شدند و به منظور تحریک برای به رسمیت شناختن قانونی و حفاظت از مسئولیت، شروع به کار کردند. کانون وکلای آمریکا، پروژهٔ فناوری تحلیلی گسترده‌ای در رابطه با برخی از جنبه‌های قانونی عملیات PKI منتشر کرد (به رهنمودهای امضای دیجیتال ABA نگاهی بیندازید) و در مدت کوتاهی پس از آن، چندین ایالت آمریکا (Utah برای اولین بار، در سال ۱۹۹۵) و دیگر مقامات قضایی سراسر جهان، شروع به تصویب قوانین و اتخاذ مقررات کردند. گروه‌های مصرف‌کننده و دیگران، سوالاتشان را در رابطه با حریم خصوصی، دسترسی و ملاحظات مسولیتی -با توجه به این که در برخی از حوزه‌های قضایی بیش تر مورد توجه قرار می‌گرفت - افزایش دادند.قوانین تصویب شده و مقررات مصوب متفاوت است و مشکلات فنی و عملیاتی در تبدیل طرح PKI به بهره‌برداری تجاری وجود دارد و پیشرفت‌های، به مراتب کندتر از تصور پیشگامان این امر بوده‌است.در سال‌های اولیهٔ قرن ۲۱، مهندسی رمز نگاری اساسی، به وضوح برای استقرار به‌طور صحیح آسان نبود. روش‌های عامل (دستی یا اتوماتیک) برای طراحی به‌طور صحیح آسان نبودند (یا حتی اگر خوب طراحی شده بودند، برای اجرا به‌طور کامل، نیازمند مهندسی بودند). استانداردهای موجود کافی نبودند.فروشندگان PKI بازاری برای خود پیدا کردند اما کاملاً همان بازاری که در رؤیای خود در اواسط دههٔ ۹۰ می‌دیدند، نبود و آهسته‌تر و از روش‌های متفاوت نسبت به آنچه که پیش‌بینی می‌شد، رشد می‌کرد. زیرساخت‌های کلید عمومی، برخی از مشکلاتی را که با آن مواجه بودند، حل نکرده‌اند و فروشندگان بزرگ از کسب و کار آن بیرون رفته‌اند یا توسط دیگران سهام آن‌ها خریداری شده‌است. زیر ساخت کلید عمومی تا به حال بیش‌ترین موفقیت را در پیاده‌سازی‌های دولتی به دست آورده‌است. بزرگ‌ترین پیاده‌سازی PKI تا این تاریخ، مربوط به زیرساخت کلید عمومی آژانس سیستم‌های اطلاعاتی دفاع (DISA) برای برنامهٔ دسترسی مشترک به کارت‌ها می‌باشد.مثال‌های کاربردی.زیر ساخت‌های کلید عمومی یک نوع از هر یک از فروشندگان مختلف، استفاده‌های بسیاری دارند، از جمله فراهم کردن کلیدهای عمومی و الصاق آن‌ها به هویت کاربران که برای موارد زیر استفاده می‌شوند:چالش‌ها و محدودیت‌های PKI.برخی از چالش‌های زیرساخت کلید عمومی PKI عبارتند از:آینده زیرساخت کلید عمومی.با توجه به رشد روزافزون تهدیدات امنیتی و نیاز به راهکارهای جدیدتر، همواره تکامل PKI و فناوری‌های جدید مرتبط با آن باید مدنظر باشد: