Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality. Learn more →
Top 23 Rust Cryptography Projects
-
Project mention: Pingora: HTTP Server and Proxy Library, in Rust, by Cloudflare, Released | news.ycombinator.com | 2024-02-28
-
Only XMR and GRIN. Everything else lacks transactional uniformity, or is centralized corpo garbage, or both!
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
Ockam
Orchestrate end-to-end encryption, cryptographic identities, mutual authentication, and authorization policies between distributed applications – at massive scale.
disclosure: I work at Ockam.
The Portals for Mac app is an example of the type of thing you could build using the open source stack of protocols. The README (linked by parent) links out to all of the relevant parts of the protocol documentation to explain how these work together. The NAT Traversal (https://github.com/build-trust/ockam/blob/develop/examples/a...) part of the README is probably the best explanation of why the free relay you get via Ockam Orchestrator is a useful part of this demo.
As for why would anyone trust this: The protocols are designed so you absolutely don't have to trust the relay. Trust is pushed out to the edges that you control and so you're not susceptible to a MITM attack if something like a relay is compromised. The protocol design for all of this is open and documented, and was independently audited by (IMO) some of the best in the business, Trail of Bits: https://docs.ockam.io/reference/protocols.
-
Project mention: SnarkOS: A Decentralized Operating System for Zero-Knowledge Applications | /r/hypeurls | 2023-06-27
-
I find that surprising, even in 2010 it was difficult to find illegal content on Freenet unless you were looking at it - and certainly in recent years it's virtually impossible, the default indexes are carefully vetted.
In any case, the original Freenet was never going to be a general-purpose replacement for today's centralized services. For the past few years we've been working on a sequel to Freenet, you can learn about it at https://freenet.org/.
-
CYFS
CYFS is the next-generation technology to build real Web3 by upgrading the basic protocol of Web (TCP/IP+DNS+HTTP),is short for CYberFileSystem. https://www.cyfs.com/, cyfs://cyfs/index_en.html.
-
If found this set of crates for other algorithms : https://github.com/RustCrypto/hashes And also found this set of crates that seem to include a lot of block cyphers : https://github.com/RustCrypto/block-ciphers Even if "des" is listed as a crate in this last link, it doesn't seem to provide the DES algorithm entirely.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
-
Project mention: What are the scenarios where "Rewrite it in Rust" didn't meet your expectations or couldn't be successfully implemented? | /r/rust | 2023-06-09
I also studied this question on FFI several weeks ago in terms of "rewrite part of the system in Rust". Unexpected results could be semantic issues (e.g., different error handling methods) or security issues (FFI could be a soundness hole). I suggest going through the issues of libraries that have started rewriting work such as rust-openssl or rustls (This is the one trying to rewrite in whole rust rather than using FFI; however, you will not be able to find the mapping function in the C version and compare them). I hope this helps!
-
exonum
An extensible open-source framework for creating private/permissioned blockchain applications
-
mundane
Mundane is a Rust cryptography library backed by BoringSSL that is difficult to misuse, ergonomic, and performant (in that order).
-
-
-
multi-party-ecdsa
Rust implementation of {t,n}-threshold ECDSA (elliptic curve digital signature algorithm).
-
Core Engineering Updates Merges: snarkVM https://github.com/AleoHQ/snarkVM/pull/1543: Refactors coinbase and snark in synthesizer https://github.com/AleoHQ/snarkVM/pull/1544: Moves Deployment, Execution, and Fee to the block folder https://github.com/AleoHQ/snarkVM/pull/1545: Moves Transaction executors to VM https://github.com/AleoHQ/snarkVM/pull/1546: Migrates finalize operation to the block folder https://github.com/AleoHQ/snarkVM/pull/1547: Introduce complete abstractions for Stack and Registers snarkOS https://github.com/AleoHQ/snarkOS/pull/2391: Reduce maximum handshake message size https://github.com/AleoHQ/snarkOS/pull/2392: Use blocking tasks for some heavy inbound operations https://github.com/AleoHQ/snarkOS/pull/2393: Feature-gate jemalloc https://github.com/AleoHQ/snarkOS/pull/2395: Jemalloc no default features https://github.com/AleoHQ/snarkOS/pull/2396: Deduplicate peer IP in logs https://github.com/AleoHQ/snarkOS/pull/2397: Enforce a 1s raw TCP connection timeout leo No substantial updates
-
Project mention: Speeding up lemmeknow by transposing Lazy<Vec<_>> | /r/rust | 2023-05-20
You might have heard about lemmeknow, if not, it's a tool that can identify any* text or analyze strings from file.
-
-
ezkl
ezkl is an engine for doing inference for deep learning models and other computational graphs in a zk-snark (ZKML). Use it from Python, Javascript, or the command line.
Project mention: Show HN: Turn ML/AI models into zero-knowledge proofs | news.ycombinator.com | 2023-10-14 -
mkdir -p $HOME/.nargo/bin && \ curl -o $HOME/.nargo/bin/nargo-x86_64-unknown-linux-gnu.tar.gz -L https://github.com/noir-lang/noir/releases/download/v0.17.0/nargo-x86_64-unknown-linux-gnu.tar.gz && \ tar -xvf $HOME/.nargo/bin/nargo-x86_64-unknown-linux-gnu.tar.gz -C $HOME/.nargo/bin/ && \ echo 'export PATH=$PATH:$HOME/.nargo/bin' >> ~/.bashrc && \ source ~/.bashrc
-
tfhe-rs
TFHE-rs: A Pure Rust implementation of the TFHE Scheme for Boolean and Integer Arithmetics Over Encrypted Data.
Yes, there are working FHE systems: e.g., TFHE-rs by Zama. Unfortunately, it requires a pretty low-level representation of the computation of interest (as a Boolean circuit), and the resulting performance overhead is a bit too high (e.g., comparing two 32-bit integers takes around 9 seconds on a single core), but IMO it's already in the state where a few select applications are becoming possible via FHE.
-
-
[package] name = "fibonacci" version = "0.1.0" edition = "2023" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [lib] name = "halo2_examples" path = "src/lib.rs" [features] dev-graph = ["halo2_proofs/dev-graph", "plotters"] [dependencies] halo2_proofs = { git = "https://github.com/zcash/halo2.git", rev = "a898d65ae3ad3d41987666f6a03cfc15edae01c4"} plotters = { version = "0.3.0", optional = true } tabbycat = { version = "0.1", features = ["attributes"], optional = true }
-
Project mention: (Why) is a toy password manager a too complex summer project? | /r/rust | 2023-06-03
I would say a toy (or personal-use-only) password manager is a relatively simple project. If we are to forget about the GUI parts, you need to determine serialization of your password database (bincode + serde should be enough) and how to encrypt it. For the latter you need only two algorithms: a password hash for deriving encryption key from password and optional salt (the latter is usually randomly generated and stored as a "key file"), and an AEAD algorithm for encrypting and decrypting serialized database. There are certain pitfalls with encryption (e.g. you should not reuse nonce with the same key, especially with modes like GCM) and with properly erasing sensitive data from memory, as well as preventing it from leaking to things like swap, but learning about those is part of the learning experience.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Rust Cryptography related posts
- Alt to Ngrok, Written in Rust
- Pingora: HTTP Server and Proxy Library, in Rust, by Cloudflare, Released
- Social Media First Amendment Cases
- AWS Libcrypto for Rust
- How we built a Swift app that uses Rust
- Boletín AWS Open Source, Christmas Edition
- Alternative to openssl for reqwest https with client certs.
-
A note from our sponsor - InfluxDB
www.influxdata.com | 28 Mar 2024
Index
What are some of the best open-source Cryptography projects in Rust? This list will help you:
Project | Stars | |
---|---|---|
1 | rustls | 5,375 |
2 | grin | 5,038 |
3 | Ockam | 4,323 |
4 | snarkOS | 3,746 |
5 | freenet-core | 2,013 |
6 | CYFS | 1,984 |
7 | hashes | 1,640 |
8 | rust-crypto | 1,357 |
9 | rust-openssl | 1,303 |
10 | exonum | 1,229 |
11 | mundane | 1,070 |
12 | s2n-quic | 1,056 |
13 | rosenpass | 982 |
14 | multi-party-ecdsa | 930 |
15 | snarkVM | 925 |
16 | lemmeknow | 843 |
17 | curve25519-dalek | 813 |
18 | ezkl | 798 |
19 | noir | 759 |
20 | tfhe-rs | 718 |
21 | ed25519-dalek | 656 |
22 | halo2 | 630 |
23 | RustCrypto | 627 |