Closed sda427 closed 6 months ago
The answer to your first question is "yes". For example, if you have say three parties holding secret shares of a secure integer, you can assign these shares locally, for each party, and then they can continue to do secure computation with the resulting secure integer.
Party 0 executes a = secint(secint.field(12723956914977493523))
in its program.
Party 1 executes a = secint(secint.field(7001169756245412185))
in its program.
Party 2 executes a = secint(secint.field(1278382597513330847))
in its program.
Then if they run print(await mpc.output(a))
they should all see 23434
being printed.
About your second question, not sure what it is about?
Thank you very much for your answer.
The second question is about secure types. When I use secint.array to define a secure array, is there a way to define a variable-length array without specifying the array length? For example, T = secint.array().
Well, no, Numpy arrays are not variable length. And all entries of a Numpy array are of the same type. This allows for efficient processing, in a vectorized manner. Using lists you can have variable length and elements of mixed type, but that usually incurs some extra costs.