libpaseto is a low-level implementation of Platform-Agnostic Security Tokens in C. It only supports v2 public and private tokens, v1 is not supported. PASETO Registered Claims are not in the scope of this project but can be built ontop of libpaseto.
libpaseto only depends on libsodium and uses CMake. It can be built using the following commands:
mkdir build
cd build
cmake ..
make
cd ..
build/pasetotest
- Initialize the library:
paseto_init
- Load a key using
paseto_v2_{local,public}_load_...
- Encrypt or sign a message using
paseto_v2_local_encrypt
orpaseto_v2_public_sign
respectively - Decrypt or verify a token using
paseto_v2_local_decrypt
orpaseto_v2_public_verify
respectively. They will return the decoded message on success, a null pointer otherwise. - Clean up returned results using
paseto_free
Refer to example.c for a detailed example.
libpaseto is published under the 3-clause BSD license and makes use of libsodium which is published under the ISC license.