Commit bc702883 authored by Gerard Ryan's avatar Gerard Ryan

Merge branch 'v1.4.1' into 'master'

1.4.1 update See merge request !7
parents 38201a3e 2631ceb5
...@@ -75,7 +75,7 @@ endif ...@@ -75,7 +75,7 @@ endif
ROOTDIR := $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST)))) ROOTDIR := $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))
PACKAGE := palisade PACKAGE := palisade
VERSION := 1.4.0 VERSION := 1.4.1
#build directory #build directory
BUILDDIR := build BUILDDIR := build
......
...@@ -30,4 +30,4 @@ You build the entirety of PALISADE by running make. There are various command li ...@@ -30,4 +30,4 @@ You build the entirety of PALISADE by running make. There are various command li
* BINDIR=directory builds the library with a different target directory * BINDIR=directory builds the library with a different target directory
* BACKEND=n builds the library with MATHBACKEND set to n (you may want to touch the src/core/lib/math/backend.h file to force the build) * BACKEND=n builds the library with MATHBACKEND set to n (you may want to touch the src/core/lib/math/backend.h file to force the build)
* COVERAGE=any builds the library with coverage testing enabled * COVERAGE=any builds the library with coverage testing enabled
* OMP=n builds the library with OMP flag set to n; currently n can be any value; turns on loop parallelization for the Matrix class in src/core/lib/math; additional levels of parallelization will be added in the future. * MEM=any builds the library without optimizations
\ No newline at end of file
02/11/2018: PALISADE v1.4.1 is released
Fixes a bug affecting the IBE and CP-ABE implementations (some unit tests for IBE/CP-ABE were entering in an infinite loop in about 10% of the runs).
12/31/2018: PALISADE v1.4.0 is released 12/31/2018: PALISADE v1.4.0 is released
* Adds the Gentry-Peikert-Vaikuntanathan (GPV) digital signature scheme * Adds the Gentry-Peikert-Vaikuntanathan (GPV) digital signature scheme
......
...@@ -38,7 +38,7 @@ PROJECT_NAME = "PALISADE Lattice Crypto Library" ...@@ -38,7 +38,7 @@ PROJECT_NAME = "PALISADE Lattice Crypto Library"
# could be handy for archiving the generated documentation or if some version # could be handy for archiving the generated documentation or if some version
# control system is used. # control system is used.
PROJECT_NUMBER = "v1.4.0" PROJECT_NUMBER = "v1.4.1"
# Using the PROJECT_BRIEF tag one can provide an optional one line description # Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer a # for a project that appears at the top of each page and should give viewer a
......
...@@ -39,6 +39,10 @@ ...@@ -39,6 +39,10 @@
template <class Element> template <class Element>
class ABEContext{ class ABEContext{
public: public:
/*
*@brief Default destructor
*/
~ABEContext(){DiscreteFourierTransform::Reset();}
/* /*
*@brief Default constructor *@brief Default constructor
*/ */
......
...@@ -31,7 +31,7 @@ namespace lbcrypto{ ...@@ -31,7 +31,7 @@ namespace lbcrypto{
static std::map<SecurityLevel,std::pair<usint,usint>> IBEMinRingSizeMap = { static std::map<SecurityLevel,std::pair<usint,usint>> IBEMinRingSizeMap = {
{HEStd_128_classic,{1024,2}}, {HEStd_128_classic,{1024,2}},
{HEStd_192_classic,{2048,512}}, {HEStd_192_classic,{2048,512}},
{HEStd_256_classic,{2048,64}} {HEStd_256_classic,{2048,2}}
}; };
//Map holding minimum ring size and base in CPABE for the given security level and number of attributes //Map holding minimum ring size and base in CPABE for the given security level and number of attributes
...@@ -41,16 +41,16 @@ static std::map<std::pair<SecurityLevel,usint>,std::pair<usint,usint>> CPABEMinR ...@@ -41,16 +41,16 @@ static std::map<std::pair<SecurityLevel,usint>,std::pair<usint,usint>> CPABEMinR
{{HEStd_128_classic,16},{1024,2}}, {{HEStd_128_classic,16},{1024,2}},
{{HEStd_128_classic,20},{1024,2}}, {{HEStd_128_classic,20},{1024,2}},
{{HEStd_128_classic,32},{1024,2}}, {{HEStd_128_classic,32},{1024,2}},
{{HEStd_192_classic,6},{2048,512}}, {{HEStd_192_classic,6},{2048,128}},
{{HEStd_192_classic,8},{2048,512}}, {{HEStd_192_classic,8},{2048,128}},
{{HEStd_192_classic,16},{2048,512}}, {{HEStd_192_classic,16},{2048,128}},
{{HEStd_192_classic,20},{2048,512}}, {{HEStd_192_classic,20},{2048,128}},
{{HEStd_192_classic,32},{2048,512}}, {{HEStd_192_classic,32},{2048,128}},
{{HEStd_256_classic,6},{2048,1024}}, {{HEStd_256_classic,6},{2048,2}},
{{HEStd_256_classic,8},{2048,1024}}, {{HEStd_256_classic,8},{2048,2}},
{{HEStd_256_classic,16},{2048,1024}}, {{HEStd_256_classic,16},{2048,2}},
{{HEStd_256_classic,20},{2048,1024}}, {{HEStd_256_classic,20},{2048,2}},
{{HEStd_256_classic,32},{2048,1024}}, {{HEStd_256_classic,32},{2048,2}},
}; };
} }
#endif #endif
\ No newline at end of file
...@@ -46,7 +46,7 @@ const int32_t N_MAX = 16384; ...@@ -46,7 +46,7 @@ const int32_t N_MAX = 16384;
const double SIGMA = std::sqrt(std::log(2 * N_MAX / DG_ERROR) / M_PI); const double SIGMA = std::sqrt(std::log(2 * N_MAX / DG_ERROR) / M_PI);
//Spectral norm for preimage samples //Spectral norm for preimage samples
const double SPECTRAL_CONSTANT = 1.3; const double SPECTRAL_CONSTANT = 1.8;
const auto SPECTRAL_BOUND = [](uint64_t n, uint64_t k, uint64_t base) -> double { const auto SPECTRAL_BOUND = [](uint64_t n, uint64_t k, uint64_t base) -> double {
return SPECTRAL_CONSTANT*(base+1)*SIGMA*SIGMA*(std::sqrt(n*k) + std::sqrt(2*n) + 4.7); return SPECTRAL_CONSTANT*(base+1)*SIGMA*SIGMA*(std::sqrt(n*k) + std::sqrt(2*n) + 4.7);
}; };
......
...@@ -28,7 +28,7 @@ ...@@ -28,7 +28,7 @@
#define SRC_VERSION_H_ #define SRC_VERSION_H_
#include <string> #include <string>
#define PALISADE_VERSION "v1.4.0" #define PALISADE_VERSION "v1.4.1"
/** /**
* Returns PALISADE Version string * Returns PALISADE Version string
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment