Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
  • This project
    • Loading...
  • Sign in / Register
PALISADE
PALISADE
  • Project
    • Project
    • Details
    • Activity
    • Cycle Analytics
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Charts
  • Issues 0
    • Issues 0
    • List
    • Board
    • Labels
    • Milestones
  • Merge Requests 0
    • Merge Requests 0
  • CI / CD
    • CI / CD
    • Pipelines
    • Schedules
  • Wiki
    • Wiki
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Commits
  • Issue Boards
  • Palisade
  • PALISADEPALISADE
  • Wiki
  • Home

Home

Last edited by Yuriy Polyakov Oct 08, 2019
Page history

The PALISADE repo has moved to GitLab.

The new location is https://gitlab.com/palisade/palisade-release.

Welcome to the Palisade Wiki

This wiki is a collection of useful information for users. We welcome additional material from the community. Please send any suggestions, additional suggested documentation and general correspondence to

  • PALISADE Project palisade@njit.edu

or

  • PALISADE Project Leads:
    • Prof. Kurt Rohloff rohloff@njit.edu
    • Prof. Yuriy Polyakov polyakov@njit.edu
    • Mr. Gerard Ryan gwryan@njit.edu

PALISADE Introduction

PALISADE is an open-source library for lattice cryptography. It is high modular, with a core library of lattice cryptography primitives that support multiple protocols for public-key encryption, homomorphic encryption, digital signature schemes, proxy re-encryption and program obfuscation. The PALISADE library is highly portable into commodity computing and hardware environments, including Windows, Linux, MacOS and Android environments. The PALISADE library has no major external software library dependencies.

The current version of the PALISADE user manual is available here.

Getting Started with PALISADE

To become engaged with the PALISADE project, we recommend that you take the following steps:

  1. Set up your build environment
  2. Explore the PALISADE library directory structure
  3. Use the PALISADE library
  4. Understand our PALISADE development plans
  5. Contribute improvements to the PALISADE library

Programmers Notes

Here are some notes that we hope developers will find useful:

  • Serialization and Deserialization
  • Exceptions

Modifying and Improving PALISADE

We encourage you to modify and improve upon PALISADE.

  • This documents describes how you can contribute improvements to the PALISADE library

Note that we try to conform to a uniform programming style. We created and program PALISADE using a modification of the Google C++ programming style guide. We recommend that you follow this guide if you modify or otherwise improve PALISADE.

  • Please find information on the PALISADE Programming Style and Design Guide here.

License Information

The PALISADE library uses the 2-clause BSD license which makes it easier for companies and other organizations to use the software and incorporate it into products without worry of entangling and distracting licensing issues.

  • The PALISADE license can be seen here.

Thanks to Our Contributors

Members of the following organizations are or have been contributors to the PALISADE library:

  • NJIT (New Jersey Institute of Technology)
  • MIT (Massachusetts Institute of Technology)
  • Raytheon BBN Technologies
  • Duality Technologies
  • UCSD (University of California San Diego)
  • Perspecta Labs / Applied Communication Sciences (ACS) / Vencore Labs
  • LGS Innovations (Lucent Government Systems)
  • Sabanci University

Thanks to Our Sponsors

PALISADE is being developed with the generous support of our sponsors on the following projects:

  • DARPA SAFEWARE (2015-present) : Sponsored by the Defense Advanced Research Projects Agency (DARPA) and the Army Research Laboratory (ARL) under Contract Numbers W911NF-15-C-0226 and W911NF-15-C-0233. The views expressed are those of the authors and do not necessarily reflect the official policy or position of the Department of Defense or the U.S. Government.
  • DARPA YFA MARSHAL (2017-present)
  • Sloan Foundation (2017-present)
  • IARPA RAMPARTS (2016-present) : This research is based upon work supported in part by the Office of the Director of National Intelligence (ODNI), Intelligence Advanced Research Projects Activity (IARPA). The views and conclusions contained herein are those of the authors and should not be interpreted as necessarily representing the official policies, either express or implied, of ODNI, IARPA, or the U.S. Government. The U.S. Government is authorized to reproduce and distribute reprints for governmental purposes notwithstanding any copyright annotation therein.
  • ONR (2018-2019)
  • NIH SBIR GEARS (2018)
  • NSA CAE (2015-2016) : Project sponsored by the National Security Agency under Grant H98230-15-1-0274. The United States Government is authorized to reproduce and distribute reprints notwithstanding any copyright notice herein.
  • Simons Foundation (2015)
Clone repository
  • Building_palisade_with_the_ntl_gmp_backend_in_linux
  • Contributing improvements
  • How to setup the palisade build environment
  • Library directory structure
  • Linux environment setup for palisade
  • Palisade development plans
  • Palisade license
  • Palisade programming style design guide
  • Use the library
  • Configure gmp
  • Configuring eclipse for cplusplus11
  • Git setup
  • Home
  • How to build afs
  • How to build in linux
  • How to rebase from master
  • How to serialize
  • How to setup linux
  • How to setup doxygen windows
  • How to setup vs2015
  • How to setup windows gcc eclipse
  • Linux profiling
  • Palisade exceptions
  • Palisade on vm
More Pages

New Wiki Page

Tip: You can specify the full path for the new file. We will automatically create any missing directories.