Class MD5Token

java.lang.Object
org.jgroups.auth.AuthToken
org.jgroups.auth.MD5Token
All Implemented Interfaces:
Serializable, Streamable

public class MD5Token extends AuthToken

This is an example of using a preshared token that is encrypted using an MD5/SHA hash for authentication purposes. All members of the group have to have the same string value in the JGroups config.

Configuration parameters for this example are shown below:

  • token_hash (required) = MD5(default)/SHA
  • auth_value (required) = the string to encrypt
Author:
Chris Mills
See Also:
  • Field Details

  • Constructor Details

    • MD5Token

      public MD5Token()
    • MD5Token

      public MD5Token(String token)
    • MD5Token

      public MD5Token(String token, String hash_type)
  • Method Details

    • setValue

      public void setValue(Properties properties)
      Description copied from class: AuthToken
      Called during the setup of the AUTH protocol to pass property values from the JGroups config XML document to the implementing class.
      Specified by:
      setValue in class AuthToken
      Parameters:
      properties - a java.util.Properties object of config parameters
    • getName

      public String getName()
      Description copied from class: AuthToken
      Used to return the full package and class name of the implementation. This is used by the AUTH protocol to create an instance of the implementation.
      Specified by:
      getName in class AuthToken
      Returns:
      a java.lang.String object of the package and class name
    • authenticate

      public boolean authenticate(AuthToken token, Message msg)
      Description copied from class: AuthToken
      This method should be implemented to perform the actual authentication of joining members.
      Specified by:
      authenticate in class AuthToken
      Parameters:
      token - the token sent by the joiner
      msg - the Message object containing the actual JOIN_REQ
      Returns:
      true if authenticaion passed or false if it failed.
    • writeTo

      public void writeTo(DataOutputStream out) throws IOException
      Description copied from interface: Streamable
      Write the entire state of the current object (including superclasses) to outstream. Note that the output stream must not be closed
      Throws:
      IOException
    • readFrom

      Description copied from interface: Streamable
      Read the state of the current object (including superclasses) from instream Note that the input stream must not be closed
      Throws:
      IOException
      IllegalAccessException
      InstantiationException