8000 GitHub - expwnent/Lol: A library for ring-based lattice cryptography
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

expwnent/Lol

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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 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 challenges directory contains code to generate and verify RLWE and RLWR challenges, which are described here.

  • The compiler directory contains an unmaintained, primitive FHE compiler for Lol. Eventually, this will work in conjuction with lol-apps to transform plaintext descriptions of algorithms into their homomorphic counterparts.

Installing lol:

The easiest way to install Lol is to use stack, which is included in the Haskell Platform.

> stack setup
> stack install lol

You can run unit tests with stack test lol. You can run microbenchmarks with stack bench lol. You can configure the benchmarks by editing lol/benchmarks/BenchConfig.hs.

Installing lol-apps:

> stack install lol-apps

You can run unit tests with stack test lol-apps. You can run benchmarks with stack bench lol-apps. An example of how to use each application is included and is built automatically when you install lol-apps.

About

A library for ring-based lattice cryptography

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Haskell 92.2%
  • C++ 6.2%
  • Other 1.6%
0