diff --git a/security/palisade/Makefile b/security/palisade/Makefile index 8b0a9374bc17..32c8e2fb566f 100644 --- a/security/palisade/Makefile +++ b/security/palisade/Makefile @@ -1,57 +1,57 @@ PORTNAME= palisade DISTVERSIONPREFIX= v -DISTVERSION= 1.11.6 +DISTVERSION= 1.11.9 CATEGORIES= security math MAINTAINER= yuri@FreeBSD.org COMMENT= PALISADE lattice cryptography library for Fully Homomorphic Encryption WWW= https://palisade-crypto.org LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE BROKEN_i386= fails to build: a declaration of 'Mul128' must be available BUILD_DEPENDS= autoconf:devel/autoconf # possibly a mistake in the project USES= cmake:noninja,testing localbase # compiler:c++11-lang USE_GITLAB= yes USE_GITHUB= nodefault GL_PROJECT= palisade-release # there's also palisade-development -GL_TAGNAME= 0860127401ab794591f931fa2c61426c7b56ee2d +GL_TAGNAME= 3d1f9a3f9fd389df1f8f27f286511f4f5871258b GH_TUPLE= \ JerryRyan:cereal:a384b101:cereal/third-party/cereal \ google:benchmark:e451e50e:benchmark/third-party/google-benchmark \ google:googletest:8b4817e3:google_test/third-party/google-test USE_LDCONFIG= yes CMAKE_OFF= BUILD_UNITTESTS BUILD_EXAMPLES BUILD_BENCHMARKS CMAKE_OFF+= WITH_NTL # https://gitlab.com/palisade/palisade-development/-/issues/180 CMAKE_ARGS= -DWITH_NTL=Y # libntl.so will be discontinued in 1.11, see https://gitlab.com/palisade/palisade-development/-/issues/180 CMAKE_TESTING_ON= BUILD_UNITTESTS CMAKE_TESTING_TARGET= testall CXXFLAGS+= -I${WRKSRC}/third-party/google-test/googletest BINARY_ALIAS= git=false LDFLAGS+= -pthread # only for tests: see https://gitlab.com/palisade/palisade-release/-/issues/23 OPTIONS_DEFINE= OPENMP HEXL .if exists(/usr/include/omp.h) OPTIONS_DEFAULT= OPENMP .endif HEXL_DESC= Use Intel Hexl Library OPENMP_CMAKE_BOOL= WITH_OPENMP HEXL_CMAKE_BOOL= WITH_HEXL HEXL_LIB_DEPENDS= libhexl.so:security/hexl .include .if ${OPSYS} == FreeBSD && ( ${OSVERSION} >= 1400079 || ( ${OSVERSION} >= 1302505 && ${OSVERSION} < 1400000 )) CXXFLAGS+= -Wno-error=unused-but-set-variable .endif .include diff --git a/security/palisade/distinfo b/security/palisade/distinfo index 5edd266147ff..f3c82409b581 100644 --- a/security/palisade/distinfo +++ b/security/palisade/distinfo @@ -1,9 +1,9 @@ -TIMESTAMP = 1648601582 +TIMESTAMP = 1713381099 SHA256 (JerryRyan-cereal-a384b101_GH0.tar.gz) = 0fba03b7e2e1a150a112fc90e18bfb9274e3830393af99d0c91f9abef62e9ff3 SIZE (JerryRyan-cereal-a384b101_GH0.tar.gz) = 345431 SHA256 (google-benchmark-e451e50e_GH0.tar.gz) = 08bb0426f54c10da1264384955e4389d21d2bc5c3727749a07b2e19000d38ebd SIZE (google-benchmark-e451e50e_GH0.tar.gz) = 177554 SHA256 (google-googletest-8b4817e3_GH0.tar.gz) = c632dd39ef6729cd198bb7c3f0b20e2efa36475cf3a082883f4809a2b26e9556 SIZE (google-googletest-8b4817e3_GH0.tar.gz) = 873457 -SHA256 (palisade-palisade-release-0860127401ab794591f931fa2c61426c7b56ee2d_GL0.tar.gz) = bafc1778c5e9956f9d683c2bcc16ce90b0d16ca933e4bb406091116f03fc9824 -SIZE (palisade-palisade-release-0860127401ab794591f931fa2c61426c7b56ee2d_GL0.tar.gz) = 1222274 +SHA256 (palisade-palisade-release-3d1f9a3f9fd389df1f8f27f286511f4f5871258b_GL0.tar.gz) = 0cb7f784e10118ee68313b98c628f830b75e894c07291ef67e017a6ccf6c751e +SIZE (palisade-palisade-release-3d1f9a3f9fd389df1f8f27f286511f4f5871258b_GL0.tar.gz) = 1224201 diff --git a/security/palisade/files/patch-src_core_include_math_bigintnat_ubintnat.h b/security/palisade/files/patch-src_core_include_math_bigintnat_ubintnat.h index 8f02234b7e17..55b9f1de9b7c 100644 --- a/security/palisade/files/patch-src_core_include_math_bigintnat_ubintnat.h +++ b/security/palisade/files/patch-src_core_include_math_bigintnat_ubintnat.h @@ -1,22 +1,16 @@ ---- src/core/include/math/bigintnat/ubintnat.h.orig 2022-01-28 23:16:29 UTC +--- src/core/include/math/bigintnat/ubintnat.h.orig 2022-12-02 20:31:23 UTC +++ src/core/include/math/bigintnat/ubintnat.h -@@ -2218,12 +2218,17 @@ class NativeIntegerT +@@ -2218,7 +2218,12 @@ class NativeIntegerT res.lo = x.lo * y; asm("umulh %0, %1, %2\n\t" : "=r"(res.hi) : "r"(x.lo), "r"(y)); res.hi += x.hi * y; -#elif defined(__arm__) // 32 bit processor +#elif defined(__powerpc64__) || defined(__riscv) + U128BITS wres(0), wa(a), wb(b); + wres = wa * wb; // should give us 128 bits of 64 * 64 + res.hi = (uint64_t)(wres >> 64); + res.lo = (uint64_t)wres; +#elif defined(__arm__) || defined(__powerpc__) // 32 bit processor uint64_t wres(0), wa(a), wb(b); wres = wa * wb; // should give us the lower 64 bits of 32*32 - res.hi = wres >> 32; -- res.lo = (uint32_t)wres && 0xFFFFFFFF; -+ res.lo = (uint32_t)wres & 0xFFFFFFFF; - #elif defined(__EMSCRIPTEN__) // web assembly - U64BITS a1 = a >> 32; - U64BITS a2 = (uint32_t)a; diff --git a/security/palisade/pkg-plist b/security/palisade/pkg-plist index 4a66bf54cfc1..bc3d3740c6b6 100644 --- a/security/palisade/pkg-plist +++ b/security/palisade/pkg-plist @@ -1,213 +1,214 @@ include/palisade/binfhe/CPPLINT.cfg include/palisade/binfhe/binfhecontext-ser.h include/palisade/binfhe/binfhecontext.h include/palisade/binfhe/fhew.h include/palisade/binfhe/lwe.h include/palisade/binfhe/lwecore.h include/palisade/binfhe/ringcore.h include/palisade/cereal/access.hpp include/palisade/cereal/archives/adapters.hpp include/palisade/cereal/archives/binary.hpp include/palisade/cereal/archives/json.hpp include/palisade/cereal/archives/portable_binary.hpp include/palisade/cereal/archives/xml.hpp include/palisade/cereal/cereal.hpp include/palisade/cereal/details/helpers.hpp include/palisade/cereal/details/polymorphic_impl.hpp include/palisade/cereal/details/polymorphic_impl_fwd.hpp include/palisade/cereal/details/static_object.hpp include/palisade/cereal/details/traits.hpp include/palisade/cereal/details/util.hpp include/palisade/cereal/external/base64.hpp include/palisade/cereal/external/rapidjson/allocators.h include/palisade/cereal/external/rapidjson/document.h include/palisade/cereal/external/rapidjson/encodedstream.h include/palisade/cereal/external/rapidjson/encodings.h include/palisade/cereal/external/rapidjson/error/en.h include/palisade/cereal/external/rapidjson/error/error.h include/palisade/cereal/external/rapidjson/filereadstream.h include/palisade/cereal/external/rapidjson/filewritestream.h include/palisade/cereal/external/rapidjson/fwd.h include/palisade/cereal/external/rapidjson/internal/biginteger.h include/palisade/cereal/external/rapidjson/internal/diyfp.h include/palisade/cereal/external/rapidjson/internal/dtoa.h include/palisade/cereal/external/rapidjson/internal/ieee754.h include/palisade/cereal/external/rapidjson/internal/itoa.h include/palisade/cereal/external/rapidjson/internal/meta.h include/palisade/cereal/external/rapidjson/internal/pow10.h include/palisade/cereal/external/rapidjson/internal/regex.h include/palisade/cereal/external/rapidjson/internal/stack.h include/palisade/cereal/external/rapidjson/internal/strfunc.h include/palisade/cereal/external/rapidjson/internal/strtod.h include/palisade/cereal/external/rapidjson/internal/swap.h include/palisade/cereal/external/rapidjson/istreamwrapper.h include/palisade/cereal/external/rapidjson/memorybuffer.h include/palisade/cereal/external/rapidjson/memorystream.h include/palisade/cereal/external/rapidjson/msinttypes/inttypes.h include/palisade/cereal/external/rapidjson/msinttypes/stdint.h include/palisade/cereal/external/rapidjson/ostreamwrapper.h include/palisade/cereal/external/rapidjson/pointer.h include/palisade/cereal/external/rapidjson/prettywriter.h include/palisade/cereal/external/rapidjson/rapidjson.h include/palisade/cereal/external/rapidjson/reader.h include/palisade/cereal/external/rapidjson/schema.h include/palisade/cereal/external/rapidjson/stream.h include/palisade/cereal/external/rapidjson/stringbuffer.h include/palisade/cereal/external/rapidjson/writer.h include/palisade/cereal/external/rapidxml/license.txt include/palisade/cereal/external/rapidxml/manual.html include/palisade/cereal/external/rapidxml/rapidxml.hpp include/palisade/cereal/external/rapidxml/rapidxml_iterators.hpp include/palisade/cereal/external/rapidxml/rapidxml_print.hpp include/palisade/cereal/external/rapidxml/rapidxml_utils.hpp include/palisade/cereal/macros.hpp include/palisade/cereal/types/array.hpp include/palisade/cereal/types/atomic.hpp include/palisade/cereal/types/base_class.hpp include/palisade/cereal/types/bitset.hpp include/palisade/cereal/types/boost_variant.hpp include/palisade/cereal/types/chrono.hpp include/palisade/cereal/types/common.hpp include/palisade/cereal/types/complex.hpp include/palisade/cereal/types/concepts/pair_associative_container.hpp include/palisade/cereal/types/deque.hpp include/palisade/cereal/types/forward_list.hpp include/palisade/cereal/types/functional.hpp include/palisade/cereal/types/list.hpp include/palisade/cereal/types/map.hpp include/palisade/cereal/types/memory.hpp include/palisade/cereal/types/optional.hpp include/palisade/cereal/types/polymorphic.hpp include/palisade/cereal/types/queue.hpp include/palisade/cereal/types/set.hpp include/palisade/cereal/types/stack.hpp include/palisade/cereal/types/string.hpp include/palisade/cereal/types/tuple.hpp include/palisade/cereal/types/unordered_map.hpp include/palisade/cereal/types/unordered_set.hpp include/palisade/cereal/types/utility.hpp include/palisade/cereal/types/valarray.hpp include/palisade/cereal/types/variant.hpp include/palisade/cereal/types/vector.hpp include/palisade/cereal/version.hpp include/palisade/core/config_core.h include/palisade/core/encoding/ckkspackedencoding.h include/palisade/core/encoding/coefpackedencoding.h include/palisade/core/encoding/encodingparams.h include/palisade/core/encoding/encodings.h include/palisade/core/encoding/packedencoding.h include/palisade/core/encoding/plaintext.h include/palisade/core/encoding/plaintextfactory.h include/palisade/core/encoding/stringencoding.h include/palisade/core/lattice/README.md include/palisade/core/lattice/backend.h include/palisade/core/lattice/dcrtpoly.h include/palisade/core/lattice/dgsampling.h include/palisade/core/lattice/elemparamfactory.h include/palisade/core/lattice/elemparams.h include/palisade/core/lattice/field2n.h include/palisade/core/lattice/ildcrtparams.h include/palisade/core/lattice/ilelement.h include/palisade/core/lattice/ilparams.h include/palisade/core/lattice/poly.h include/palisade/core/lattice/stdlatticeparms.h include/palisade/core/lattice/trapdoor.h include/palisade/core/lattice/trapdoorparameters.h include/palisade/core/math/README.md include/palisade/core/math/SAMPLING_README.md include/palisade/core/math/backend.h include/palisade/core/math/bigintdyn/mubintvecdyn.h include/palisade/core/math/bigintdyn/ubintdyn.h include/palisade/core/math/bigintfxd/mubintvecfxd.h include/palisade/core/math/bigintfxd/ubintfxd.h include/palisade/core/math/bigintnat/mubintvecnat.h include/palisade/core/math/bigintnat/ubintnat.h +include/palisade/core/math/bigintnat/ubintnat.h.orig include/palisade/core/math/bigintntl/mubintvecntl.h include/palisade/core/math/bigintntl/ubintntl.h include/palisade/core/math/binaryuniformgenerator.h include/palisade/core/math/dftransfrm.h include/palisade/core/math/discretegaussiangenerator.h include/palisade/core/math/discretegaussiangeneratorgeneric.h include/palisade/core/math/discreteuniformgenerator.h include/palisade/core/math/distrgen.h include/palisade/core/math/distributiongenerator.h include/palisade/core/math/interface.h include/palisade/core/math/matrix.h include/palisade/core/math/matrixstrassen.h include/palisade/core/math/nbtheory.h include/palisade/core/math/ternaryuniformgenerator.h include/palisade/core/math/transfrm.h include/palisade/core/palisadecore.h include/palisade/core/testdefs.h include/palisade/core/utils/blockAllocator/blockAllocator.h include/palisade/core/utils/blockAllocator/stl_allocator.h include/palisade/core/utils/blockAllocator/xallocator.h include/palisade/core/utils/blockAllocator/xlist.h include/palisade/core/utils/blockAllocator/xmap.h include/palisade/core/utils/blockAllocator/xqueue.h include/palisade/core/utils/blockAllocator/xset.h include/palisade/core/utils/blockAllocator/xsstream.h include/palisade/core/utils/blockAllocator/xstring.h include/palisade/core/utils/blockAllocator/xvector.h include/palisade/core/utils/caller_info.h include/palisade/core/utils/debug.h include/palisade/core/utils/defines.h include/palisade/core/utils/exception.h include/palisade/core/utils/hashutil.h include/palisade/core/utils/inttypes.h include/palisade/core/utils/memory.h include/palisade/core/utils/palisadebase64.h include/palisade/core/utils/parallel.h include/palisade/core/utils/parmfactory.h include/palisade/core/utils/prng/CPPLINT.cfg include/palisade/core/utils/prng/blake2-impl.h include/palisade/core/utils/prng/blake2.h include/palisade/core/utils/prng/blake2engine.h include/palisade/core/utils/serial.h include/palisade/core/utils/serializable.h include/palisade/core/utils/serialize-binary.h include/palisade/core/utils/serialize-json.h include/palisade/core/utils/sertype.h include/palisade/core/utils/testcasegen.h include/palisade/core/utils/utilities.h include/palisade/core/version.h include/palisade/pke/ciphertext-ser.h include/palisade/pke/ciphertext.h include/palisade/pke/config.h include/palisade/pke/cryptocontext-ser.h include/palisade/pke/cryptocontext.h include/palisade/pke/cryptocontextgen.h include/palisade/pke/cryptocontexthelper.h include/palisade/pke/cryptocontextparametersets.h include/palisade/pke/metadata-ser.h include/palisade/pke/metadata.h include/palisade/pke/palisade.h include/palisade/pke/pubkeylp-ser.h include/palisade/pke/pubkeylp.h include/palisade/pke/scheme/allscheme.h include/palisade/pke/scheme/bfv/bfv-ser.h include/palisade/pke/scheme/bfv/bfv.h include/palisade/pke/scheme/bfvrns/bfvrns-ser.h include/palisade/pke/scheme/bfvrns/bfvrns.h include/palisade/pke/scheme/bfvrnsb/bfvrnsB-ser.h include/palisade/pke/scheme/bfvrnsb/bfvrnsB.h include/palisade/pke/scheme/bgvrns/bgvrns-ser.h include/palisade/pke/scheme/bgvrns/bgvrns.h include/palisade/pke/scheme/ckks/ckks-ser.h include/palisade/pke/scheme/ckks/ckks.h include/palisade/pke/scheme/null/nullscheme-ser.h include/palisade/pke/scheme/null/nullscheme.h include/palisade/pke/scheme/rlwe.h lib/Palisade/PalisadeConfig.cmake lib/Palisade/PalisadeConfigVersion.cmake lib/Palisade/PalisadeTargets-%%CMAKE_BUILD_TYPE%%.cmake lib/Palisade/PalisadeTargets.cmake lib/libPALISADEbinfhe.so lib/libPALISADEbinfhe.so.1 -lib/libPALISADEbinfhe.so.1.11.6 +lib/libPALISADEbinfhe.so.1.11.9 lib/libPALISADEcore.so lib/libPALISADEcore.so.1 -lib/libPALISADEcore.so.1.11.6 +lib/libPALISADEcore.so.1.11.9 lib/libPALISADEpke.so lib/libPALISADEpke.so.1 -lib/libPALISADEpke.so.1.11.6 +lib/libPALISADEpke.so.1.11.9