Class SkeinParameters.Builder

java.lang.Object
org.bouncycastle.crypto.params.SkeinParameters.Builder
Enclosing class:
SkeinParameters

public static class SkeinParameters.Builder extends Object
A builder for SkeinParameters.
  • Constructor Details

    • Builder

      public Builder()
    • Builder

      public Builder(Hashtable paramsMap)
    • Builder

      public Builder(SkeinParameters params)
  • Method Details

    • set

      public SkeinParameters.Builder set(int type, byte[] value)
      Sets a parameters to apply to the Skein hash function.
      Parameter types must be in the range 0,5..62, and cannot use the value SkeinParameters.PARAM_TYPE_MESSAGE (reserved for message body).

      Parameters with type < SkeinParameters.PARAM_TYPE_MESSAGE are processed before the message content, parameters with type > SkeinParameters.PARAM_TYPE_MESSAGE are processed after the message and prior to output.

      Parameters:
      type - the type of the parameter, in the range 5..62.
      value - the byte sequence of the parameter.
      Returns:
      the current builder instance.
    • setKey

      public SkeinParameters.Builder setKey(byte[] key)
      Sets the SkeinParameters.PARAM_TYPE_KEY parameter.
    • setPersonalisation

      public SkeinParameters.Builder setPersonalisation(byte[] personalisation)
    • setPersonalisation

      public SkeinParameters.Builder setPersonalisation(Date date, String emailAddress, String distinguisher)
      Implements the recommended personalisation format for Skein defined in Section 4.11 of the Skein 1.3 specification.

      The format is YYYYMMDD email@address distinguisher, encoded to a byte sequence using UTF-8 encoding.

      Parameters:
      date - the date the personalised application of the Skein was defined.
      emailAddress - the email address of the creation of the personalised application.
      distinguisher - an arbitrary personalisation string distinguishing the application.
      Returns:
      the current builder.
    • setPersonalisation

      public SkeinParameters.Builder setPersonalisation(Date date, Locale dateLocale, String emailAddress, String distinguisher)
      Implements the recommended personalisation format for Skein defined in Section 4.11 of the Skein 1.3 specification. You may need to use this method if the default locale doesn't use a Gregorian calender so that the GeneralizedTime produced is compatible implementations.

      The format is YYYYMMDD email@address distinguisher, encoded to a byte sequence using UTF-8 encoding.

      Parameters:
      date - the date the personalised application of the Skein was defined.
      dateLocale - locale to be used for date interpretation.
      emailAddress - the email address of the creation of the personalised application.
      distinguisher - an arbitrary personalisation string distinguishing the application.
      Returns:
      the current builder.
    • setPublicKey

      public SkeinParameters.Builder setPublicKey(byte[] publicKey)
    • setKeyIdentifier

      public SkeinParameters.Builder setKeyIdentifier(byte[] keyIdentifier)
    • setNonce

      public SkeinParameters.Builder setNonce(byte[] nonce)
    • build

      public SkeinParameters build()
      Constructs a new SkeinParameters instance with the parameters provided to this builder.