Skip to content

Pro7ech/lago

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LAGO: Lattice Cryptography Library in Golang

This package provides a toolbox of lattice-based cryptographic primitives for Go. The library is still at an experimental stage and should be used for research purposes only.

The LAGO subpackages from the lowest to the highest abstraction level and their provided functionalities are as follows:

  • bigint: Modular arithmetic operations for big integers.
  • bigint_crt : place holder name, package currently being developped. Aims to manage big integers with their CRT representation.
  • polynomial: Modular arithmetic operations for polynomials, Number Theoretic Transformation (NTT).
  • ring: Modular arithmetic operations for polynomials over rings, Gaussian sampling.
  • crypto: Fan-Vercauteren (FV) homomorphic encryption/decryption.
  • encoding: Encode/decode messages to/from plaintexts.

Examples

main.go gives an example on how to use this library. In each subpackage you can find additional test files documenting further usage approaches.

License

The LAGO Source code is released under MIT license, see the file LICENSE for the full text.

About

Lattice Cryptography Library in Golang

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Go 100.0%