OPPRF-PSI icon indicating copy to clipboard operation
OPPRF-PSI copied to clipboard

make error: KkrtNcoOtSender and KkrtNcoOtReceiver

Open NishkaDG opened this issue 5 years ago • 0 comments

When building source code as directed in the README, cmake works and make is able to compile all the dependencies, but it fails with:

OPPRF-PSI/psi_analytics_eurocrypt19/ots/ots.cpp: In function ‘std::vector<long unsigned int> ENCRYPTO::ot_receiver(const std::vector<long unsigned int>&, ENCRYPTO::PsiAnalyticsContext&)’:
OPPRF-PSI/psi_analytics_eurocrypt19/ots/ots.cpp:50:14: error: ‘KkrtNcoOtReceiver’ is not a member of ‘osuCrypto’
   50 |   osuCrypto::KkrtNcoOtReceiver recv;
      |              ^~~~~~~~~~~~~~~~~
...
OPPRF-PSI/psi_analytics_eurocrypt19/ots/ots.cpp:116:14: error: ‘KkrtNcoOtSender’ is not a member of ‘osuCrypto’
  116 |   osuCrypto::KkrtNcoOtSender sender;
      |              ^~~~~~~~~~~~~~~
...
OPPRF-PSI/psi_analytics_eurocrypt19/ots/ots.cpp:135:41: error: variable ‘osuCrypto::BitVector choices’ has initializer but incomplete type
  135 |   osuCrypto::BitVector choices(baseCount);

There are other errors relating to the variables of type KkrtNcoOtReceiver and KkrtNcoOtSender that also seem to derive from a failure to find those within osuCrypto. So in this code, is the KKRT16 BaRK-OPRF implementation on github at osu-crypto/BaRK-OPRF a necessary dependency that is not automatically installed by make? Or can the necessary modules be found somewhere else?

NishkaDG avatar Aug 20 '20 05:08 NishkaDG