fork of boring2 with prefix patch
Go to file
lloyd b53582ab96 Take hash test inputs as hex strings. Add MD5 tests. 2013-03-11 21:40:23 +01:00
.gitignore Add RC4 and AES-128 support to Cryptor 2013-03-11 20:49:04 +01:00
Makefile Add support for HMAC, RC4, AES-128, hex encoding, etc 2013-03-11 20:44:16 +01:00
README.md Add RC4 and AES-128 support to Cryptor 2013-03-11 20:49:04 +01:00
crypto.rc Add RC4 and AES-128 support to Cryptor 2013-03-11 20:49:04 +01:00
hash.rs Take hash test inputs as hex strings. Add MD5 tests. 2013-03-11 21:40:23 +01:00
hex.rs Add support for HMAC, RC4, AES-128, hex encoding, etc 2013-03-11 20:44:16 +01:00
hmac.rs Add support for HMAC, RC4, AES-128, hex encoding, etc 2013-03-11 20:44:16 +01:00
manifest.json manifest: Add license. 2011-12-15 21:43:44 -05:00
pkcs5.rs Update for language changes 2012-10-02 16:00:06 -07:00
pkey.rs Add support for RSA signing with alternate hashes (MD5, SHA-512, etc) 2013-03-11 20:01:03 +01:00
rand.rs Add RC4 and AES-128 support to Cryptor 2013-03-11 20:49:04 +01:00
symm.rs Add RC4 and AES-128 support to Cryptor 2013-03-11 20:49:04 +01:00

README.md

This package provides Rust bindings for the functionality exposed by OpenSSL's libcrypto. Currently provided:

  • Hashes (hash.rs)
    • MD5
    • SHA-1
    • SHA-2 (224, 256, 384, 512)
  • Symmetric crypto (symm.rs)
    • AES-128 or AES-256 in ECB or CBC mode
    • RC4-128
  • Keypair generation (pkey.rs)
    • RSA, all key lengths
  • Asymmetric encryption (pkey.rs)
    • RSA with PKCS #1 OAEP padding or PKCS #1 v1.5 padding
  • Digital signatures (pkey.rs)
    • RSA with PKCS #1 v1.5 padding and any supported hash

Each module provides two interfaces: a low-level API which wraps the OpenSSL interfaces as directly as possible and a high-level API which presents the OpenSSL API as a Rust object and tries to make sensible default choices about parameters most users won't care about. You probably want to use the high-level API. For documentation on these, see the individual source files.