def key

bend-kit-sigv4@0.11.0.1 · sigv4.bend:303

import bend-kit-sigv4@0.11.0.1/sigv4.bend as Sigv4
import Base
import bend-kit-bytes@0.3.3.0/bytes.bend as Bytes

303# The signing key: HMAC(HMAC(HMAC(HMAC("AWS4" + secret, day), region), service), "aws4_request").
304def key(+secret: String, +day: String, +region: String, +service: String) -> IO(Result<&1, &1, U32 & String, U32 & Array<U32>>):
305  do IO<Result<&1, &1, U32 & String, U32 & Array<U32>>>:
306    k1 : Result<&1, &1, U32 & String, U32 & Array<U32>> <- mac(words(Bytes.from_string("AWS4" ++ secret)), day)
307    k2 : Result<&1, &1, U32 & String, U32 & Array<U32>> <- mac(k1, region)
308    k3 : Result<&1, &1, U32 & String, U32 & Array<U32>> <- mac(k2, service)
309    mac(k3, "aws4_request")

Uses (11)

Used by (1)