[1]
| API | Application Programming Interface |
| AS | Authentication Server |
| CIM | Common Information Model |
| CIMOM | Common Information Model Object Manager |
| CORBA | Common Object Request Broker Architecture |
| DES | Data Encryption Standard |
| DMTF | Distributed Management Task Force |
| DTD | Document Type Definition |
| EIM | Enterprise Identity Mapping |
| GSS | Generic Security Service |
| HTTP | Hyper Text Transport Protocol |
| IBM | International Business Machines |
| IDL | Interface Definition Language |
| IP | Internet Protocol |
| ISO | International Organization for Standardization |
| KDC | Key Distribution Center |
| LAN | Local Area Network |
| MAC | Message Authentication Code |
| MIC | Message Integrity Check |
| OSI | Open Systems Interconnection |
| PKI | Public Key Infrastructure |
| RFC | Request for Comments |
| RMI | Remote Method Invocation |
| RPC | Remote Procedure Call |
| SPNEGO | Simple and Protected GSS-API Negotiation mechanism |
| SSL | Secure Socket Layer |
| SSO | Single Sign On |
| SSPI | Security Support Provider Interface |
| TCP | Transmission Control Protocol |
| TGS | Ticket Granting Server |
| TGT | Ticket Granting Ticket |
| UML | Unified Modeling Language |
| WBEM | Web Based Enterprise Management |
| XML | Extensible Markup Language |
|
| c | Client |
| s | (Application) Server |
| addr | client's network address |
| Kx | x's secret key |
| Kx,y | session key for x and y |
| {...}Kx | encrypted with x's key |
| Tx,y | x's ticket to use y |
| Ax | Authenticator of x |
|
|
|
|
|
|
|
|
|
| Step | From | To | Message |
| 1. AS_REQ | Client | Authentication Server | c, TGS |
| 2. AS_REP | Authentication Server | Client | {Kc,TGS, {Tc,TGS}KTGS}Kc |
| 3. TGS_REQ | Client | TGS | s, {Tc,TGS}KTGS, {Ac}Kc,TGS |
| 4. TGS_REP | TGS | Client | {{Tc,s}Ks, Kc,s}Kc,TGS |
| 5. Service_REQ | Client | Application Server | {Tc,s}Ks, {Ac}Kc,s |
| Field | Content | Length in Bytes |
| 1 | Session Key | 8 |
| 2 | Service Name = "krbtgt" | 6 |
| 3 | Instance | variable String |
| 4 | Realm | variable String |
| 5 | Ticket Lifetime | 1 |
| 6 | Version Number | 1 |
| 7 | Length of Encrypted Ticket Block | 1 |
| 8 | Encrypted Ticket Block | 1 |
| 9 | Timestamp | 4 |
| Function | Usage |
| gss_acquire_cred | acquire credentials before use |
| gss_release_cred | release credentials after use |
| gss_inquire_cred | obtain information about credentials |
| gss_add_cred | construct credentials incrementally |
| gss_inquire_cred_by_mech | display per-mechanism credential information |
| Function | Usage |
| gss_init_sec_context | initiate outbound security context |
| gss_accept_sec_context | accept inbound security context |
| gss_delete_sec_context | flush context when no longer needed |
| gss_process_context_token | process received control token on context |
| gss_context_time | indicate validity time remaining on context |
| gss_inquire_context | display information about context |
| gss_wrap_size_limit | determine GSS_Wrap token size limit |
| gss_export_sec_context | transfer context to other process |
| gss_import_sec_context | import transferred context |
| Function | Usage |
| gss_wrap | sign, optionally encrypt,encapsulate |
| gss_unwrap | decapsulate, decrypt if needed, validate integrity check |
| gss_get_mic | apply integrity check, receive as token separate from message |
| gss_verify_mic | validate integrity check token along with message |
| Function | Usage |
| gss_display_status | translate status codes to printable form |
| gss_display_name | translate name to printable form |
| gss_import_name | convert printable name to normalized form |
| gss_release_name | free storage of normalized-form name |
| gss_release_buffer | free storage of general GSS-allocated object |
| GSS-API | SSPI (Windows API) |
| gss_import_name() | QueryContextAttributes() |
| gss_acquire_cred() | AcquireCredentialsHandle() |
| gss_init_sec_context() | InitializeSecurityContext() |
| gss_accept_sec_context() | AcceptSecurityContext() |
| gss_delete_sec_context() | DeleteSecurityContext() |
| gss_release_cred() | FreeCredentialsHandle() |
| gss_release_buffer() | Windows applications have to manage their own buffers |
| gss_wrap() | EncryptMessage() |
| gss_unwrap() | DecryptMessage() |
| /krb_gss | Sample Kerberos Client- and Server-Program using the GSS-API |
| The programs are written in the programming language C | |
| and are designed to run on a Unix/Linux system | |
| /krb_sspi | Sample Kerberos Client- and Server-Program using SSPI |
| The programs are written in the programming language C | |
| and are designed to run on a Windows32 system | |
| /sequence | Sequence Diagrams of the Kerberos Authentication Process |
| at the CIMOM OpenPegasus 2.3 | |
| /tex | The Tex-files of this Report, including all graphics and a PDF-File |