1

Consider the diagram in https://en.wikipedia.org/wiki/Kerberos_(protocol)#/media/File:Kerberos_protocol.svg depicting the Kerberos protocol. I'm wondering how the authentication server (AS) is useful.. Couldn't we drop the messages A, B, C, D and simply use the client key K_c (green) instead of K_C-TSG (red) to encrypt message F? I.e., the client would directly request the service from the TGS and authentication and authorization is directly handled in one message, instead of 3.

1 Answer 1

1

Theoretically, the AS and the TGS can be set up together (even on the same physical machine), and I think that in small systems you may spare some messages. This can also be seen in the image along the dashed line. Also see the Needham–Schroeder protocol [1] that uses a two-way handshake with the AS (Kerberos is based on this protocol and improves it).

However, the TGS meets the essential requirements that Kerberos provides:

  • Scalability - The system must support a large number of servers and clients. Only one server is a bottleneck.
  • Separation of duties - the AS shares a key with the clients (which is usually derived from the client's password), the TGS holds a key with the servers. The AS verifies the identity of the client and the TGS "links" it with the server.
  • Hierarchical structure - typical organizations have hierarchical structure. Kerberos allows you to have a single AS and multiple TGSs, which fits a typical organizational structure.

[1] https://en.wikipedia.org/wiki/Needham%E2%80%93Schroeder_protocol

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.