All Projects → jmesmon → sodalite

jmesmon / sodalite

Licence: other
tweetnacl in rust

Programming Languages

rust
11053 projects
c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to sodalite

zax
NaCl-based Cryptographic Relay
Stars: ✭ 62 (+138.46%)
Mutual labels:  ed25519, nacl
rawr-x3dh
TypeScript Implementation of X3DH
Stars: ✭ 51 (+96.15%)
Mutual labels:  libsodium, ed25519
dryoc
Don't Roll Your Own Crypto: pure-Rust, hard to misuse cryptography library
Stars: ✭ 163 (+526.92%)
Mutual labels:  libsodium, nacl
salty
Portable NaCl-powered encryption
Stars: ✭ 26 (+0%)
Mutual labels:  libsodium, nacl
Tweetnacl Js
Port of TweetNaCl cryptographic library to JavaScript
Stars: ✭ 1,176 (+4423.08%)
Mutual labels:  libsodium, ed25519
wasm
fast wasm modules
Stars: ✭ 37 (+42.31%)
Mutual labels:  ed25519, nacl
Kryptor
A simple, modern, and secure encryption and signing tool that aims to be a better version of age and Minisign.
Stars: ✭ 267 (+926.92%)
Mutual labels:  libsodium, ed25519
iroha-ed25519
RFC8032 compatible Ed25519 implementation with pluggable hash (sha2-512, sha3-512)
Stars: ✭ 28 (+7.69%)
Mutual labels:  ed25519, sha512
Rbnacl
Ruby FFI binding to the Networking and Cryptography (NaCl) library (a.k.a. libsodium)
Stars: ✭ 910 (+3400%)
Mutual labels:  libsodium, ed25519
Halite
High-level cryptography interface powered by libsodium
Stars: ✭ 933 (+3488.46%)
Mutual labels:  libsodium, ed25519
Sodium compat
Pure PHP polyfill for ext/sodium
Stars: ✭ 736 (+2730.77%)
Mutual labels:  libsodium, ed25519
Nsec
A modern and easy-to-use cryptographic library for .NET Core based on libsodium
Stars: ✭ 217 (+734.62%)
Mutual labels:  libsodium, ed25519
Signatory
Multi-provider digital signature library for Rust
Stars: ✭ 136 (+423.08%)
Mutual labels:  libsodium, ed25519
noble-ed25519
Fastest JS implementation of ed25519, x25519 & ristretto255. Independently audited, high-security, 0-dependency EDDSA signatures and ECDH key agreement
Stars: ✭ 220 (+746.15%)
Mutual labels:  ecc, ed25519
dvdisaster
A tool providing additional ECC protection for optical media (unofficial version)
Stars: ✭ 116 (+346.15%)
Mutual labels:  ecc
pairing
Optimised bilinear pairings over elliptic curves
Stars: ✭ 44 (+69.23%)
Mutual labels:  ecc
ParPar
High performance PAR2 create client for NodeJS
Stars: ✭ 110 (+323.08%)
Mutual labels:  ecc
wave-gui
Yet another data-over-sound tool
Stars: ✭ 64 (+146.15%)
Mutual labels:  ecc
ACMECert
PHP client library for Let's Encrypt (ACME v2 - RFC 8555)
Stars: ✭ 83 (+219.23%)
Mutual labels:  ecc
littleca
littleca是一个基于BC的小型ca库,支持ecc,rsa,dsa,sm2的证书签发,加密解密,签名验签操作,支持国密加解密,证书签发
Stars: ✭ 44 (+69.23%)
Mutual labels:  ecc

sodalite

An implementation of tweetnacl in pure rust. Originally generated by manually translating tweetnacl.c into rust. Tested by verifying outputs match those of tweetnacl.

Todo

  • provide additional APIs:
  • rather than take bare mutable references, use wrapper types around the refs to capture the underlying type (ie: prevent mixing keys between primitives)
  • add a buffer and/or "set-only" abstraction to prevent unsafety wrt uninitialized values (also should allow some internal optimization).
  • sodiumoxide style API that returns values rather than taking mutable refs
  • Use namespacing to separate different APIs and backend impls
  • start testing against sodiumoxide as well
  • Provide some of the API improvements from libsodium that are missing nacl (disjoint signatures, not requiring special extra space in buffers)

License

Licensed under either of

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].