<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh-Hant-TW">
	<id>https://wiki.taigi.ima.org.tw/w/index.php?action=history&amp;feed=atom&amp;title=Kerberos</id>
	<title>Kerberos - 修訂紀錄</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.taigi.ima.org.tw/w/index.php?action=history&amp;feed=atom&amp;title=Kerberos"/>
	<link rel="alternate" type="text/html" href="https://wiki.taigi.ima.org.tw/w/index.php?title=Kerberos&amp;action=history"/>
	<updated>2026-04-18T05:30:31Z</updated>
	<subtitle>本 wiki 上此頁面的修訂紀錄</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>https://wiki.taigi.ima.org.tw/w/index.php?title=Kerberos&amp;diff=458303&amp;oldid=prev</id>
		<title>TaiwanTonguesApiRobot：​從 JSON 檔案批量匯入</title>
		<link rel="alternate" type="text/html" href="https://wiki.taigi.ima.org.tw/w/index.php?title=Kerberos&amp;diff=458303&amp;oldid=prev"/>
		<updated>2025-08-23T03:59:26Z</updated>

		<summary type="html">&lt;p&gt;從 JSON 檔案批量匯入&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新頁面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Kerberos&amp;#039;&amp;#039;&amp;#039;（/ ˈkərbərəs /）是一種電腦網路授權協定，用來佇非安全網路內底，對個人通信以安全的手段進行身份認證。這个詞閣指麻省理工學院為這个協定開發的一套電腦軟體。軟體的設計採用客戶捀 / 侍服器結構，並且會當進行互相認證，即客戶捀和侍服器捀均會當對方進行身份認證。會當用於防止竊聽、防止重放攻擊、保護資料完整性等場合，是一種應用對稱金鎖體制進行金鎖管理的系統。Kerberos 的擴充產品也使用公開金鎖加密方法進行認證。&lt;br /&gt;
