Sodium é uma nova biblioteca de software fácil de usar para criptografia, descriptografia, assinaturas, hash de senha e muito mais. É um fork do NaCl portátil, compilável em conjunto, instalável e empacotável, com uma API compatível e uma API estendida para melhorar ainda mais a usabilidade.

Seu objetivo é fornecer todas as operações principais necessárias para criar ferramentas criptográficas de nível superior. O Sodium suporta uma variedade de compiladores e sistemas operacionais, incluindo Windows (com MingW ou Visual Studio, x86 e x64), iOS, Android, além de Javascript e Webassembly.
Instalando a biblioteca de software libsodium para criptografia
O sódio é uma biblioteca compartilhada com um conjunto de cabeçalhos independentes da máquina, para que possa ser facilmente usado por projetos de terceiros. A biblioteca é construída usando ferramentas automáticas, facilitando o empacotamento. A instalação é trivial e a compilação e o teste podem tirar proveito de vários núcleos da CPU.
Faça o download de um tarball de libsodium, de preferência a versão estável mais recente, e siga o ritual:
| 123 | ./configuremake && make checksudo make install |
Como arquivos diferentes são compilados para diferentes classes de CPU e para evitar otimizações indesejadas, é recomendável evitar a otimização do tempo de link (LTO). No Linux, se o processo travar na make checketapa, o PRG do sistema pode não ter sido propriamente propagado. Por favor, consulte as notas na seção “Uso” para obter maneiras de resolver isso.
Usando a biblioteca de criptografia libsodium
Um projeto usando libsodium deve incluir o sodium.hcabeçalho. A inclusão de cabeçalhos individuais não é necessária nem recomendada.
A sodium_init()função deve ser chamada antes de qualquer outra função. É seguro ligar sodium_init()várias vezes ou de diferentes segmentos; ele retornará imediatamente 1 sem fazer nada se a biblioteca já tiver sido inicializada.
| 123456789 | #include <sodium.h> int main(void){ if (sodium_init() < 0) { /* panic! the library couldn’t be initialized, it is not safe to use */ } return 0;} |
Você pode baixar o libsodium aqui:

