Skip to content

FedericoCeratto/nim-libsodium

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 

nim-libsodium

Nim wrapper for the libsodium library

Build Status badge tags License

Features

  • Wrap libsodium and expose only memory-safe entities

  • Follow libsodium naming convention for most functions

  • Tested on Linux, MacOS and windows

  • Basic unit tests

  • No homemade crypto

Usage

and the generated documentation using nim doc.

Also, the structure of libsodium/sodium.nim follows the order of https://doc.libsodium.org/

sudo apt-get install libsodium18
nimble install libsodium
import libsodium.sodium
import libsodium.sodium_sizes

let
  msg = "hello and goodbye"
  (pk, sk) = crypto_box_keypair()
  nonce = randombytes(crypto_box_NONCEBYTES())
  ciphertext = crypto_box_easy(msg, nonce, pk, sk)

Contributing

Testing and PRs are welcome.