io.github.nremond.legacy

SecureHash

case class SecureHash(iterations: Int = 20000, dkLength: Int = 32, cryptoAlgo: String = "HmacSHA512") extends Product with Serializable

This is the legacy API.

iterations

the number of encryption iterations. Default to 20000

dkLength

derived-key length, default to 32

cryptoAlgo

HMAC+SHA256 is the default as HMAC+SHA1 is now considered weak

Linear Supertypes
Serializable, Serializable, Product, Equals, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. SecureHash
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. AnyRef
  7. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new SecureHash(iterations: Int = 20000, dkLength: Int = 32, cryptoAlgo: String = "HmacSHA512")

    iterations

    the number of encryption iterations. Default to 20000

    dkLength

    derived-key length, default to 32

    cryptoAlgo

    HMAC+SHA256 is the default as HMAC+SHA1 is now considered weak

Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  7. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. def createHash(password: String): String

    Creates a hashed password using PBKDF2

    Creates a hashed password using PBKDF2

    this function output a string in the following format:

    salt:key

    • salt : hex encoded salt
    • key : hex encoded derived key

    Example :

    a9c654289407047fd197516196e14b97bdabfa4bc934d0e9:f2f458b2502ca7595a4c964b14f146bd9c49174fa41b625227602bf4aaffbf5e

    password

    the password to hash

  9. val cryptoAlgo: String

    HMAC+SHA256 is the default as HMAC+SHA1 is now considered weak

  10. val dkLength: Int

    derived-key length, default to 32

  11. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  12. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  13. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  14. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  15. val iterations: Int

    the number of encryption iterations.

    the number of encryption iterations. Default to 20000

  16. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  17. final def notify(): Unit

    Definition Classes
    AnyRef
  18. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  19. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  20. def validatePassword(password: String, hashedPassword: String): Boolean

    Validate a password against a password hash

    Validate a password against a password hash

    this function will first try to validate with the *new* format as generated by io.github.nremond.SecureHash.createHash. if it fails, it will fall back to the *old* format, making this function very useful when transitioning form the *old* to the *new* format.

    password

    the password to validate

    hashedPassword

    the password hash.

    returns

    true is the password is valid

  21. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  22. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  23. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped