Can you summarize the following document?
        
  Kerberos是一種計算機網路認證協議,它允許某實體在非安全網路環境下通訊,向另一個實體以一種安全的方式證明自己的身份。它也指由麻省理工實現此協議,併發布的一套免費軟體。它的設計主要針對客戶-伺服器模型,並提供了一系列互動認證——使用者和伺服器都能驗證對方的身份。Kerberos協議可以保護網路實體免受竊聽和重複攻擊。  Kerberos協議基於對稱密碼學,並需要一個值得信賴的第三方。Kerberos協議的擴充套件可以為認證的某些階段提供公鑰密碼學支援。

  麻省理工學院研發Kerberos協議來保護雅典娜工程(Project Athena)提供的網路伺服器。這個協議以希臘神話中的人物Kerberos(或者Cerberus)命名,他在希臘神話中是Hades的一條凶猛的三頭保衛神犬。目前該協議存在一些版本,版本1-3都只有麻省理工內部發行。  Kerberos版本4的主要設計者Steve Miller和Clifford Neuman,在1980年代後期釋出這個版本。這個版本主要針對雅典娜工程。版本5由John Kohl和Clifford Neuman設計,在1993年作為 RFC 1510 頒佈(在2005年由 RFC 4120 取代),目的在於克服版本4的侷限性和安全問題。  麻省理工在版權許可的情況下,製作一個Kerberos的免費實現工具,這種情況類似於BSD。在2007年,麻省理工組成一個Kerberos協會,以此推動Kerberos的持續發展。  因為使用資料加密標準(DES)加密演算法(用56 bit的金鑰),美國出口管制當局把Kerberos歸類為軍需品,並禁止其出口。一個非美國設計的Kerberos版本4的實現工具KTH-KRB由瑞典皇家工學院研製,它使得這套系統在美國更改密碼出口管理條例前(大約是在2000年),在美國境外就可以使用。瑞典的實現工具基於一個叫做eBones的版本,而eBones基於麻省理工對外發行的基於Kerberos版本4的補丁9的Bones(跳過加密公式和對它們的函式呼叫)。這些在一定程度上決定Kerberos為什麼沒有被叫做eBones版。Kerbberos版本5的實現工具,Heimdal,基本上也是由釋出KTH-KRB的同一組人釋出。  在2005年,網際網路工程任務組(IETF)Kerberos工作小組更新了規範,更新包括:  Windows 2000和後續的作業系統使用Kerberos為其預設認證方法。RFC 3244 "微軟Windows 2000 Kerberos變更密碼與設定密碼協議" 記錄整理一些微軟對Kerberos協議軟體包的新增。RFC 4757 記錄整理微軟對RC4密碼的使用。雖然微軟使用Kerberos協議,卻並沒有用麻省理工的軟體。  蘋果的Mac OS X也使用Kerberos的客戶和伺服器版本。Red Hat Enterprise Linux 4和後續的作業系統使用Kerberos的客戶和伺服器版本。

  Kerberos使用Needham-Schroeder協議作為它的基礎。它使用一個由兩個獨立的邏輯部分:認證伺服器和票據授權伺服器組成的"可信賴的第三方",術語稱為金鑰分發中心(KDC)。Kerberos工作在用於證明使用者身份的"票據"的基礎上。  KDC持有一個金鑰資料庫;每個網路實體——無論是客戶還是伺服器——共享一套只有他自己和KDC知道的金鑰。金鑰的內容用於證明實體的身份。對於兩個實體間的通訊,KDC產生一個會話金鑰,用來加密他們之間的互動資訊。

  協議的安全主要依賴於參加者對時間的鬆散同步和短週期的叫做Kerberos票據的認證宣告。 下面是對這個協議的一個簡化描述,將使用以下縮寫:  客戶端使用者傳送自己的使用者名稱到KDC伺服器以向AS服務進行認證。KDC伺服器會生成相應的TGT票據,打上時間戳,在本地資料庫中查詢該使用者的密碼,並用該密碼對TGT進行加密,將結果發還給客戶端使用者。該操作僅在使用者登入或者kinit申請的時候進行。 客戶端收到該資訊,並使用自己的密碼進行解密之後,就能得到TGT票據了。這個TGT會在一段時間之後失效,也有一些程式(session manager)能在使用者登陸期間進行自動更新。 當客戶端使用者需要使用一些特定服務(Kerberos術語中用"principal"表示)的時候,該客戶端就傳送TGT到KDC伺服器中的TGS服務。當該使用者的TGT驗證通過並且其有權訪問所申請的服務時,TGS服務會生成一個該服務所對應的ticket和session key,併發還給客戶端。客戶端將服務請求與該ticket一併傳送給相應的服務端即可。具體的流程請看下面的描述。  其在網路通訊協定中屬於顯示層。  簡單地說,使用者先用共享金鑰從某認證伺服器得到一個身份證明。隨後,使用者使用這個身份證明與SS通訊,而不使用共享金鑰。

  (注意:此流程使用了對稱加密;此流程發生在某一個Kerberos領域中;小寫字母c,d,e,g是客戶端發出的訊息,大寫字母A,B,E,F,H是各個伺服器發回的訊息。)  首先,使用者使用客戶端(使用者自己的機器)上的程式進行登入:  隨後,客戶端認證(客戶端(Client)從認證伺服器(AS)獲取票據的票據(TGT)):  然後,服務授權(client從TGS獲取票據(client-to-server ticket)):  最後,服務請求(client從SS獲取服務):
Kerberos()是一種計算機網路授權協議,用來在非安全網路中,對個人通訊以安全的手段進行身份認證。這個詞又指麻省理工學院為這個協議開發的一套計算機軟體。軟體設計上採用客戶端/伺服器結構,並且能夠進行相互認證,即客戶端和伺服器端均可對對方進行身份認證。可以用於防止竊聽、防止重放攻擊、保護資料完整性等場合,是一種應用對稱金鑰體制進行金鑰管理的系統。Kerberos的擴充套件產品也使用公開金鑰加密方法進行認證。