All Projects → IBM → Fhe Toolkit Linux

IBM / Fhe Toolkit Linux

Licence: mit
IBM Fully Homomorphic Encryption Toolkit For Linux. This toolkit is a Linux based Docker container that demonstrates computing on encrypted data without decrypting it! The toolkit ships with two demos including a fully encrypted Machine Learning inference with a Neural Network and a Privacy-Preserving key-value search.

Projects that are alternatives of or similar to Fhe Toolkit Linux

Featherduster
An automated, modular cryptanalysis tool; i.e., a Weapon of Math Destruction
Stars: ✭ 876 (-21.99%)
Mutual labels:  cryptography, encryption, crypto
Discordcrypt
End-To-End File & Message Encryption For Discord
Stars: ✭ 150 (-86.64%)
Mutual labels:  security-tools, cryptography, encryption
Nsec
A modern and easy-to-use cryptographic library for .NET Core based on libsodium
Stars: ✭ 217 (-80.68%)
Mutual labels:  cryptography, encryption, crypto
Demo Twilio Backend Nodejs
A sample backend that demonstrates how to generate a Virgil JWT and Twilio token used for authentication with the Virgil and Twilio services
Stars: ✭ 128 (-88.6%)
Mutual labels:  cryptography, encryption, crypto
Securefs
Filesystem in userspace (FUSE) with transparent authenticated encryption
Stars: ✭ 518 (-53.87%)
Mutual labels:  cryptography, encryption, crypto
Padding Oracle Attacker
🔓 CLI tool and library to execute padding oracle attacks easily, with support for concurrent network requests and an elegant UI.
Stars: ✭ 136 (-87.89%)
Mutual labels:  cryptography, encryption, crypto
Cli
🧰 A zero trust swiss army knife for working with X509, OAuth, JWT, OATH OTP, etc.
Stars: ✭ 2,151 (+91.54%)
Mutual labels:  security-tools, cryptography, encryption
Helib
HElib is an open-source software library that implements homomorphic encryption. It supports the BGV scheme with bootstrapping and the Approximate Number CKKS scheme. HElib also includes optimizations for efficient homomorphic evaluation, focusing on effective use of ciphertext packing techniques and on the Gentry-Halevi-Smart optimizations.
Stars: ✭ 2,749 (+144.79%)
Mutual labels:  cryptography, encryption, crypto
Securitydriven.inferno
✅ .NET crypto done right. Professionally audited.
Stars: ✭ 501 (-55.39%)
Mutual labels:  cryptography, encryption, crypto
S2n Tls
s2n : an implementation of the TLS/SSL protocols
Stars: ✭ 4,029 (+258.77%)
Mutual labels:  cryptography, encryption, crypto
Noise
.NET Standard 1.3 implementation of the Noise Protocol Framework (revision 33 of the spec)
Stars: ✭ 124 (-88.96%)
Mutual labels:  cryptography, encryption, crypto
Acra
Database security suite. Database proxy with field-level encryption, search through encrypted data, SQL injections prevention, intrusion detection, honeypots. Supports client-side and proxy-side ("transparent") encryption. SQL, NoSQL.
Stars: ✭ 726 (-35.35%)
Mutual labels:  cryptography, encryption, crypto
Cryptogotchas
A collection of common (interesting) cryptographic mistakes.
Stars: ✭ 118 (-89.49%)
Mutual labels:  cryptography, encryption, crypto
Gun
An open source cybersecurity protocol for syncing decentralized graph data.
Stars: ✭ 15,172 (+1251.02%)
Mutual labels:  cryptography, encryption, crypto
Cryfs
Cryptographic filesystem for the cloud
Stars: ✭ 1,560 (+38.91%)
Mutual labels:  cryptography, encryption, crypto
Awesome Cryptography
A curated list of cryptography resources and links.
Stars: ✭ 3,475 (+209.44%)
Mutual labels:  cryptography, encryption, crypto
Maskbook
The portal to the new, open internet. ([I:b])
Stars: ✭ 691 (-38.47%)
Mutual labels:  cryptography, encryption, crypto
Virgil Crypto Php
Virgil PHP Crypto Library is a high-level cryptographic library that allows you to perform all necessary operations for secure storing and transferring data and everything required to become HIPAA and GDPR compliant.
Stars: ✭ 22 (-98.04%)
Mutual labels:  cryptography, encryption, crypto
Tomb
the Crypto Undertaker
Stars: ✭ 859 (-23.51%)
Mutual labels:  encryption, crypto
Simon Speck C
example C language implementation of SIMON and SPECK lightweight block ciphers.
Stars: ✭ 9 (-99.2%)
Mutual labels:  cryptography, crypto

