Find Jobs
Hire Freelancers

Boolean Circuit using NTL library -- 3

$100-200 USD

Closed
Posted over 9 years ago

$100-200 USD

Paid on delivery
NOTE: during the work I'll be available online for questions and help. 1. {EASY} Write a c++ class (called BooleanCircuit) that represent a boolean circuit ([login to view URL]) with 2-inputs and 1-output per gate. The class initialized with a file_path that contains the boolean circuit description. The format is in the "boolean circuit format and example" folder in the zip (there is a description of a circuit that computes AES encryption as a test example also in the folder). An example of an implementation of boolean circuit in java is in in "boolean circuit java" folder in the zip, you can use it as a reference. We denote by W the number of wires in the circuit, and by n*ell the number of all circuit-input-wires, and by 'ell' the number of circuit-input-wire of every player. 2.{EASY} Write a server (in c++) that (a)take as input: boolean_circuit_file_path, int k. (b)create class BooleanCircuit initialized with that path. (c)the format of the boolean circuit specify how many players are involved, let the number be N, thus, the server listens to some fixed tcp port, and wait till it get messages from N different players (a timeout might be set so it wont wait forever). The messages that each player (client) sends to the server include the client number (integer from 1...N) and a bit array which consist of 2kW+2xW+(W-n*ell)+ell. For example if we have 10 wires in the circuit (W=11), 5 players (n=3) such that every player gives 2 inputs to the circuit (ell=2, ell*n=6) and k=32 (bits), x=64 (k and x are parameters that can be adjusted) then each client will send to the server 2119 bits (or 2120 bits (265 bytes) in this case so it will be aligned to a whole byte). 3. {Contact me when you get here} In this step we use an open source mathematical c++ library called NTL (number theory library). I attach the lib (static library) file to "calculation" folder in the zip. and the link to the open source is [login to view URL] The first 2*k + 2*x bits that the server got from player 1 are associated with wire 0 of the circuit, (the first half called s_0^0 and the second half is s_1^0. each half is k+x bits. the k bits called "seed" and the next x bits called "extension") The second 2*k + 2*x bits that the server got from player 1 are associated with wire 0 of the circuit. The server computes the calculations described in the "calculation/[login to view URL]" in section "Offline Phase" (we need to talk at this point to make everything clear) 4. Writing a test for the above steps.
Project ID: 6728464

About the project

4 proposals
Remote project
Active 9 yrs ago

Looking to make some money?

Benefits of bidding on Freelancer

Set your budget and timeframe
Get paid for your work
Outline your proposal
It's free to sign up and bid on jobs
4 freelancers are bidding on average $204 USD for this job
User Avatar
Hello I'm interesting your project very well I'm a Good C/C++, Boolean, Algorithm expert. I m quite well experienced in these assignment jobs. Let's go ahead with me I want to service for you continously. Thanks
$210 USD in 5 days
4.9 (708 reviews)
8.9
8.9
User Avatar
I am very proficient in c, c++. I have 15 years c++ developing experience now, and I have worked for 5 years. My work is online game developing, and mainly focus on server side, the language is c++ under linux. I used c++ to make many great projects, for example, I made the tools which can convert java files to c++ scripts which has the same effect, of course garbage collection included. I also made our own mobile
$189 USD in 2 days
4.9 (162 reviews)
7.2
7.2
User Avatar
A proposal has not yet been provided
$100 USD in 15 days
4.9 (8 reviews)
3.6
3.6
User Avatar
I have MS in Information Security with research interest of Cryptography. I have implemented Cryptography algorithms in Java and C, written security solutions in J2EE and Java, have implemented datastructures in Java, and built two websites for research / proof-of-concept purposes. Additionally, ~2 years of IT experience. I have taken Graduate level courses in Cryptography and Security that dealt with analysis of Cryptographic protocols, my Masters level project involved design of a Cryptographic protocol for a specific authentication problem in three-party settings. I have executed a number of projects that focussed almost entirely / heavily on Cryptography. I have also written Cryptographically signed Java applet for a J2EE application. Details about projects executed available on request. You might want to go through reviews project creators left for me on freelancer.com, see https://www.freelancer.com/u/ciphe.html.
$315 USD in 10 days
5.0 (1 review)
1.2
1.2

About the client

Flag of ISRAEL
Ashkelon, Israel
5.0
9
Payment method verified
Member since Dec 4, 2013

Client Verification

Thanks! We’ve emailed you a link to claim your free credit.
Something went wrong while sending your email. Please try again.
Registered Users Total Jobs Posted
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Loading preview
Permission granted for Geolocation.
Your login session has expired and you have been logged out. Please log in again.