Skip to content

Releases: homenc/HElib

HElib 2.3.0, July 2023

18 Jul 14:29
3e337a6
Compare
Choose a tag to compare

HElib 2.3.0, July 2023

(tagged as v2.3.0)

  • Added support for processing queries with the NOT operator homomorphically.

  • Introduced the NOT Expr, and a corresponding inline NOT QueryExpr Within the weights, or CNF, framework:

    • Extensions to the ExpandOr() function to queries with NOT operators, via a new function negate()
    • New function Tidy() which eliminates duplicate columns in inner clauses, or columns and their negation in inner clauses that can be created by squashing ORs. It also eliminates empty clauses,
    • Put the code from build() which constructed the corresponding weights into a new function buildWeights(), and extended this to the case there are negations of columns
    • New framework which evaluates queries homomorphically directly from the string:
    • New function removeOr() within the QueryBuilder class which generates a new query string which is logically equivalent, but only has Ands and Nots
    • Overloaded contains() function that takes a string instead of a QueryType, and evaluates the RPN directly using a stack of ciphertexts
  • Updated CI

    • Deprecated build&test on Ubuntu 20.04
    • Updated build&test on Ubuntu 22.04
    • Added build&test on macOS 12 and MacOS13
  • Bug Fixes

Co-authored-by: @TabOg
Co-authored-by: @faberga
Co-authored-by: @jlhcrawford
Co-authored-by: @hamishun

HElib 2.2.2, December 2022

06 Dec 14:53
d7be6f0
Compare
Choose a tag to compare

(tagged as v2.2.2)

Bug Fixes

  • Fix for clang 14 error
  • Minor fix in multiplyPtxt
  • Fix Queryambigous OR
  • Fix in partialMatch

Updates

  • Optimizations of Frobenius automorphisms
  • Multi-threaded reader for PSI iO
  • Update HEXL version
  • Update CI to latest gcc + clang compilers
  • Update CI to test on Ubuntu 22.04
  • Make assignment of contains Or stick in query builder
  • Extension of HElib's PSI/partial match engine to add functionality that allows HEQL queries to be passed in at runtime via strings.
  • IO utility for databases and queries
  • Documentation updates

Co-authored-by: @jlhcrawford
Co-authored-by: @TabOg
Co-authored-by: @hamishun
Co-authored-by: @faberga
Co-Authored-by: @sajetan

Full Changelog: v2.2.1...v2.2.2

HElib 2.2.1, October 2021

01 Oct 13:25
f0e3e01
Compare
Choose a tag to compare

(tagged as v2.2.1)

  • Improved NTT benchmark code
  • CI update
  • Improvements to partial match logic
  • Bug fixes

Co-authored-by: @fboemer
Co-authored-by: @jlhcrawford
Co-authored-by: @hamishun

HElib 2.2.0, September 2021

08 Sep 17:05
ca470eb
Compare
Choose a tag to compare

HElib 2.2.0, September 2021

(tagged as v2.2.0)

  • Intel HEXL integration (experimental)
    • HEXL NTT acceleration for m as a power of 2
    • HEXL acceleration to fundamental ciphertext operations
    • Documentation update
  • Update NTL dependency to version 11.5.1
  • Update GMP dependency to version 6.2.1
  • Updates to benchmarks
  • Bug fixes

Co-authored-by: @hamishun
Co-authored-by: @jlhcrawford
Co-authored-by: @faberga
Co-authored-by: @fboemer

HElib 2.1.0, March 2021

05 Mar 23:34
39fde87
Compare
Choose a tag to compare

HElib 2.1.0, March 2021

(tagged as v2.1.0)

  • Deprecated APIs
    • Documentation update: deprecated list
    • Marked functions as deprecated
    • Updated examples
  • Documentation update: PtxtArray JSON IO
  • Bug fixes

Co-Authored-by: @jlhcrawford
Co-Authored-by: @dubek
Co-Authored-by: @mhillenbrand

HElib 2.0.0, January 2021

19 Jan 20:13
2e408fa
Compare
Choose a tag to compare

HElib 2.0.0, January 2021

