25 unstable releases (4 breaking)

✓ Uses Rust 2018 edition

0.17.0-alpha.1 Feb 11, 2020
0.16.11 Feb 4, 2020
0.16.9 Aug 30, 2019
0.16.5 Jul 26, 2019
0.6.0-alpha Nov 15, 2016

#19 in Cryptography

Download history 51171/week @ 2019-12-15 26428/week @ 2019-12-22 30846/week @ 2019-12-29 49024/week @ 2020-01-05 53549/week @ 2020-01-12 56627/week @ 2020-01-19 59193/week @ 2020-01-26 61581/week @ 2020-02-02 58952/week @ 2020-02-09 53956/week @ 2020-02-16 64163/week @ 2020-02-23 66188/week @ 2020-03-01 67523/week @ 2020-03-08 63221/week @ 2020-03-15 62831/week @ 2020-03-22 67688/week @ 2020-03-29

247,208 downloads per month
Used in 1,566 crates (249 directly)

Custom license

5.5MB
178K SLoC

GNU Style Assembly 95K SLoC // 0.0% comments Perl 38K SLoC // 0.1% comments Assembly 29K SLoC // 0.0% comments Rust 12K SLoC // 0.3% comments C 2.5K SLoC // 0.3% comments Python 275 SLoC // 0.3% comments

See https://github.com/briansmith/ring.


lib.rs:

Safe, fast, small crypto using Rust with BoringSSL's cryptography primitives.

git clone https://github.com/briansmith/ring

Feature Flags

Feature Description
alloc (default) Enable features that require use of the heap, RSA in particular.
dev_urandom_fallback (default) This is only applicable to Linux. On Linux, by default, ring::rand::SystemRandom will fall back to reading from /dev/urandom if the getrandom() syscall isn't supported at runtime. When the dev_urandom_fallback feature is disabled, such fallbacks will not occur. See the documentation for rand::SystemRandom for more details.
std Enable features that use libstd, in particular `std::error::Error` integration.

Dependencies