Closed zhifeng110 closed 2 years ago
这里修正了 OpenSSL 的一些函数。我在新版的 emp-tool 那里没有出现问题。不过 CF2 的 StartComputation() 初始化的 AuxProtocol 确没有问题,诡异。
For bus error 我们在 Linux 下出现过 bus error 相关的问题。最后是通过修改 ferret_cot.hpp 解决。具体可以参考
https://github.com/emp-toolkit/emp-ot/commit/5ef31873932096e672039bf41bc5ce5ac60f0bae
感谢大佬百忙之中的解答,额,我更新了最新的emp-ot、emp-tool版本,重新编译后,试了一下并没有解决【dog】。我感觉可能是我的CMakeList写错了,大佬可以帮忙看看吗?
cmake_minimum_required(VERSION 3.0)
project(cheetah_demo)
include_directories(
/usr/include /usr/include/c++/9
/root/cheetah/OpenCheetah/SCI/src
/root/cheetah/OpenCheetah/build/include/eigen3
/root/cheetah/OpenCheetah/build/include/emp-ot
/root/cheetah/OpenCheetah/build/include/emp-tool
/root/cheetah/OpenCheetah/build/include/gemini
/root/cheetah/OpenCheetah/build/include/hexl
/root/cheetah/OpenCheetah/build/include/SEAL-3.7
/root/cheetah/OpenCheetah/build/include
/root/cheetah/OpenCheetah/build/SCI/src
)
set(CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS} -fopenmp)
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -O0 -w")
SET(CMAKE_CXX_FLAGS_RELEASE "$ENV{CXXFLAGS} -O0 -w")
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -maes -mavx2 -mrdseed")
add_compile_definitions(USE_CHEETAH SCI_HE SCI_OT)
link_directories(/root/cheetah/OpenCheetah/build/lib)
add_executable(a.out aicl_aux.cpp)
target_link_libraries(a.out
crypto
SCI-Cheetah-BuildingBlocks
SCI-BuildingBlocks
seal-3.7
zstd
hexl
gemini
emp-tool
SCI-HE
SCI-Cheetah
SCI-Math
SCI-LinearHE
SCI-LinearOT
Cheetah-Linear
)
试试用 Release 编译。 $ENV{CXXFLAGS} -O0 -w
用 -O0 很奇怪。
而且如果你的根路径下已经安装了其他的 emp-tool 可能会引用到那边的版本。
我在EzPC的docker容器中对于程序卡住的情况,在 @42yeah 老哥的帮助下,认为是socket没有及时flush数据导致的,修改了最新版的emp-tool下的net_io_channel.h,和OpenCheetah/SCI/src/utils/io_channel.h下的socket配置,对其设置TCP_NODELAY,同时对数据发送后调一次flush才得以顺利进行,唉,想问问大佬们对这事怎么看?
尊敬的阿里大佬: 我在使用猎豹框架的AuxProtocols::multiplexer() 函数时遇到了些困难,希望能得到大佬的帮助。 具体情况是这样的,之前一直在用微软的CF2做一些应用,在移植代码到cheetah后,我的drule函数与multiplexer函数无法使用,并且报bus error (core dumped)、segmentation fault (core dumped)等错误,我把代码贴上来,在CF2上测试是没有问题的,在猎豹上就不行了,同时我也测试了OpenCheetah/SCI/tests/test_ring_aux_protocols.cpp这个文件,也是同样的错误,希望能够得到大佬们的指点。 同时,悄悄的问一下,为啥在建立一个slient OT Pack的时间要几秒钟,搞多几个OT Pack调试代码时就让人着急[dog],期待大佬早日回复,也盼望隐语框架早日开源。