lol alternatives and similar packages
Based on the "crypto" category.
Alternatively, view lol alternatives based on common mentions on social networks and blogs.
-
crypto-api
Haskell generic interface (type classes) for cryptographic algorithms -
crypto-pubkey
DEPRECATED - use cryptonite - Cryptographic public key related algorithms in haskell (RSA,DSA,DH,ElGamal) -
crypto-numbers
DEPRECATED - use cryptonite - Cryptographic number related function and algorithms -
crypto-random
DEPRECATED - use cryptonite - Cryptographic random class and entropy gatherer with safe API for haskell -
crypto-enigma
A Haskell Enigma machine simulator with rich display and machine state details. -
crypto-classical
A Haskell library for using and attacking Classical Encryption Schemes. -
crypto-random-effect
haskell library providing a random and securemem effect for extensible effects
Clean code begins in your IDE with SonarLint
Do you think we are missing an alternative of lol or a related project?
Popular Comparisons
README
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
.