Appendix A. ASN.1 Module (ASN.1モジュール)
Appendix A. ASN.1 Module (ASN.1モジュール)
この付録は, Kerberosバージョン5プロトコルの完全なASN.1モジュール定義を提供します。このモジュールには, プロトコルで使用されるすべてのメッセージタイプとデータ構造が含まれています。
モジュール定義
KerberosV5Spec2 {
iso(1) identified-organization(3) dod(6) internet(1)
security(5) kerberosV5(2) modules(4) krb5spec2(2)
}
DEFINITIONS EXPLICIT TAGS ::= BEGIN
-- OID arc for KerberosV5
--
-- This OID may be used to identify Kerberos protocol messages
-- encapsulated in other protocols.
--
-- This OID also designates the OID arc for KerberosV5-related OIDs.
--
-- NOTE: RFC 1510 had an incorrect value (5) for "dod" in its OID.
id-krb5 OBJECT IDENTIFIER ::= {
iso(1) identified-organization(3) dod(6) internet(1)
security(5) kerberosV5(2)
}
基本型定義
このモジュールは以下の基本型を定義します:
- Int32: 32ビット符号付き整数
- UInt32: 32ビット符号なし整数
- Microseconds: マイクロ秒 (0..999999)
- KerberosString: Kerberos文字列 (GeneralString)
- Realm: レルム名
- PrincipalName: プリンシパル名構造
- KerberosTime: タイムスタンプ (GeneralizedTime)
- HostAddress: ネットワークアドレス
- HostAddresses: アドレスのシーケンス
- AuthorizationData: 認可データ
- PA-DATA: 事前認証データ
- KerberosFlags: フラグビット文字列
- EncryptedData: 暗号化されたデータ
- EncryptionKey: 暗号化鍵
- Checksum: チェックサム
チケット関連型
- Ticket: チケット構造
- EncTicketPart: 暗号化されたチケット部分
- TransitedEncoding: 通過レルム情報
メッセージ型
KDC交換メッセージ
- KDC-REQ: KDCへの要求 (AS-REQおよびTGS-REQ)
- KDC-REQ-BODY: KDC要求の本体
- KDC-REP: KDCからの応答 (AS-REPおよびTGS-REP)
- EncKDCRepPart: 暗号化されたKDC応答部分
- AS-REQ: 認証サービス要求
- AS-REP: 認証サービス応答
- TGS-REQ: チケット発行サービス要求
- TGS-REP: チケット発行サービス応答
アプリケーションメッセージ
- AP-REQ: アプリケーション要求
- Authenticator: 認証子
- AP-REP: アプリケーション応答
- EncAPRepPart: 暗号化されたAP-REP部分
- KRB-SAFE: 完全性保護メッセージ
- KRB-SAFE-BODY: KRB-SAFEメッセージ本体
- KRB-PRIV: 暗号化メッセージ
- EncKrbPrivPart: 暗号化されたKRB-PRIV部分
- KRB-CRED: 資格情報転送メッセージ
- EncKrbCredPart: 暗号化されたKRB-CRED部分
- KRB-ERROR: エラーメッセージ
アプリケーションタグ
各メッセージタイプには一意のアプリケーションタグが割り当てられています:
- AS-REQ: 10
- AS-REP: 11
- TGS-REQ: 12
- TGS-REP: 13
- AP-REQ: 14
- AP-REP: 15
- KRB-SAFE: 20
- KRB-PRIV: 21
- KRB-CRED: 22
- KRB-ERROR: 30
エンコーディング規則
すべてのKerberosメッセージは以下のルールに従ってエンコードされます:
- Distinguished Encoding Rules (DER): すべてのメッセージはDERを使用してエンコードされなければなりません (MUST)
- 明示的タグ付け: このモジュールはEXPLICIT TAGSを使用します
- オプションフィールド: オプションフィールドは, 存在しない場合は省略されます
使用上の注意
このASN.1モジュールは:
- Kerberos V5プロトコルの正式な定義です
- 実装者は, 相互運用性を確保するためにこの定義に従うべきです (SHOULD)
- RFC 1510からのいくつかの明確化と修正が含まれています
- 完全なモジュール定義については, RFC 4120のAppendix Aの完全版を参照してください
実装ガイダンス
ASN.1モジュールを実装する際:
- すべての必須フィールドを含める必要があります (MUST)
- オプションフィールドは適切に処理される必要があります (MUST)
- 未知のタグは, 将来の拡張のために無視されるべきです (SHOULD)
- DERエンコーディング規則に厳密に従う必要があります (MUST)
完全なASN.1モジュール定義については, RFC 4120の本文のAppendix Aを参照してください。