(tagged as v2.0.0)

  • Contains API changes that are not backwards compatible with v1.x.x
    • Changes to Context API
    • Must use ContextBuilder to build context
    • New serialization APIs: binary and JSON
  • CKKS coding tutorials
  • Bug fixes

Co-Authored-by: @faberga
Co-Authored-by: @jlhcrawford
Co-Authored-by: @shaih
Co-Authored-by: @hamishun
Co-Authored-by: @victorshoup
Co-Authored-by: @esteffin

HElib 1.3.1, December 2020

30 Dec 09:56
060d36d
Compare
Choose a tag to compare

HElib 1.3.1, December 2020

(tagged as v1.3.1)

December 2020

  • Refactoring of CKKS Mitigation
  • Re-instated Ctxt isCorrect
  • Ctxt Conjugation fix
  • Added GMP and NTL alternative download locations

Co-Authored-by: Flavio Bergamaschi anadyomeni@gmx.com
Co-authored-by: Jack Crawford jack.crawford@sky.com
Co-Authored-by: Shai Halevi shaih@alum.mit.edu
Co-authored-by: Hamish Hunt hamishun@gmail.com
Co-authored-by: Victor Shoup shoup@cs.nyu.edu
Co-authored-by: Enrico Steffinlongo enrylongo@gmail.com

HElib 1.3.0, December 2020

10 Dec 20:38
d50e701
Compare
Choose a tag to compare

HElib 1.3.0, December 2020

(tagged as v1.3.0)

November-December 2020

  • Mitigation for the CKKS vulnerability recently observed by Li and Micciancio
  • Context Builder using builder pattern
  • HElib now requires C++17

Co-Authored-by: Flavio Bergamaschi anadyomeni@gmx.com
Co-authored-by: Jack Crawford jack.crawford@sky.com
Co-Authored-by: Shai Halevi shaih@alum.mit.edu
Co-authored-by: Hamish Hunt hamishun@gmail.com
Co-authored-by: Victor Shoup shoup@cs.nyu.edu
Co-authored-by: Enrico Steffinlongo enrylongo@gmail.com

HElib 1.2.0, November 2020

26 Nov 15:46
f8230cd
Compare
Choose a tag to compare

HElib 1.2.0, November 2020

(tagged as v1.2.0)

October-November 2020

  • Mitigation for potential CKKS vulnerability.
  • Additional API changes for parameters to the CKKS encoding functions.
  • New infrastructure for benchmarks
  • Updated ClonedPtr
  • Additional Ctxt tests
  • Bug Fixes:

Co-Authored-by: Flavio Bergamaschi anadyomeni@gmx.com
Co-authored-by: Jack Crawford jack.crawford@sky.com
Co-Authored-by: Shai Halevi shaih@alum.mit.edu
Co-authored-by: Hamish Hunt hamishun@gmail.com
Co-authored-by: Victor Shoup shoup@cs.nyu.edu
Co-authored-by: Enrico Steffinlongo enrylongo@gmail.com

HElib 1.1.0, October 2020

02 Oct 19:34
Compare
Choose a tag to compare

HElib 1.1.0, October 2020

(tagged as v1.1.0)

June-October 2020

  • Updated & enhanced security level estimation
  • Experimental Tool for computing sample parameters for CKKS
  • Utils
    • create-context
    • encrypt/decrypt
    • encode/decode examples
  • Improvements to noise management
  • New examples and mini-tutorial on private preserving db query
  • Configurable PSI/PIR beta
  • Some tools in misc/ for code formatting and algebra generation
  • Improved testing procedures
  • Move to CMake >= 3.10.2
  • Improved documentation
  • Doxygen improved look and feel
  • Multi platform and multi configuration Travis-CI pipeline
  • Warning messages are now logged (default helib.log)
  • Bug Fixes:
    • CKKS divide by zero
    • version.h
    • compatibility with cmake 3.10.x

Co-authored-by: @faberga
Co-authored-by: @hamishun
Co-authored-by: @esteffin
Co-authored-by: @jlhcrawford
Co-authored-by: @shaih
Co-authored-by: @victorshoup