View Source Smee.Security (Smee v0.5.0)

Smee.Security uses XML signatures to provide anti-tampering and origin authentication features.

Most metadata from national research and education networks is signed to add an extra layer of security for users: altered metadata can create security and privacy vulnerabilities for organisations.

At the moment only signature verification on Metadata structs is supported.

Summary

Functions

Returns a metadata struct in an :ok/:error tuple, with verified: true set if verification passes.

Returns a metadata struct with verified: true set if verification passes, or raises an exception.

Returns true or false depending on verification status of the passed metadata.

Functions

@spec verify(metadata :: Smee.Metadata.t()) ::
  {:ok, Smee.Metadata.t()} | {:error, binary()}

Returns a metadata struct in an :ok/:error tuple, with verified: true set if verification passes.

@spec verify!(metadata :: Smee.Metadata.t()) :: Smee.Metadata.t()

Returns a metadata struct with verified: true set if verification passes, or raises an exception.

@spec verify?(metadata :: Smee.Metadata.t()) :: boolean()

Returns true or false depending on verification status of the passed metadata.

Already-verified metadata will not be reverified.