Generate additive shares of multiplication of two random 32-byte numbers using the correlated oblivious transfers
- openssl library along with its development package libssl-dev
- trezor-crypto library
- clone the project
- cd additive-shares
- Run the following commands
gcc -c utils.c -Ipath/to/trezor-crypto/include -Lpath/to/trezor-crypto -ltrezor-crypto -lssl -lcrypto -o utils.o
gcc -c ot.c -Ipath/to/trezor-crypto/include -Lpath/to/trezor-crypto -ltrezor-crypto -lssl -lcrypto -o ot.o
gcc -c additive_shares.c -Ipath/to/trezor-crypto/include -Lpath/to/trezor-crypto -ltrezor-crypto -lssl -lcrypto -o additive_shares.o
gcc app.c utils.o ot.o additive_shares.o -Ipath/to/trezor-crypto/include -Lpath/to/trezor-crypto -ltrezor-crypto -lssl -lcrypto -o app
./app