An wrapper for libsodium in golang
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
.gitignore Initial commit Apr 12, 2016
LICENSE init May 22, 2016
LICENSE.original init Apr 12, 2016 v1.0.12 Jan 19, 2018 init Apr 12, 2016
aead_chacha20poly1305.go add AEADCPVerify{Detached} Aug 3, 2017
auth.go gofmt -s Aug 30, 2016
box.go v1.0.12 Jan 19, 2018
core.go init May 22, 2016
generichash.go fix GenericHash.Sum Aug 3, 2017
pwhash.go add LoadPWHashStr Jan 14, 2018
runtime.go init May 22, 2016
scalarmult.go gofmt -s Aug 30, 2016
secretbox.go gofmt -s Aug 30, 2016
shorthash.go gofmt -s Aug 30, 2016
sign.go add sign for multi-part messages Jan 14, 2018
sodium.go v1.0.12 Jan 19, 2018
support.go add kdf Jan 14, 2018
utils.go init May 22, 2016


A wrapper for libsodium in golang

See documents GoDoc.

Currently this is build against libsodium 1.0.12.

Following functions included:

  • crypto_auth crypto_auth_verify
  • crypto_sign_keypair crypto_sign_seed_keypair crypto_sign_ed25519_sk_to_seed crypto_sign_ed25519_sk_to_pk
  • crypto_sign crypto_sign_open crypto_sign_detached crypto_sign_verify_detached
  • crypto_sign_init crypto_sign_update crypto_sign_final_create crypto_sign_final_verify
  • crypto_sign_ed25519_sk_to_curve25519 crypto_sign_ed25519_pk_to_curve25519
  • crypto_scalarmult_base crypto_scalarmult
  • crypto_box_keypair crypto_box_seed_keypair
  • crypto_box_seal crypto_box_seal_open
  • crypto_box_easy crypto_box_open_easy crypto_box_detached crypto_box_open_detached
  • crypto_secretbox_easy crypto_secretbox_open_easy crypto_secretbox_detached crypto_secretbox_open_detached
  • crypto_pwhash crypto_pwhash_str crypto_pwhash_str_verify
  • crypto_pwhash_opslimit_interactive crypto_pwhash_memlimit_interactive
  • crypto_pwhash_opslimit_moderate crypto_pwhash_memlimit_moderate
  • crypto_pwhash_opslimit_sensitive crypto_pwhash_memlimit_sensitive
  • crypto_shorthash crypto_generichash_init crypto_generichash_update crypto_generichash_final
  • crypto_kdf_keygen crypto_kdf_derive_from_key
  • crypto_kx_keypair crypto_kx_seed_keypair crypto_kx_server_session_keys crypto_kx_client_session_keys
  • crypto_aead_chacha20poly1305_ietf_encrypt crypto_aead_chacha20poly1305_ietf_decrypt crypto_aead_chacha20poly1305_ietf_encrypt_detached crypto_aead_chacha20poly1305_ietf_decrypt_detached
  • sodium_memzero sodium_memcmp sodium_increment

NOTE: This is a modified and enhanced version based on Because there're a lot of package reformat and interface changes, I'd like to launch a new project. Thankfully, the original author permits reuse its code as long as the original LICENSE remains. You can find the LICENSE.original and stating the original license. And this version is released under MIT License.