libgodium

Pure Go implementation of cryptographic APIs found in libsodium. The implementations are compatible with libsodium 1.0.15.

Import

go get go.artemisc.eu/godium

Godoc

https://godoc.org/go.artemisc.eu/godium

License

Unless otherwise specified, code present in this library is licensed under the Mozilla Public License Version v2.0.

Credits

This library is built upon existing cryptographic implementations. See the CREDITS.md file for relevant credits/licenses.

Implemented APIs

  • AEAD
    • aes256gcm
    • chacha20poly1305
    • chacha20poly1305_ietf
    • xchacha20poly1305_ietf
  • Auth
    • hmacsha256
    • hmacsha512
    • hmacsha256256
  • Box
    • curve25519xchacha20poly1305
    • curve25519xsalsa20poly1305
  • Core
    • hchacha20
    • hsalsa20
    • salsa20 (TODO: amd64 implementation)
  • Generic Hash
    • blake2b
  • Hash
    • sha256
    • sha512
  • KDF (Key Derivation Function)
    • blake2b
  • KX (Key Exchange)
    • x25519blake2b
  • OneTimeAuth
    • poly1305
  • Password Hash
    • TODO argon2id
    • TODO argon2i
    • TODO scrypt
  • Random bytes
    • sodium randombytes
  • Scalar Mult
    • curve25519
  • Secret Box
    • xchacha20poly1305
    • xsalsa20poly1305
  • Secret Stream
    • xchacha20poly1305
  • Short Hash
    • siphash24
    • siphashx24
  • Signature
    • ed25519
    • ed25519ph
  • Stream
    • chacha20
    • chacha20 ietf
    • xchacha20
    • TODO salsa208
    • TODO salsa2012
    • salsa20
    • xsalsa20
  • Misc/Util
    • TODO constant time hex encode/decode
    • TODO constant time base64 encode/decode

Libgodium

Pure Go implementation of cryptographic APIs found in libsodium

Libgodium Info

⭐ Stars 42
🔗 Source Code github.com
🕒 Last Update 9 months ago
🕒 Created 5 years ago
🐞 Open Issues 3
➗ Star-Issue Ratio 14
😎 Author ArteMisc