An open API service indexing awesome lists of open source software.

https://github.com/primefactor-io/paillier

Implementation of the Paillier cryptosystem alongside its homomorphic operations
https://github.com/primefactor-io/paillier

cryptography cryptography-algorithms homomorphic-cryptography-scheme homomorphic-encryption homomorphic-encryption-library paillier paillier-cryptosystem

Last synced: 9 days ago
JSON representation

Implementation of the Paillier cryptosystem alongside its homomorphic operations

Awesome Lists containing this project

README

        

# Paillier

Implementation of the [Paillier Cryptosystem](https://en.wikipedia.org/wiki/Paillier_cryptosystem).

Alongside regular encryption and decryption, the implementation also supports homomorphic operations such as the addition of two underlying plaintexts as well as the multiplication of an underlying plaintext with a second plaintext value.

There are also two proof implementations. One allows for proving knowledge of an Nth Root while the second proof can be used to prove that an encrypted value falls into a certain range (range proof).

## Setup

1. `git clone `
2. `asdf install` (optional)
3. `go test -count 1 -race ./...`

## Useful Commands

```sh
go run
go build []

go test [][/...] [-v] [-cover] [-race] [-short] [-parallel ]
go test -bench=. [] [-count ] [-benchmem] [-benchtime 2s] [-memprofile ]

go test -coverprofile []
go tool cover -html
go tool cover -func

go fmt []

go mod init []
go mod tidy
```

## Useful Resources

- [Go - Learn](https://go.dev/learn)
- [Go - Documentation](https://go.dev/doc)
- [Go - A Tour of Go](https://go.dev/tour)
- [Go - Effective Go](https://go.dev/doc/effective_go)
- [Go - Playground](https://go.dev/play)
- [Go by Example](https://gobyexample.com)
- [100 Go Mistakes and How to Avoid Them](https://100go.co)