README.md

## FernetEx

[![CI Status](https://github.com/kennyp/fernetex/actions/workflows/test.yml/badge.svg)](https://github.com/kennyp/fernetex/actions/workflows/test.yml)

Fernet takes a user-provided *message* (an arbitrary sequence of
bytes), a *key* (256 bits), and the current time, and produces a
*token*, which contains the message in a form that can't be read
or altered without the key.

This package is compatible with the other implementations at
[https://github.com/fernet](https://github.com/fernet).
They can exchange tokens freely among each other.

Documentation: [http://hexdocs.pm/fernetex/0.5.0/](http://hexdocs.pm/fernetex/0.5.0/)


### Adding FernetEx To Your Project

To use FernetEx with your projects, edit your `mix.exs` file and add it as a dependency:

```elixir
defp deps do
  [{:fernetex, "~> 0.5.0"}]
end
```

For more information and background, see the Fernet spec at
[https://github.com/fernet/spec](https://github.com/fernet/spec).

FernetEx is distributed under the terms of the MIT license.
See the License file for details.


### Useful Mix tasks

FernetEx comes with two useful mix tasks

- `mix fernet.keygen` is useful for generating keys
- `mix fernet.sign key` is useful for signing a message using the given key