-
Notifications
You must be signed in to change notification settings - Fork 769
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Unexpected semantics of multiply #1
Comments
The difference is described in the design document, under the doc sub-directory. My view of this library is that it gives you the analog of an "assembly language" for working with HE. Just like assembly language, you have to be quite knowledgeable about the architecture at hand to be able to use it effectively. Regards, -- Shai |
Ok, thanks. I'll consider this a perception bug and close. |
Closed
rbharath
added a commit
to rbharath/hepy
that referenced
this issue
May 16, 2018
Adding .gitignore file
faberga
pushed a commit
that referenced
this issue
Sep 7, 2020
* Added CMakeCache to git ignore * Bug fix in utils std.bash techo function * Top level CMakeLists for all example programs * Bats tests and tweaks for example programs * Typo fix and corrected indentation * Removed bc from bats test * Refactored away some common relative paths * Removed runtest.sh * Improved error message when failing to find database file * Added README for examples Co-authored-by: Jack Crawford <jack.crawford@sky.com> Co-authored-by: Enrico Steffinlongo <enrylongo@gmail.com>
UnionTech-Software
added a commit
to UnionTech-Software/HElib
that referenced
this issue
Dec 20, 2024
This patch fixes the memory leak in zzX ==47958==ERROR: LeakSanitizer: detected memory leaks Direct leak of 176 byte(s) in 1 object(s) allocated from: #0 0x794a300b61e7 in operator new(unsigned long) ../../../../src/libsanitizer/asan/asan_new_delete.cpp:99 homenc#1 0x5777885d6c36 in helib::getPhimXMod(helib::PAlgebra const&) /home/uos/HElib-2.3.0/HElib-2.3.0/src/zzX.cpp:96 Indirect leak of 49152 byte(s) in 2 object(s) allocated from: #0 0x794a300b6357 in operator new[](unsigned long) ../../../../src/libsanitizer/asan/asan_new_delete.cpp:102 homenc#1 0x794a2fda81c1 in long* NTL::MakeRawArray<long>(long) ../include/NTL/SmartPtr.h:998 homenc#2 0x794a2fda81c1 in NTL::UniqueArray<long>::SetLength(long) ../include/NTL/SmartPtr.h:1620 homenc#3 0x794a2fda81c1 in NTL::fftRep::DoSetSize(long, long) /home/uos/HElib-2.3.0/HElib-2.3.0/build/dependencies/Source/ntl_fetched/src/lzz_pX.cpp:1378 Indirect leak of 13888 byte(s) in 1 object(s) allocated from: #0 0x794a300b4887 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:145 homenc#1 0x577788032e4b in NTL::Vec<NTL::zz_p>::AllocateTo(long) /home/uos/HElib-2.3.0/HElib-2.3.0/build/helib_pack/include/NTL/vector.h:653 Indirect leak of 56 byte(s) in 1 object(s) allocated from: #0 0x794a300b64c7 in operator new(unsigned long, std::nothrow_t const&) ../../../../src/libsanitizer/asan/asan_new_delete.cpp:105 homenc#1 0x794a2fdac3a4 in NTL::Lazy<NTL::Vec<NTL::zz_p>, NTL::DefaultDeleterPolicy>* NTL::MakeRaw<NTL::Lazy<NTL::Vec<NTL::zz_p>, NTL::DefaultDeleterPolicy>>() ../include/NTL/SmartPtr.h:710 homenc#2 0x794a2fdac3a4 in void NTL::UniquePtr<NTL::Lazy<NTL::Vec<NTL::zz_p>, NTL::DefaultDeleterPolicy>, NTL::DefaultDeleterPolicy>::make<>() ../include/NTL/SmartPtr.h:1109 homenc#3 0x794a2fdac3a4 in void NTL::OptionalVal<NTL::Lazy<NTL::Vec<NTL::zz_p>, NTL::DefaultDeleterPolicy> >::make<>() ../include/NTL/SmartPtr.h:1479 homenc#4 0x794a2fdac3a4 in NTL::build(NTL::zz_pXModulus&, NTL::zz_pX const&) /home/uos/HElib-2.3.0/HElib-2.3.0/build/dependencies/Source/ntl_fetched/src/lzz_pX.cpp:2845 SUMMARY: AddressSanitizer: 63272 byte(s) leaked in 5 allocation(s).
UnionTech-Software
added a commit
to UnionTech-Software/HElib
that referenced
this issue
Dec 20, 2024
This patch fixes the memory leak in zzX ==47958==ERROR: LeakSanitizer: detected memory leaks Direct leak of 176 byte(s) in 1 object(s) allocated from: #0 0x794a300b61e7 in operator new(unsigned long) ../../../../src/libsanitizer/asan/asan_new_delete.cpp:99 homenc#1 0x5777885d6c36 in helib::getPhimXMod(helib::PAlgebra const&) /home/uos/HElib-2.3.0/HElib-2.3.0/src/zzX.cpp:96 Indirect leak of 49152 byte(s) in 2 object(s) allocated from: #0 0x794a300b6357 in operator new[](unsigned long) ../../../../src/libsanitizer/asan/asan_new_delete.cpp:102 homenc#1 0x794a2fda81c1 in long* NTL::MakeRawArray<long>(long) ../include/NTL/SmartPtr.h:998 homenc#2 0x794a2fda81c1 in NTL::UniqueArray<long>::SetLength(long) ../include/NTL/SmartPtr.h:1620 homenc#3 0x794a2fda81c1 in NTL::fftRep::DoSetSize(long, long) /home/uos/HElib-2.3.0/HElib-2.3.0/build/dependencies/Source/ntl_fetched/src/lzz_pX.cpp:1378 Indirect leak of 13888 byte(s) in 1 object(s) allocated from: #0 0x794a300b4887 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:145 homenc#1 0x577788032e4b in NTL::Vec<NTL::zz_p>::AllocateTo(long) /home/uos/HElib-2.3.0/HElib-2.3.0/build/helib_pack/include/NTL/vector.h:653 Indirect leak of 56 byte(s) in 1 object(s) allocated from: #0 0x794a300b64c7 in operator new(unsigned long, std::nothrow_t const&) ../../../../src/libsanitizer/asan/asan_new_delete.cpp:105 homenc#1 0x794a2fdac3a4 in NTL::Lazy<NTL::Vec<NTL::zz_p>, NTL::DefaultDeleterPolicy>* NTL::MakeRaw<NTL::Lazy<NTL::Vec<NTL::zz_p>, NTL::DefaultDeleterPolicy>>() ../include/NTL/SmartPtr.h:710 homenc#2 0x794a2fdac3a4 in void NTL::UniquePtr<NTL::Lazy<NTL::Vec<NTL::zz_p>, NTL::DefaultDeleterPolicy>, NTL::DefaultDeleterPolicy>::make<>() ../include/NTL/SmartPtr.h:1109 homenc#3 0x794a2fdac3a4 in void NTL::OptionalVal<NTL::Lazy<NTL::Vec<NTL::zz_p>, NTL::DefaultDeleterPolicy> >::make<>() ../include/NTL/SmartPtr.h:1479 homenc#4 0x794a2fdac3a4 in NTL::build(NTL::zz_pXModulus&, NTL::zz_pX const&) /home/uos/HElib-2.3.0/HElib-2.3.0/build/dependencies/Source/ntl_fetched/src/lzz_pX.cpp:2845 SUMMARY: AddressSanitizer: 63272 byte(s) leaked in 5 allocation(s).
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
It appears
Ctxt::operator*
andCtxt::multiplyBy
are intentionally different operations, though where this is in the paper or the source documentation is a mystery to me. I see that one is "higher-level ... that include also modulus-switching and re-linearization".Perhaps this is an error in my expectation of exactly what amount of crypto knowledge the library intends to assume is necessary for the user.
The text was updated successfully, but these errors were encountered: