trait HkdfOps extends AnyRef
The expansion step of the HMAC-based key derivation function (HKDF) as defined in: https://tools.ietf.org/html/rfc5869
- Alphabetic
 - By Inheritance
 
- HkdfOps
 - AnyRef
 - Any
 
- Hide All
 - Show All
 
- Public
 - Protected
 
Abstract Value Members
-   abstract  def computeHkdfInternal(keyMaterial: ByteString, outputBytes: Int, info: HkdfInfo, salt: ByteString = ByteString.EMPTY, algorithm: HmacAlgorithm = defaultHmacAlgorithm): Either[HkdfError, SecureRandomness]
- Attributes
 - protected
 
 -   abstract  def hkdfExpandInternal(keyMaterial: SecureRandomness, outputBytes: Int, info: HkdfInfo, algorithm: HmacAlgorithm = defaultHmacAlgorithm): Either[HkdfError, SecureRandomness]
- Attributes
 - protected
 
 
Concrete Value Members
-   final  def !=(arg0: Any): Boolean
- Definition Classes
 - AnyRef → Any
 
 -   final  def ##: Int
- Definition Classes
 - AnyRef → Any
 
 -   final  def ==(arg0: Any): Boolean
- Definition Classes
 - AnyRef → Any
 
 -   final  def asInstanceOf[T0]: T0
- Definition Classes
 - Any
 
 -    def clone(): AnyRef
- Attributes
 - protected[lang]
 - Definition Classes
 - AnyRef
 - Annotations
 - @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
 
 -    def computeHkdf(keyMaterial: ByteString, outputBytes: Int, info: HkdfInfo, salt: ByteString = ByteString.EMPTY, algorithm: HmacAlgorithm = defaultHmacAlgorithm): Either[HkdfError, SecureRandomness]
Produce a new secret from the given key material using the HKDF from RFC 5869 with both extract and expand phases.
Produce a new secret from the given key material using the HKDF from RFC 5869 with both extract and expand phases.
- keyMaterial
 Input key material from which to derive another key.
- outputBytes
 The length of the produced secret. May be at most 255 times the size of the output of the selected hashing algorithm. If you need to derive multiple keys, set the
infoparameter to different values, for each key that you need.- info
 Specify the purpose of the derived key (optional). Note that you can derive multiple independent keys from the same key material by varying the purpose.
- salt
 Optional salt. Should be set if the input key material is not cryptographically secure, uniformly random.
- algorithm
 The hash algorithm to be used for the HKDF construction
 -   final  def eq(arg0: AnyRef): Boolean
- Definition Classes
 - AnyRef
 
 -    def equals(arg0: AnyRef): Boolean
- Definition Classes
 - AnyRef → Any
 
 -   final  def getClass(): Class[_ <: AnyRef]
- Definition Classes
 - AnyRef → Any
 - Annotations
 - @native() @HotSpotIntrinsicCandidate()
 
 -    def hashCode(): Int
- Definition Classes
 - AnyRef → Any
 - Annotations
 - @native() @HotSpotIntrinsicCandidate()
 
 -    def hkdfExpand(keyMaterial: SecureRandomness, outputBytes: Int, info: HkdfInfo, algorithm: HmacAlgorithm = defaultHmacAlgorithm): Either[HkdfError, SecureRandomness]
Produce a new secret from the given secret and purpose.
Produce a new secret from the given secret and purpose. Only performs the expand step of the HKDF from RFC 5869.
- keyMaterial
 Cryptographically secure, uniformly random initial key material. Must be at least as long as the length of the hash function chosen for the HMAC scheme.
- outputBytes
 The length of the produced secret. May be at most 255 times the size of the output of the selected hashing algorithm. If you need to derive multiple keys, set the
infoparameter to different values, for each key that you need.- info
 Specify the purpose of the derived key (optional). Note that you can derive multiple independent keys from the same key material by varying the purpose.
- algorithm
 The hash algorithm to be used for the HKDF construction
 -   final  def isInstanceOf[T0]: Boolean
- Definition Classes
 - Any
 
 -   final  def ne(arg0: AnyRef): Boolean
- Definition Classes
 - AnyRef
 
 -   final  def notify(): Unit
- Definition Classes
 - AnyRef
 - Annotations
 - @native() @HotSpotIntrinsicCandidate()
 
 -   final  def notifyAll(): Unit
- Definition Classes
 - AnyRef
 - Annotations
 - @native() @HotSpotIntrinsicCandidate()
 
 -   final  def synchronized[T0](arg0: => T0): T0
- Definition Classes
 - AnyRef
 
 -    def toString(): String
- Definition Classes
 - AnyRef → Any
 
 -   final  def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
 - AnyRef
 - Annotations
 - @throws(classOf[java.lang.InterruptedException])
 
 -   final  def wait(arg0: Long): Unit
- Definition Classes
 - AnyRef
 - Annotations
 - @throws(classOf[java.lang.InterruptedException]) @native()
 
 -   final  def wait(): Unit
- Definition Classes
 - AnyRef
 - Annotations
 - @throws(classOf[java.lang.InterruptedException])