8000 GitHub - ZBCccc/Aura: The go implementation of Aura.
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

ZBCccc/Aura

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AURA: The pure Go implementation of SSE

The go implementation of Aura, cite from the paper Practical Non-Interactive Searchable Encryption with Forward and Backward Privacy.

Features

  • Secure search over encrypted data
  • Dynamic updates (insert and delete operations)
  • Bloom filter optimization for deletion
  • GGM tree based key derivation
  • AES encryption for data protection

Architecture

The system consists of three main components:

  • SSE Client: Handles encryption, search token generation and update operations
  • SSE Server: Stores encrypted index and performs search operations
  • GGM Tree: Provides efficient key derivation mechanism

Installation

To Use AURA, make sure you have Go 1.21 or later installed, then run:

go get github.com/ZBCccc/Aura

Usage

  1. Initialize the Client: Set up the SSE client to handle encryption and token generation.
  2. Perform Searches: Use the client to generate search tokens and query the SSE server.
  3. Update Data: Insert or delete data dynamically using the client.
  4. import "github.com/ZBCccc/Aura/Core/SSEClient"
    // Create a new SSE client
    client := sseclient.NewSSEClient()
    // Insert a document
    client.Update(util.Insert, "keyword", "document1")
    // Search for documents
    results := client.Search("keyword")
    // Delete a document
    client.Update(util.Delete, "keyword", "document1")

About

The go implementation of Aura.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

0