This part compares the end-to-end latency of an auction from the browser sending invitation requests to bidders until the auction server finishes computing the auction.
The evaluation consists of the non-private baseline where all bids are sent in clear to auction server and Ibex's oblivious bidding protocol.
cmake . -B build
cd build
make -j
- Establish the SSH keyless connections from your
client
machine to all other machines of bidders and auction servers. Make sure you have connected once from yourclient
machine to all other machines to establish authenticity. - On all other machines, build the programs correctly.
- Edit the variable
ips
instop-bidders.sh
andrun-bidders.sh
, change it to the the ips of the bidders machine. We assume usingc5.24xlarge instances
, so each server simulate 6 bidders. - Edit the variable
ips
,ip1
, andip2
instop-auction-servers.sh
andstart-auction-servers.sh
, change it to the the ips of the two auction servers. - Copy all files in files directory into
build/
directory on all machines where thebidder
andclient
programs exist. - Copy all scripts in script directory into
build/
directory on all machines where thebidder
andclient
programs exist.
- On the client machine, run
bash run-bidders.sh [user name] [logarithm of total group] [path of bidder program]
.-
user name
is the user name you used to log into your bidders machine. -
logarithm of total group
, for example, is set to 15 for$2^{15}$ groups. -
[path of bidder program]
is the path on the bidder servers where the bidder program is. For example, it could beibex/bidding/end-to-end/ibex-bidding/build/
-
- On the client machine, run
bash run-auction-servers.sh [user name] [bidder number] [path of bidder program]
.user name
is the user name you used to log into your bidders machine.[path of bidder program]
is the path on the bidder servers where the auctioneer program is. For example, it could be `ibex/bidding/end-to-end/ibex-bidding/auctioneer/build/bin``.
- On the client machine, copy
ips.txt
intobuild/
directory and modifyips.txt
accordingly.- The format of
ips.txt
isIP:PORT
in each line - The first two lines are ip addresses of the two auction servers.
- Afterwards each line represents a bidder's PIR server.
- The format of
- On the client machine, run
./client -b [bidder number] -l [logarithm of total group]
.
- After each run, on the client machine, run
bash stop-auction-servers.sh [user name]
andbash stop-bidders.sh [user name]
.
cmake . -B build
cd build
make -j
- Copy
cert.pem
andkey.pem
in files directory intobuild
directory. - Each line in
ips.txt
represents a bidder, in the format ofIP:PORT
. Theauctioneer
program will read the IP addresses of bidders from this file, please change it accordingly and copy it into thebuild
directory. - On the bidder machine, copy
start-bidders.sh
into thebuild
directory. Runbash start-bidders.sh [bidder number]
to start the bidders programs which starting listening from port6666
to6666+[bidder number]
. - On the auctioneer machine, run
./auctioneer [bidder number]
to start the auctioneer program and listening on the port 5555. - On the client machine, run
./client [auctioneer IP]
.auctioneer IP
is in the format ofIP:PORT
. Theclient
program will output the total latency.