This is an implementation of Paillier cryptosystem with a key of 2048 bits using gmpy2! Note that it works also with negative numbers
in addition the honest but curious protocol is implemented based on the paillier cryptosystem, in union and intersection as described in
Keith B. Frikken. “Privacy-Preserving Set Union.” In:Applied Cryptography and Network Security, 5th International Conference, ACNS 2007, Zhuhai, China, June 5-8, 2007, Proceedings. 2007, pp. 237–252