IBM Fully Homomorphic Encryption Toolkit for Linux

The IBM Fully Homomorphic Encryption (FHE) Toolkit for Linux is packaged as Docker containers that make it easier to get started and experimenting with the Fully Homomorphic Encryption technology.

This repository contains all the scripts required to install and run the pre-packaged toolkits as a docker container. The toolkits comprise the IBM Homomorphic Encryption Library - HElib, an Integrated Development Environment (IDE), and the corresponding workspace containing the ready-to-run example code in a variety of supported toolkit editions. The editions supported are based on Centos, Fedora, or Ubuntu, or Alpine. Each toolkit edition provides access to the built-in IDE via a web browser on your host. For the more adventurous users, instructions to build and package the toolkit locally are also provided.

If you are instead looking for the IBM Fully Homomorphic Encryption Tookit for macOS/iOS that provide a native toolkit for Apple developers, it can be found here.

Supported Configurations

At this time, the toolkits support many Docker capable hosts such as most modern Linux distributions, macOS, Windows 10 Subsystem for Linux and z/OS Container Extensions. Other host operating systems with recent Docker software may work as well but are untested. On x86-64 based systems, we support all three operating system editions of the toolkit. For the s390x architecture, the toolkit presently supports the Ubuntu and Fedora Editions. We hope to offer other s390x operating system options for the toolkits soon.

Need Help to Get Started?

IBM Security Homomorphic Encryption Services can help you unlock the value of your sensitive data without decrypting it to help maintain your privacy and compliance controls. Our trusted advisors will offer education, expert support and testing environments to build your prototype applications.

Running the Toolkit

If you want to dive right in and get started installing a pre-built container available from Docker Hub and using the pre-configured IDE Workspace, please see the Getting Started Document.

Building the Toolkit

If you want to build and deploy the toolkit from scratch and perhaps customize the container to your needs, please see the Getting Started Advanced Document.

Documentation

If you are looking for Documentation to our APIs or more information about individual classes or methods, that can be found here

Feedback Survey

"IBM invites you to participate in our Advanced Security and Encryption Survey. This survey is designed to gather insights around the security challenges you or your organization face and better understand our users and serve you better. We will only use your feedback to improve the FHE Toolkit experience and inform future IBM security-focused products and services. IBM will not share your response data with any third parties. We look forward to your valuable feedback to improve the IBM Fully Homomorphic Encryption Toolkit for macOS, iOS, and Linux."

https://www.surveygizmo.com/s3/5731822/Advanced-Security-And-Encryption-Survey-2020

About this distribution

The remainder of this README file explains how the source code and project are organized for those who might want to contribute (also read contributing guidelines) to, or modify, the toolkit.

This toolkit installs the IDE and extensions required to compile, build, and run the included HElib based examples and any application you choose to write to exploit the homomorphic encryption technology. The end result is a containerized environment complete with the source code editor, making it easy for you to develop applications using HElib.

To preserve user privacy, automatic telemetry, and data collection by the IDE have been disabled in this distribution.

Docker is required to build the containerized toolkit. If you are new to Docker, we recommend starting with Docker Desktop.

Source Code Overview

This repository contains a set of Dockerfiles, scripts, and IDE configuration files to run the IBM FHE Toolkit for Linux. The toolkit runs in a Linux docker container and uses the IDE as a workspace and development environment accessible through a browser in your host system.

The toolkit is built from one of the following parent images depending on the platform specified to the setup script:

  • fedora:32
  • centos:8
  • ubuntu:20.04
  • alpine:3.12

The same setup script also downloads HElib and a required dependency Number Theory Library (NTL). These are stored in <directory where you cloned the toolkit>/DEPENDENCIES in the host machine.

The HElib and NTL distributions are built and installed globally in /usr/local as a shared library in the toolkit docker container making them available to include in your program. HElib and NTL also depend on the GNU Multiple Precision Arithmetic Library (GMP), which is pre-installed when building the docker container.

The demo application source code is copied from HElib/examples into a workspace directory /opt/IBM/FHE-Workspace. The HElib source distribution can be found in /opt/IBM/FHE-distro/HElib. Both may be accessed through the IDE workspace running in the toolkit container, accessed through the web browser on your desktop. Always use the workspace when trying to work with any of these components.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].