Popularity
3.3
Declining
Activity
0.0
Stable
123
14
13
Programming language: Rust
License: MIT License
Tags:
Cryptography
suruga alternatives and similar packages
Based on the "Cryptography" category.
Alternatively, view suruga alternatives based on common mentions on social networks and blogs.
-
Ockam
Orchestrate end-to-end encryption, cryptographic identities, mutual authentication, and authorization policies between distributed applications โ at massive scale. -
exonum
An extensible open-source framework for creating private/permissioned blockchain applications -
sodiumoxide
DISCONTINUED. [DEPRECATED] Sodium Oxide: Fast cryptographic library for Rust (bindings to libsodium) -
RustCrypto Elliptic Curves
Collection of pure Rust elliptic curve implementations: NIST P-224, P-256, P-384, P-521, secp256k1, SM2 -
miscreant
DISCONTINUED. Meta-repository for Miscreant: misuse-resistant symmetric encryption library with AES-SIV (RFC 5297) and AES-PMAC-SIV support -
orion
DISCONTINUED. Usable, easy and safe pure-Rust crypto [Moved to: https://github.com/orion-rs/orion] -
recrypt
A set of cryptographic primitives for building a multi-hop Proxy Re-encryption scheme, known as Transform Encryption. -
schannel-rs
Schannel API-bindings for rust (provides an interface for native SSL/TLS using windows APIs)
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.
Promo
www.influxdata.com
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of suruga or a related project?
README
suruga is Rust implementation of TLS 1.2.
It currently implements some core parts of TLS 1.2, NIST P-256 ECDHE and chacha20-poly1305.
Usage
extern crate suruga;
use std::io::prelude::*;
use std::net::TcpStream;
fn main() {
test().unwrap();
}
fn test() -> suruga::tls_result::TlsResult<()> {
let stream = try!(TcpStream::connect("www.google.com:443"));
let mut client = try!(suruga::TlsClient::from_tcp(stream));
let _len = try!(client.write(b"GET / HTTP/1.1\r\nHost: www.google.com\r\n\r\n"));
let mut msg = vec![0u8; 100];
try!(client.read(&mut msg));
let msg = String::from_utf8_lossy(&msg);
println!("msg: {}", msg);
try!(client.close());
Ok(())
}