All Projects → cpeikert → Lol

cpeikert / Lol

Λ ⚬ λ: Functional Lattice Cryptography

Programming Languages

haskell
3896 projects

Projects that are alternatives of or similar to Lol

Torus Node
Torus nodes run a Distributed Key Generation protocol amongst themselves that allows for the generation, storage and assignment of cryptographic keys
Stars: ✭ 148 (-12.43%)
Mutual labels:  cryptography
Subtle
Pure-Rust traits and utilities for constant-time cryptographic implementations.
Stars: ✭ 157 (-7.1%)
Mutual labels:  cryptography
Pass Winmenu
An easy-to-use Windows interface for pass
Stars: ✭ 160 (-5.33%)
Mutual labels:  cryptography
Auth Adt
Authenticated Data Structures Generically
Stars: ✭ 150 (-11.24%)
Mutual labels:  cryptography
Bot18
Bot18 is a high-frequency cryptocurrency trading bot developed by Zenbot creator @carlos8f
Stars: ✭ 157 (-7.1%)
Mutual labels:  cryptography
Memguard
Secure software enclave for storage of sensitive information in memory.
Stars: ✭ 2,036 (+1104.73%)
Mutual labels:  cryptography
Branca
🔑 Secure alternative to JWT. Authenticated Encrypted API Tokens for Go.
Stars: ✭ 147 (-13.02%)
Mutual labels:  cryptography
Bitcoinecdsa.php
PHP library to generate BTC addresses and signatures from private keys.
Stars: ✭ 169 (+0%)
Mutual labels:  cryptography
Login With Metamask Demo
Demo project for "One-click Login with Blockchain: A MetaMask Tutorial"
Stars: ✭ 157 (-7.1%)
Mutual labels:  cryptography
Enacl
Erlang bindings for NaCl / libsodium
Stars: ✭ 159 (-5.92%)
Mutual labels:  cryptography
Discordcrypt
End-To-End File & Message Encryption For Discord
Stars: ✭ 150 (-11.24%)
Mutual labels:  cryptography
Argon2rs
The pure-Rust password hashing library running on Argon2.
Stars: ✭ 157 (-7.1%)
Mutual labels:  cryptography
Fastecdsa
Python library for fast elliptic curve crypto
Stars: ✭ 158 (-6.51%)
Mutual labels:  cryptography
Dontclickshit
Як не стати кібер-жертвою
Stars: ✭ 149 (-11.83%)
Mutual labels:  cryptography
Pwnshop
Exploit Development, Reverse Engineering & Cryptography
Stars: ✭ 167 (-1.18%)
Mutual labels:  cryptography
Simplednscrypt
A simple management tool for dnscrypt-proxy
Stars: ✭ 1,901 (+1024.85%)
Mutual labels:  cryptography
Practical Cryptography For Developers Book
Practical Cryptography for Developers: Hashes, MAC, Key Derivation, DHKE, Symmetric and Asymmetric Ciphers, Public Key Cryptosystems, RSA, Elliptic Curves, ECC, secp256k1, ECDH, ECIES, Digital Signatures, ECDSA, EdDSA
Stars: ✭ 2,400 (+1320.12%)
Mutual labels:  cryptography
Solcrypto
Solidity crypto libraries, ring signatures, proof of knowledge, packed signatures etc. with matching Python implementations for secp256k1 and (alt)BN-256
Stars: ✭ 170 (+0.59%)
Mutual labels:  cryptography
Kes
KES is a simple, stateless and distributed key-management system
Stars: ✭ 168 (-0.59%)
Mutual labels:  cryptography
Libsodium Jni
(Android) Networking and Cryptography Library (NaCL) JNI binding. JNI is utilized for fastest access to native code. Accessible either in Android or Java application. Uses SWIG to generate Java JNI bindings. SWIG definitions are extensible to other languages.
Stars: ✭ 157 (-7.1%)
Mutual labels:  cryptography

Build Status

This branch is master. It should always be compiling!


This repository contains several Haskell libraries:

  • The lol directory contains the Haskell library Λ ⚬ λ (Lol), described in the paper Λ ⚬ λ: Functional Lattice Cryptography. More documentation can be found on Hackage. This is the core of the project, and you'll need to install it to use anything else.

  • The lol-apps directory contains example cryptographic applications built using Lol. If you are interested in using our example applications, you will need this library. It is on Hackage here. If you are just writing your own applications, you don't need to install this library.

  • The lol-cpp directory contains a C++ backend "tensor" implementation.

Developing in the Lol ecosystem:

Compiling the Lol packages takes a long time. If you are just doing development, you probably don't need to compile (with optimizations) the whole ecosystem. Instead, you can develop interactively. Run

> stack build lol lol-cpp lol-apps lol-tests lol-benches --dependencies-only

to build all third-party dependencies of the Lol ecosystem, then you can develop with

> ./ghci path/to/file

This command builds the C++ library for lol-cpp and loads all imported files from the Lol ecosystem from source.

You can load all top-level executables with ./ghci AllMain.hs.

Installing Lol:

If you want to run benchmarks or tests, you'll need to compile the ecosystem with optimizations. The easiest way to do this is to use stack, which is included in the Haskell Platform.

> stack setup
> stack build lol

or

> stack setup
> stack install lol-apps

You can run unit tests with stack test <package>. You can run microbenchmarks with stack bench <package>. Currently lol-cpp and lol-apps have tests and benchmarks.

The lol-apps package includes examples of how to use each application. These are built automatically when you install lol-apps.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].