/primit

Minimal portable cryptographic primitive in pure Rust

Primary LanguageRustMIT LicenseMIT

primit

Minimal portable cryptographic primitive in 100% pure Rust.

All algorithms are designed working in no_std environment, without using heap memory allocate.

The build artifact less than 20KiB.

⚠ Security Notes

The library not aims to used in real production environment, it drops lots of protective measures for less compiled binary size, but it may suitable for your own toy projects which only used by yourself.

Current support primitive

  • MD5
  • SHA-256
  • HMAC-SHA256
  • GHash
  • Poly1305
  • AES-128
  • Chacha20
  • AES-128-GCM
  • Chacha20Poly1305
  • Chacha8 based Random Number Generator
  • Hexadecimal encoding/decoding
  • P-256(secp256r1) for ECDHE

Acknowledgement

This project is a part of zkonge/husk, learned a lot from BearSSL and RustCrypto.

You can easily find licenses in their websites. Some other references may be find in source code comment.

LICENSE

MIT