HTTPSignatures (http_signatures v0.1.3)

Copy Markdown

HTTP Signatures library.

Summary

Functions

Create rsa-sha256 signature.

Get signature for conn in split form.

Split raw signature string into a Map of individual components.

Fetch public key and validate signature.

Validate signature using specified public key.

Functions

build_signing_string(headers, used_headers)

@spec build_signing_string(map(), list()) :: String.t()

sign(private_key, key_id, headers)

@spec sign(any(), String.t(), map()) :: String.t()

Create rsa-sha256 signature.

signature_for_conn(conn)

@spec signature_for_conn(Plug.Conn.t()) :: map()

Get signature for conn in split form.

split_signature(sig)

@spec split_signature(binary()) :: map()

Split raw signature string into a Map of individual components.

validate(headers, signature, public_key)

@spec validate(map(), map(), any()) :: boolean()

validate_conn(conn)

@spec validate_conn(Plug.Conn.t()) :: boolean()

Fetch public key and validate signature.

validate_conn(conn, public_key)

@spec validate_conn(Plug.Conn.t(), any()) :: boolean()

Validate signature using specified public key.