&lt;br /&gt;
當有 N 個人使用這个系統的時陣，為確保在任意兩个人之間進行秘密對話，系統至少儲存有伊佮逐个人的共享金鎖，所需要的上無對談金鎖數為 N 個。&lt;br /&gt;
&lt;br /&gt;
==歷史==&lt;br /&gt;
&lt;br /&gt;
麻省理工學院研發 Kerberos 協定來保護雅典娜工程（Project Athena）提供的網路侍服器。這个協定以希臘神話中的人物 Kerberos（抑是講 Cerberus）號名，伊咧希臘神話中是 Hades 的一條歹猛的三頭保衛神犬。這馬該協定存在一寡版本，版本一爿三攏干焦麻省理工內部發行。&lt;br /&gt;
&lt;br /&gt;
Kerberos 版本四的主要設計者 Steve Miller 和 Clifford Neuman，佇一九八空年代尾期發佈這个版本。這个版本主要針對雅典娜工程。版本五由 John Kohl 和 Clifford Neuman 設計的，佇咧一九九三年作為 RFC 一千五百十頒布（佇二空空五年由 RFC 四千一百二十取代）， 目的是佇咧克服版本四的局限性佮安全問題。&lt;br /&gt;
&lt;br /&gt;
麻省理工佇咧作權允准的狀況之下，來製造一个 Kerberos 的免錢實現工具，這種情形類似 BSD。佇二空空七年，麻省理工組成一个 Kerberos 協會，以此推動 Kerberos 的繼續發展。&lt;br /&gt;
&lt;br /&gt;
因為使用資料加密標準（DES）加密演算法（用五十六 bit 金鎖）， 美國出口管制當局共 Kerberos 歸類做軍需品，並禁止其出口。一个非美國設計的 Kerberos 版本四的實現工具 KTH-KRB 由瑞典皇家工學院研製，伊予這套系統佇美國更加改密碼出口管理條例進前（大約是佇二空空年）， 佇美國境外就會當使用。瑞典的實現工具是一个叫做 eBones 的版本，而且 eBones 對麻省理工對外發行的所在 Kerberos 版本四的修補程式九的 Bones（跳過加密公式佮對𪜶的函式呼叫）。 遮一定程度決定 Kerberos 是按怎無予人叫做 eBones 版。Kerberos 版本五的實現工具，Heimdal，基本上嘛是由發佈 KTH-KRB 的仝一組人發佈。&lt;br /&gt;
&lt;br /&gt;
佇二空空五年，網際網路工程任務組（IETF）Kerberos 工作小組更新矣規範，更新包括：&lt;br /&gt;
&lt;br /&gt;
* &amp;quot; Kerberos 五加密佮校驗佮規範 &amp;quot;（RFC 三千九百六十一）。&lt;br /&gt;
* &amp;quot; Kerberos 五進階加密標準（AES）加密 &amp;quot;（RFC 三千九百六十二）。&lt;br /&gt;
* &amp;quot; Kerberos 網路認證服務（版本五）&amp;quot;（RFC 四千二十）— Kerberos 版本的五規範的新版本。這个版本廢棄早前的 RFC 一千五百十，用較幼化佮明確的解說說說明協定的一寡細節佮使用方法。&lt;br /&gt;
* &amp;quot; Kerberos 五通用安全服務應用程式介面（GSS-API）機制：版本二 &amp;quot;（RFC 四千一百二十一）— 通用安全服務應用程式介面（GSS-API）規範的新版本。&lt;br /&gt;
&lt;br /&gt;
Windows 兩千和後壁的作業系統使用 Kerberos 為其預設認證方法。RFC 三千兩百四十四 &amp;quot; 微軟 Windows 兩千 Kerberos 變閣較密碼佮設定密碼協定 &amp;quot; 記錄整理一寡軟軟著 Kerberos 協定軟體套件的添加。RFC 四千七百五十七記錄整理微軟著 RC 四密碼的使用。雖然微軟仔使用 Kerberos 協定，煞並無用麻省理工的軟體。&lt;br /&gt;
&lt;br /&gt;
蘋果的 Mac OS X 嘛使用 Kerberos 的客戶佮侍服器版本。Red Hat Enterprise Linux 四佮後續的作業系統使用 Kerberos 的客戶佮侍服器版本。&lt;br /&gt;
&lt;br /&gt;
==基本是咧講==&lt;br /&gt;
&lt;br /&gt;
Kerberos 使用 Needham-Schroeder 協定做伊的基礎。伊使用一个由兩个獨立的邏輯的部份：認證侍服器佮票據授權侍服器組成的 &amp;quot; 可信賴的第三方 &amp;quot;，術語叫金鎖分發中心（KDC）。 Kerberos 工作咧用證明使用者身份的 &amp;quot; 票據 &amp;quot; 的基礎頂面。&lt;br /&gt;
&lt;br /&gt;
KDC 持有一个金鎖資料庫；逐个網路實體—— 無論是客戶猶是侍服器—— 共享一套干焦伊家己佮 KDC 知影的金鎖。金鎖的內容用佇證明實體的身份。對兩个實體間的通批，KDC 產生一个對談金鎖，用來加密𪜶之間的互相資訊。&lt;br /&gt;
&lt;br /&gt;
==協定內容==&lt;br /&gt;
&lt;br /&gt;
協定的安全主要依賴賴參加者對時間的鬆散仝步佮短周期的號做 Kerberos 票據的認證聲明。&lt;br /&gt;
下跤是對這个協定的一个簡化描述，將使用以下縮寫：&lt;br /&gt;
&lt;br /&gt;
* AS（Authentication Server）=認證侍服器&lt;br /&gt;
* KDC（Key Distribution Center）=金鎖分發中心&lt;br /&gt;
* TGT（Ticket Granting Ticket）=票據授權票據，票據的票據&lt;br /&gt;
* TGS（Ticket Granting Server）=票據授權侍服器&lt;br /&gt;
* SS（Service Server）=特定服務提供捀客戶捀使用者傳送家己的使用者名稱到 KDC 侍服器之向 AS 服務進行認證。KDC 侍服器會生做相應的 TGT 票據，拍上時間鑿，佇本地資料庫當中走揣應該使用者的密碼，閣用這个密碼著 TGT 進行加密，將結果發還予客戶捀使用者。該操作干焦佇使用者登入抑是 kinit 申請的時陣來進行。&lt;br /&gt;
客戶捀收著該資訊，閣使用家己的密碼來進行解密了後，就用會著 TGT 票據矣。這乎 TGT 會佇一段時間了後失效，嘛有一寡程式（session manager）會當佇使用者登陸期間進行自動更新。&lt;br /&gt;
做客戶捀使用者需要使用一寡特定服務（Kerberos 術語內底用「principal」表示）時，該客戶捀就傳送 TGT 到 KDC 侍服器內底 TGS 服務。做該使用者的 TGT 驗證通過而且其有權存取所申請的服務的時陣，TGS 服務會生做一个愛服務所對應的 ticket 和 session key，閣有行還予客戶捀。客戶捀共服務請求佮該 ticket 做伙傳送予相應的侍服器捀。具體的流程請看下跤的描述。&lt;br /&gt;
&lt;br /&gt;
其在網路通訊協定中屬於顯示層。&lt;br /&gt;
&lt;br /&gt;
簡單講，使用者先用共享金鎖對某認證侍服器得著一个身分證明。隨後，使用者使用這个身份證明和 SS 通批，攏無使用共享金鎖。&lt;br /&gt;
&lt;br /&gt;
==具體的流程==&lt;br /&gt;
&lt;br /&gt;
（ 注意：現流程使用矣嘿稱加密；此流程發生在某&amp;#039;&amp;#039;&amp;#039;一个&amp;#039;&amp;#039;&amp;#039;Kerberos&amp;#039;&amp;#039;&amp;#039;領域&amp;#039;&amp;#039;&amp;#039;中；小寫字母 c , d , e , g 是客戶捀發出的訊息，大寫字母 A , B , E , F , H 是各个侍服器發轉來的訊息。）&lt;br /&gt;
&lt;br /&gt;
首先，使用者使用客戶捀（使用者家己的機器）上的程式進行登入：&lt;br /&gt;
&lt;br /&gt;
一 . 使用者輸入使用者 ID 佮密碼到客戶捀。&lt;br /&gt;
二 . 客戶端程式執行一个單向函式（大多數攏是雜鬥）共密碼轉換做金鎖，這就是客戶捀（使用者）的「使用者金鎖」( user&amp;#039;s secret key )。&lt;br /&gt;
&lt;br /&gt;
隨後，&amp;#039;&amp;#039;&amp;#039;客戶捀認證&amp;#039;&amp;#039;&amp;#039;（客戶捀 ( Client ) 對認證侍服器 ( AS ) 取得票據授權票據（TGT））：&lt;br /&gt;
&lt;br /&gt;
一 . 客戶捀向 AS 傳送一條明文訊息，申請基於這个使用者所應該有的服務，比如講「使用者 Sunny 欲請求服務」（Sunny 是使用者 ID）。（注意：使用者不向 AS 傳送「使用者金鎖」，也無傳送密碼）該 AS 會當對本地的資料庫內底查詢著愛申請使用者的密碼，並通過相仝途徑轉換做相仝的「使用者金鎖」。&lt;br /&gt;
二 . AS 檢查該使用者 ID 敢是佇本地的資料庫內底，若使用者存在倒轉來二條訊息：&lt;br /&gt;
* 訊息 A：&amp;#039;&amp;#039;&amp;#039;客戶捀 / TGS 對談金鎖 ( Client / TGS Session Key )&amp;#039;&amp;#039;&amp;#039;（該對講金鎖用佇咧將來客戶捀佮 TGS 的通批（對談）上）， 通過「使用者金鎖」進行加密&lt;br /&gt;
* 訊息 B：&amp;#039;&amp;#039;&amp;#039;TGT&amp;#039;&amp;#039;&amp;#039;（TGT 包括講：訊息 A 中的「客戶捀 / TGS 對談金鎖」，使用者 ID，使用者網址，TGT 有效期）， 通過「TGS 金鎖」( TGS&amp;#039;s secret key ) 進行加密三 . 一旦客戶捀收著訊息 A 佮訊息 B，客戶捀首先來試看覓家己的「使用者金鎖」解密訊息 A，若使用者輸入的密碼佮 AS 資料庫內底的密碼無符，是袂當成功解密訊息 A。輸入正確的密碼並通過隨之生成的「使用者金鎖」才有法度解密訊息 A，對會到「客戶捀 / TGS 對談金鎖」。（注意：客戶捀袂當解密訊息 B，因為乎 B 是用「TGS 金鎖」加密的）。 有矣「客戶捀 / TGS 對談金鎖」，客戶捀就足好的 TGS 進行認證矣。&lt;br /&gt;
&lt;br /&gt;
然後，&amp;#039;&amp;#039;&amp;#039;服務授權&amp;#039;&amp;#039;&amp;#039;（客戶捀對 TGS 取得票據 ( client-to-server ticket )）：&lt;br /&gt;
&lt;br /&gt;
一 . 當客戶捀需要申請特定的服務的時陣，其向 TGS 傳送以下二條訊息：&lt;br /&gt;
* 訊息 c：即訊息 B 的內容（「 TGS 金鎖」加密了後的時陣 TGT）， 閣想欲取得的服務的服務 ID（注意：毋是使用者 ID）&lt;br /&gt;
* 訊息 d：&amp;#039;&amp;#039;&amp;#039;認證符 ( Authenticator )&amp;#039;&amp;#039;&amp;#039;（Authenticator 包括講：使用者 ID，時間抽）， 通過「客戶捀 / TGS 對談金鎖」進行加密二 . 收著訊息 c 佮訊息 d 後，TGS 第一呢先檢查 KDC 資料庫內底敢有存在需要的服務，走揣著了後，TGS 用家己的「TGS 金鎖」解密訊息 c 中的訊息 B（也就是講 TGT）， 對進前生的「客戶捀 / TGS 對談金鎖」。 TGS 閣用這个對談金鎖解密訊息 d 得著包含使用者 ID 佮時間咧揬的 Authenticator，並著 TGT 和 Authenticator 進行驗證，驗證通過了後倒轉來二條訊息：&lt;br /&gt;
* 訊息 E：&amp;#039;&amp;#039;&amp;#039;客戶捀-侍服器票據 ( client-to-server ticket )&amp;#039;&amp;#039;&amp;#039;（該票據包括：「 客戶捀 / SS 對談金鎖」( Client / Server Session Key）， 使用者 ID，使用者網址，有效期）， 提供該服務的「侍服器金鎖」( service&amp;#039;s secret key )&amp;#039;&amp;#039;&amp;#039;進行加密&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* 訊息 F：&amp;#039;&amp;#039;&amp;#039;客戶捀 / SS 對談金鎖 ( Client / Server Session Key )&amp;#039;&amp;#039;&amp;#039;（該對講金鎖用佇咧將來客戶捀佮 SS 的通批（對談）上）， 通過「客戶捀 / TGS 對談金鎖」進行加密三 . 客戶捀收著遮的訊息了後，用「客戶捀 / TGS 對談金鎖」解密訊息 F，得著「客戶捀 / SS 對談金鎖」。（注意：客戶捀袂當解密訊息 E，因為乎 E 是用「侍服器金鎖」加密的）。&lt;br /&gt;
&lt;br /&gt;
最後咧，&amp;#039;&amp;#039;&amp;#039;服務請求&amp;#039;&amp;#039;&amp;#039;（客戶捀對 SS 取得服務）：&lt;br /&gt;
&lt;br /&gt;
一 . 得著「客戶捀 / SS 對談金鎖」了後，客戶捀就會使使用侍服器提供的服務矣。客戶捀向指定 SS 發出二條訊息：&lt;br /&gt;
* 訊息 e：即上一步內底的訊息 E「客戶捀-侍服器票據」，已經通過「侍服器金鎖」進行加密&lt;br /&gt;
* 訊息 g：新的&amp;#039;&amp;#039;&amp;#039;Authenticator&amp;#039;&amp;#039;&amp;#039;（包括講：使用者 ID，時間抽）， 通過「客戶捀 / SS 對談金鎖」進行加密二 . SS 用家己的「侍服器金鎖」解密訊息 e 對會到 TGS 提供的「客戶捀 / SS 對談金鎖」。 閣用這个對談金鎖解密訊息 g 得著 Authenticator，（仝 TGS 仝款）對票據和 Authenticator 進行驗證，驗證通過則倒轉來一條訊息（確認函：確證的身份真實，樂於提供服務）：&lt;br /&gt;
* 訊息 H：&amp;#039;&amp;#039;&amp;#039;新時間咧揬&amp;#039;&amp;#039;&amp;#039;（新時間咧揬是：客戶捀傳送的時間內底揬加一，v 已經取消這一做法）， 通過「客戶捀 / SS 對談金鎖」進行加密三 . 客戶捀通過「客戶捀 / SS 對談金鎖」解密訊息 H，得著新時間揬並驗證其敢有正確。驗證通過的話是客戶捀會當信賴 SS，並向 SS 傳送的服務請求。&lt;br /&gt;
四 . SS 向客戶捀提供相應的服務。&lt;br /&gt;
&lt;br /&gt;
==缺陷==* 單點故障：伊需要中心侍服器的繼續回應。當 Kerberos 服務延機時，就無人會當連接著侍服器。這缺陷會當通過使用複合 Kerberos 侍服器佮缺失認證的機制彌補。&lt;br /&gt;
* Kerberos 要求參與通信的主機的時鐘仝步。票據具有一定有效期，所以，若主機的時鐘佮 Kerberos 侍服器的時鐘無仝步，認證會失敗。預設定要求時鐘的時間相差無超過十分鐘。咱佇實踐中，通常用網路時間協定後台程式來保持主機時鐘仝步。&lt;br /&gt;
* 管理協定並無標準化，佇遮侍服器實在工具有一寡差別。RFC 三千兩百四十四描述了密碼更改。&lt;br /&gt;
* 因為所有使用者使用的金鎖攏儲存佇咧中心侍服器內底，危及侍服器的安全行為將危及所有使用者的金鎖。&lt;br /&gt;
* 一个危險客戶機將危及使用者密碼。&lt;br /&gt;
&lt;br /&gt;
==參考資料==&lt;br /&gt;
&lt;br /&gt;
==延伸閱讀==&lt;br /&gt;
&lt;br /&gt;
==外部連結==&lt;br /&gt;
&lt;br /&gt;
* Kerberos Consortium&lt;br /&gt;
* Kerberos page at MIT website&lt;br /&gt;
* Kerberos Working Group at IETF website&lt;br /&gt;
* Kerberos Sequence Diagram&lt;br /&gt;
&lt;br /&gt;
[[分類: 待校正]]&lt;/div&gt;</summary>
		<author><name>TaiwanTonguesApiRobot</name></author>
	</entry>
</feed>