saltpack v1.1.6 Saltpack View Source
saltpack implementation
https://saltpack.org/
Handling complete, ASCII-armored messages at rest.
Link to this section Summary
Functions
armor a new message
encrypt a new message
generate a new {private, public}
key pair
open a saltpack message
sign a new message
Link to this section Types
key()
View Source
key() :: binary()
key() :: binary()
a public or private key
key_variety()
View Source
key_variety() :: :encrypt | :sign
key_variety() :: :encrypt | :sign
desired key variety
signature_mode()
View Source
signature_mode() :: :attached | :detached
signature_mode() :: :attached | :detached
signature mode
Link to this section Functions
armor_message(message, opts \\ [])
View Source
armor_message(binary(), Saltpack.Armor.formatting_options()) :: binary()
armor_message(binary(), Saltpack.Armor.formatting_options()) :: binary()
armor a new message
encrypt_message(message, recipients, private, public \\ nil, opts \\ []) View Source
encrypt a new message
recipients
should contain a list of all recipient public keys.
An entry may be nil
for anonymous recipients.
new_key_pair(kv \\ :encrypt)
View Source
new_key_pair(key_variety()) :: {key(), key()}
new_key_pair(key_variety()) :: {key(), key()}
generate a new {private, public}
key pair
open_message(message, key \\ nil, plaintext \\ nil) View Source
open a saltpack message
This may fail in spectacular ways with messages which are not properly formatted for the supplied key.
Opening a detached signature with plaintext
will return the signing public key.
All other forms return the decoded contents upon validation.
sign_message(message, private, public \\ nil, mode \\ :attached, opts \\ [])
View Source
sign_message(
binary(),
key(),
key(),
signature_mode(),
Saltpack.Armor.formatting_options()
) :: binary()
sign_message( binary(), key(), key(), signature_mode(), Saltpack.Armor.formatting_options() ) :: binary()
sign a new message
This is presently considerably slower than encrypting a same-sized message and
has slightly different calling semantics. Where possible, encrypt_message/5
should
be preferred.