Seventh major update
Pre-release
Pre-release
Major technical improvements:
- Completed support of all MPC functionality when PRSS is disabled.
- Continued development for secure Numpy arrays and vectorized implementations.
- Facilitate uvloop on Linux/Mac and its counterpart Winloop on Windows as alt event loops for (potentially) better performance.
- Secure fixed-point sine and cosine.
Command Line Interface:
- Add
--no-uvloop
to disable load and use of uvloop (winloop) package.
More technical changes:
- Numpy 2.0 ready.
- Handle
integral
attribute for more secure Numpy array functions. - Use primes just below powers of 2 for finite fields using
gmpy2.prev_prime()
. - Refactor
mpyc.asyncoro
:- moved PRSS details to
mpyc.runtime
, - moved base class
SecureObject
frommpyc.sectypes
, - renamed
SharesCounter
toSharesTallier
.
- moved PRSS details to
- Demote use of
mpc.run()
in demos, easier for use with PyScript. - Optimize doubling Edwards extended coordinates.
- Some SageMath-style methods for GFpX polynomials, e.g.,
monic()
,reverse()
. - Enhance
mpyc.mpctools.accumulate()
. - Lots of smaller enhancements.
Many thanks to Marc Damie, Emil Nikolov, and Stan Korzilius and for their collaboration and contributions.
Corresponds to package mpyc 0.10 on PyPI.
This should be the last MPyC release supporting Python 3.9 and NumPy 1.23, following SPEC 0 — Minimum Supported Dependencies.