Rozwiązanie drugie - bilet zawierający identyfikatory usługi i użytkownika

Schemat1

bilet=[identyfikator użytkownika, identyfikator usługi]#hasło usługi

Opis rozwiązania:

Ze względu na wydajność interesować nas będą bilety wielorazowego użytku. Gdybyśmy chcieli korzystać z biletów jednorazowych, użytkownik za każdym razem chcąc skorzystać z jakiejś usługi musiałby się łączyć się z serwerem uwierzytelniającym.
W pierwszej wersji rozwiązania bilet zawiera identyfikator użytkownika i identyfikator serwera z którego użytkownik chce skorzystać. Informacje te zakodowane są hasłem serwera. Kodownie hasłem serwera jest niezbędne w celu zapewnienia autentyczności biletu.
  1. Użytkownik wysyła serwerowi uwierzytelniającemu swój identyfikator i nazwę serwera z którego chce skorzystać.
  2. Serwer uwierzytelniający tworzy bilet - [identyfikator użytkownika, identyfikator usługi]#hasło usługi (A#B - oznacza kodowanie A za  pomocą B), koduje go hasłem użytkownika i wysyła użytkownikowi.
  3. Użytkownik znając hasło dekoduje przesyłke i otrzymuje bilet.
  4. Bilet może wykorzystać do uwierzytelnienia się przed serwerem.

Problemy