This commit is contained in:
parent
aa2ff7b2f0
commit
2f3113f55d
11742 changed files with 1223940 additions and 0 deletions
23
unikernel/duniverse/kdf/pbkdf/pbkdf.mli
Normal file
23
unikernel/duniverse/kdf/pbkdf/pbkdf.mli
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
(** {{:https://tools.ietf.org/html/rfc2898}RFC 2898} specifies two password-based
|
||||
key derivation functions (PBKDF1 and PBKDF2), which are abstracted over
|
||||
a specific hash/pseudorandom function. *)
|
||||
module type S = sig
|
||||
(** [pbkdf1 password salt count dk_len] is [dk], the derived key of [dk_len] octets.
|
||||
The [salt] must be eight octets, [count] the iteration count.
|
||||
@raise Invalid_argument when either [salt] is not eight octets long or either
|
||||
[count] or [dk_len] are not valid. *)
|
||||
val pbkdf1 : password:string -> salt:string -> count:int -> dk_len:int -> string
|
||||
|
||||
(** [pbkdf2 password salt count dk_len] is [dk], the derived key of [dk_len] octets.
|
||||
@raise Invalid_argument when either [count] or [dk_len] are not valid *)
|
||||
val pbkdf2 : password:string -> salt:string -> count:int -> dk_len:int32 -> string
|
||||
end
|
||||
|
||||
(** Given a Hash/pseudorandom function, get the PBKDF *)
|
||||
module Make (H: Digestif.S) : S
|
||||
|
||||
(** convenience [pbkdf1 hash password salt count dk_len] where the [hash] has to be provided explicitly *)
|
||||
val pbkdf1 : hash:Digestif.hash' -> password:string -> salt:string -> count:int -> dk_len:int -> string
|
||||
|
||||
(** convenience [pbkdf2 prf password salt count dk_len] where the [prf] has to be provided explicitly *)
|
||||
val pbkdf2 : prf:Digestif.hash' -> password:string -> salt:string -> count:int -> dk_len:int32 -> string
|
||||
Loading…
Add table
Add a link
Reference in a new issue