Coder Social home page Coder Social logo

clnnn / seal-euclidean-distance Goto Github PK

View Code? Open in Web Editor NEW
3.0 2.0 1.0 2.64 MB

๐Ÿ”’ Homomorphic two dimensional Euclidean distance computation using SEAL

JavaScript 12.65% TypeScript 74.94% HTML 10.75% SCSS 1.66%
seal homomorphic-encryption privacy cloud sample-app homomorphic-cryptography-scheme

seal-euclidean-distance's Introduction

Homomorphic two dimensional Euclidean distance computation using SEAL

Animation

Table of contents

Table of contents generated with markdown-toc

Introduction

Homomorphic encryption (HE) is a form of encryption that permits users to perform computations on its encrypted data without first decrypting it. These resulting computations are left in an encrypted form which, when decrypted, result in an identical output to that produced had the operations been performed on the unencrypted data. Homomorphic encryption can be used for privacy-preserving outsourced storage and computation. (Source)

In this application the Euclidean distance is computed on a remote server using encrypted data. Only the client can see the initial data and the final result.

Architecture

Current Architecture

Technologies involved

Run

node.js is required both for client-side and server-side

Client

  1. cd client
  2. npm install
  3. npm start

Server

  1. cd cloud
  2. npm install
  3. npm start

Remarks

  • This is just a Proof-of-Concept in order to test how homomorphic encryption can be used in web applications
  • The square root operator that is used in the Euclidean distance formula is computed on the client-side using Math.sqrt(..) due library limitations
  • HE seems to be good candidate for future applications that are doing compute-intensive operations on private data

seal-euclidean-distance's People

Contributors

clnnn avatar dependabot[bot] avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

zubeydeulukok

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.