Interface MessageAuthSupport<T extends MessageAuthSupport<?>>

Type Parameters:
T - same type as implementation
All Superinterfaces:
AttributeHolder, NestedAttributeHolder, RadiusPacket
All Known Implementing Classes:
AccessRequest, AccessRequestChap, AccessRequestEap, AccessRequestPap, AccessResponse

public interface MessageAuthSupport<T extends MessageAuthSupport<?>>
extends RadiusPacket
Partial implementation for supporting Message-Authenticator (RFC 2869)
  • Field Details

  • Method Details

    • copy

      T copy()
      Specified by:
      copy in interface RadiusPacket
      Returns:
      packet of same type as self, including intermediate/transient fields
    • encodeMessageAuth

      default T encodeMessageAuth​(java.lang.String sharedSecret, byte[] requestAuth)
      Parameters:
      sharedSecret - share secret
      requestAuth - current packet auth if encoding request, otherwise auth for corresponding request
      Returns:
      shallow copy of packet
    • verifyMessageAuth

      default void verifyMessageAuth​(java.lang.String sharedSecret, byte[] requestAuth) throws RadiusPacketException
      Throws:
      RadiusPacketException
    • computeMessageAuth

      default byte[] computeMessageAuth​(java.lang.String sharedSecret, byte[] requestAuth)
    • calcMessageAuthInput

      default byte[] calcMessageAuthInput​(byte[] requestAuth)
    • getHmacMd5

      static javax.crypto.Mac getHmacMd5​(java.lang.String key)