Kerberos کربروس چیست؟
چندین نسخه از این پروتکل وجود دارد، نسخههای ۳–۱ تنها در داخل MIT رخ داده است. استیو میلر و کلیفورد نیومن، طراحان اولیه از نسخه 4 Kerberos، نسخه منتشر شده دراواخردهه ئ 1980، هر چند که آن را در درجه اول برای پروژه آتنا هدف قرار داده بودند.نسخه ۵، طراحی شده توسط جان کول و کلیفورد نیومن، به عنوان RFC 1510 در سال ۱۹۹۳ ظاهر شد . (منسوخ شده توسط RFC 4120 در سال ۲۰۰۵ ساخته شدهاست)، با هدف غلبه بر محدودیتها و مشکلات امنیتی از نسخه۴. MIT یک پیادهسازی از Kerberosهای آزادانه در دسترس ایجاد میکند، تحت مجوز کپی رایت مشابه که مورداستفاده برایBSD است. در سال ۲۰۰۷، MIT تشکیل کنسرسیوم از Kerberosها را دادکه برای ترویج و توسعه آن ادامه داده شد. حامیان مالی مؤسس عبارتند از فروشندگان مانند اوراکل، اپل، گوگل، مایکروسافت، شرکتCentrify و شرکت TeamF1، و مؤسسات آموزشی مانند مؤسسه سلطنتی فناوری در سوئد، دانشگاه استنفورد، MIT، و فروشندگان مانند CyberSafe نسخههای تجاری پشتیبانی را ارائه میدهند. در ایالات متحده Kerberosها را به عنوان فناوریهای نظامی کمکی طبقهبندی و صادرات آنها ممنوع اعلام شده چرا که آن را بااستفاده ازالگوریتم DES (رمز نگاری با کلیدهای ۵۶ بیتی) کردهاند. غیر از پیادهسازی kerberos4، KTH-KRB که در مؤسسه سلطنتی فناوری در سوئد ساخته شده از سیستمهای موجود در خارج از ایالات متحده قبل از تغییر مقررات ایالات متحده، صادرات خود را رمزنگاری کرده و (حدود ۲۰۰۰) توسعه یافتهاست. اجرای سوئدی در یک نسخه محدود به نام eBones بود. eBones بر مبنای انتشار استخوان MIT (ساده شده از هر دو توابع رمزنگاری و تماس آنها) بر اساس نسخه از Kerberos 4 پچ سطح ۹ صادر شده بود. در سال ۲۰۰۵، کار گروه نیروی ضربت مهندسی اینترنت به روز رسانی مشخصات Kerberos است.
نحوه ئ کار Kerberos
كاربران تيكت يا بليط هايي را ازمركز توزيع كربروس (KDC) دريافت مي كنند و پس از آن هنگامي كه ارتباط با شبكه فراهم شد كاربران اين بليط ها را به سرور ارائه مي كنند و در صورت تاييد مجوز ورود به شبكه فراهم مي شود. بليط هاي كربروس اعتبار كاربران شبكه را نشان مي دهند.
قبل از اين كه ارتباط امني در شبكه برقرار شود پروتكل كربروس يك مكانزيم براي تاييد دو طرفه اطلاعات بين موجوديت هاي شبكه فراهم مي كنند. اگرچه اين ارتباط امن بين سرورها نيز مي تواند به وجود آيد اما بر اساس اين مستندات اين دو موجوديت كاربر و سرور ناميده مي شوند. در پروتکل امنیتی کربروس كاربر و سرور به عنوان اصول امنيتي در نظر گرفته مي شوند.
پروتكل كربروس فرض مي كند كه معادلات بين كاربر و Server بر روي يك شبكه محافظت نشده قرار دارد به گونه اي كه بيشتر كاربران و بسياري از سرورها از امنيت كافي برخوردار نيستند و بسته هايي كه از طريق شبكه در حال جابجايي هستند مي توانند نظارت و دستكاري شوند. محيط فرضي پروتکل امنیتی کربروس مانند اينترنت امروزي است كه هكرها مي توانند در نقشسرورها و يا كاربران ظاهر شوند و به راحتي ارتباطات بين سرور و كاربر را مورد نظارت و دستكاري قرار دهند.
روش كار در الگوریتم کربروس به اين صورت است كه وقتی كاربري به یک شبکه Kerberos وارد می شود ، یک پیغام درخواست به سرور مربوط به نام و کلمه عبور حساب خود می فرستد. آن سرور با یک TGT که بر مبنای کلمه عبور سرویس گیرنده رمزنگاری شده است جواب می دهد. محض دریافت TGT از کاربر درخواست می شود که کلمه عبور خود را وارد کند و سپس از آن کلمه عبور برای رمزگشایی TGT استفاده می کند. چون در واقع فقط یک کاربر باید دارای کلمه عبور درست باشد ، این روند به عنوان احراز هویت عمل می کند. اگر رمزگشایی TGT با موفقیت انجام شود ، كاربر می تواند یک درخواست ، حاوی یک کپی رمزنگاری شده از TGT به یکسرور TGS ، که الزاماً همان سرور احراز هویت اول نمی باشد ، بفرستد و به منابع شبکه دسترسی پیدا کند. سرور TGS بعد از رمزگشایی TGT و تشخیص وضعیت کاربر یک بلیط سرور (Server Ticket) ایجاد می کند و به براي او می فرستد. این بلیط ، كاربر را قادر می سازد برای مدت زمان محدودی به یک سرور مشخص دسترسی داشته باشد. این بلیط همچنین حاوی یک کلید نشست (Session key) می باشد که كاربر و سرور از آن می توانند برای رمزنگاری داده های در حال انتقال بین خود استفاده کنند. كاربر در صورت نیاز به یک منبع ، بلیط سرور را به آن سرور می فرستد. سرور بعد از رمزگشایی آن بلیط ، امکان دستیابی به منبع مورد نظر را فراهم مي كند.