Skip to content

Latest commit

 

History

History
66 lines (50 loc) · 1.55 KB

README.md

File metadata and controls

66 lines (50 loc) · 1.55 KB

TCN-PSI Cardinality - Go Go Report Card

TCN protocol based on Private Set Intersection Cardinality.

TCN client Documentation

import "github.com/bcebere/tcn-psi/client"

TCN server Documentation

import "github.com/bcebere/tcn-psi/client"

Tests

bazel test //tcn_psi/go/... --test_output=all

Benchmarks

bazel test //tcn_psi/go/... --test_arg=-test.bench=. --test_output=all

Integration

  • Add Bazel depends to your WORKSPACE, as indicated in the Usage section.
  • Add the server or the client to your deps in the BUILD file
go_library(
    name = "go_default_library",
    srcs = ["main.go"],
    deps = [
            "@org_openmined_tcn_psi//tcn_psi/go/server",
            "@org_openmined_tcn_psi//tcn_psi/go/client",
            ],
)
  • Import and use the library
package main
import (
    "fmt"
    "github.com/openmined/tcn-psi/client"
    "github.com/openmined/tcn-psi/server"
)

func main(){
    tcnServer, err := server.CreateWithNewKey()
    if err == nil {
        fmt.Println("server loaded")
    }

    tcnClient, err := client.Create()
    if err == nil  {
        fmt.Println("client loaded")
    }
}