Copyright | (c) 2024 Auth Global |
---|---|
License | Apache2 |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Implementation of HKDF-SHA256 supporting key reuse, backtracking, streaming, and more.
Synopsis
- hkdf :: HmacKeyPlain -> ByteString -> ByteString -> Int -> ByteString
- hkdf' :: HmacKeyPlain -> ByteString -> ByteString -> Int -> HashString
- hkdfList :: HmacKeyPlain -> ByteString -> ByteString -> [ByteString]
- hkdfList' :: HmacKeyPlain -> ByteString -> ByteString -> [HashString]
- hkdfGen :: HmacKeyPlain -> ByteString -> ByteString -> HkdfGen
- hkdfExtract :: HmacKey -> ByteString -> HmacKey
- hkdfExpand :: HmacKey -> ByteString -> Int -> ByteString
- hkdfExpand' :: HmacKey -> ByteString -> Int -> HashString
- hkdfExpandList :: HmacKey -> ByteString -> [ByteString]
- hkdfExpandList' :: HmacKey -> ByteString -> [HashString]
- hkdfExpandGen :: HmacKey -> ByteString -> HkdfGen
- data HkdfCtx
- hkdfCtx_init :: HmacKey -> HkdfCtx
- hkdfCtx_feed :: ByteString -> HkdfCtx -> HkdfCtx
- hkdfCtx_feeds :: Foldable f => f ByteString -> HkdfCtx -> HkdfCtx
- hkdfCtx_update :: HkdfCtx -> ByteString -> HkdfCtx
- hkdfCtx_updates :: Foldable f => HkdfCtx -> f ByteString -> HkdfCtx
- hkdfCtx_finalize :: HkdfCtx -> HmacKey
- data HkdfGen
- hkdfGen_init :: HmacKey -> ShortByteString -> HkdfGen
- hkdfGen_read :: HkdfGen -> (ByteString, HkdfGen)
- hkdfGen_read' :: HkdfGen -> (HashString, HkdfGen)
- hkdfGen_peek :: HkdfGen -> Maybe HashString
Documentation
:: HmacKeyPlain | salt |
-> ByteString | initial keying material |
-> ByteString | info tag |
-> Int | desired output length |
-> ByteString |
:: HmacKeyPlain | salt |
-> ByteString | initial keying material |
-> ByteString | info tag |
-> Int | desired output length |
-> HashString |
:: HmacKeyPlain | salt |
-> ByteString | initial keying material |
-> ByteString | info tag |
-> [ByteString] |
:: HmacKeyPlain | salt |
-> ByteString | initial keying material |
-> ByteString | info tag |
-> [HashString] |
:: HmacKeyPlain | salt |
-> ByteString | initial keying material |
-> ByteString | info tag |
-> HkdfGen |
:: HmacKey | salt |
-> ByteString | initial keying material |
-> HmacKey | pseudorandom key |
:: HmacKey | pseudorandom key |
-> ByteString | info tag |
-> Int | desired length |
-> ByteString |
:: HmacKey | pseudorandom key |
-> ByteString | info tag |
-> Int | desired length |
-> HashString |
:: HmacKey | pseudorandom key |
-> ByteString | info tag |
-> [ByteString] | infinite lazy list of output blocks |
:: HmacKey | pseudorandom key |
-> ByteString | info tag |
-> [HashString] | infinite lazy list of output blocks |
:: HmacKey | pseudorandom key |
-> ByteString | info tag |
-> HkdfGen |
hkdfCtx_init :: HmacKey -> HkdfCtx Source #
hkdfCtx_feed :: ByteString -> HkdfCtx -> HkdfCtx Source #
hkdfCtx_feeds :: Foldable f => f ByteString -> HkdfCtx -> HkdfCtx Source #
hkdfCtx_update :: HkdfCtx -> ByteString -> HkdfCtx Source #
hkdfCtx_updates :: Foldable f => HkdfCtx -> f ByteString -> HkdfCtx Source #
hkdfCtx_finalize :: HkdfCtx -> HmacKey Source #
hkdfGen_init :: HmacKey -> ShortByteString -> HkdfGen Source #
hkdfGen_read :: HkdfGen -> (ByteString, HkdfGen) Source #
hkdfGen_read' :: HkdfGen -> (HashString, HkdfGen) Source #
hkdfGen_peek :: HkdfGen -> Maybe HashString Source #