Re: [viff-devel] [Marc Makkes] Homomorphic encryption
Hi Marc, We generally use Paillier as a part of secure multiparty computation protocols, where each party has his own secret key and knows the public keys of the other players. The ciphertexts are generally multiplied a substantial number of times. Can you give me the background of this application? You should checkout the Paillier runtime in viff/paillier.py in VIFF. I think it is a classical example of what we want to do. Also I am working on an implementation of another runtime, where Paillier is used. It is not yet complete but I will spend some time today to get it into VIFF. It should also provide you with some inspiration. I will let you know when it is available in the VIFF repository. Also, i don't see any problems adapting for python. Creating a python binding should easy to make. Do you have time frame for when you are going to use the paillier implementation? Or is it already running? Our current Paillier runtime will certainly already now benefit from a fast implementation of Paillier. My main interest is using the implementation for the other runtime mentioned above. And I currently estimate that I am 3 to 4 weeks from completing it. Janus Dam Nielsen R&D SCIENTIST, PhD. CENTRE FOR IT-SECURITY THE ALEXANDRA INSTITUTE LTD. T +45 42 22 93 56 E janus.niel...@alexandra.dk W alexandra.dk ___ viff-devel mailing list (http://viff.dk/) viff-devel@viff.dk http://lists.viff.dk/listinfo.cgi/viff-devel-viff.dk
Re: [viff-devel] [Marc Makkes] Homomorphic encryption
Hi Janus, On Thu, Jun 18, 2009 at 04:36:15PM +0200, Janus Dam Nielsen wrote: >Great to hear from you, I will be your main contact, because I am >probably the VIFF user who will be needing a fast homomorphic >implementation the soonest. >I guess that the actual scheme you are implementing is the Paillier >encryption scheme? Yes, i'm implementing the Paillier scheme. Currently i have C version of VIFF python implementation and i'm busy doing the CRT and subgroup version of the scheme. When i'm done its the base line for my improvement version. That version should allready be a lot faster the basic Python/C implementation. I'm expecting speed certainly in the computational direction, but in the speedup in the algebraic setting is gonna be hard. >We generally use Paillier as a part of secure multiparty computation >protocols, where each party has his own secret key and knows the public >keys of the other players. The ciphertexts are generally multiplied a >substantial number of times. Can you give me the background of this application? >We generally would like an implementation which is similar to the one >already in VIFF in terms of API and functionality. I am not sure I >understand what you mean by "missing a key setup/generation function", >currently in Python there is a function which generates keys. If there >are alternatives, then what are they and what would you suggest? I don't think that is going to be a problem. The wish list that i'm mentioning is for the C-api. So, please for get this. Also, i don't see any problems adapting for python. Creating a python binding should easy to make. Do you have time frame for when you are going to use the paillier implementation? Or is it already running? >Great, I hope it will outperform any other implementation ever made :) >Having Python bindings for the c implementation is also of large value >to us. I'm pushing as hard as i can (-; Kind regards, -Marc -- If this email is PGP signed, the fingerprint is: C6D2 B5D7 390E 0D4E DE02 460E DC7F 651E A9CB 1B34 signed with a 521-bit ECC key pgpvgJ0Ch2OEn.pgp Description: PGP signature ___ viff-devel mailing list (http://viff.dk/) viff-devel@viff.dk http://lists.viff.dk/listinfo.cgi/viff-devel-viff.dk
Re: [viff-devel] [Marc Makkes] Homomorphic encryption
Hi Marc, My name is Marc X. Makkes and i'm the student who is implementing the homomorphic encryption scheme for for NaCL project. Great to hear from you, I will be your main contact, because I am probably the VIFF user who will be needing a fast homomorphic implementation the soonest. I guess that the actual scheme you are implementing is the Paillier encryption scheme? Tanja urged me to contact you for some detail regarding the implementation and if i understand correctly your the one that is going to use this scheme for certain applications. Can you tell me a little bit the applications? We generally use Paillier as a part of secure multiparty computation protocols, where each party has his own secret key and knows the public keys of the other players. The ciphertexts are generally multiplied a substantial number of times. In addition i've received the whish list. But it seems to me that there is missing a key setup/generation function. Can you maybe comment on that? We generally would like an implementation which is similar to the one already in VIFF in terms of API and functionality. I am not sure I understand what you mean by "missing a key setup/generation function", currently in Python there is a function which generates keys. If there are alternatives, then what are they and what would you suggest? Currently i've have made a ''basic'' c implementation, which is equivalent to your and my own python implementation. In the next few day's i hope to implement the subgroup variant as well as doing the CRT speedup for decryption. Great, I hope it will outperform any other implementation ever made :) Having Python bindings for the c implementation is also of large value to us. Janus Dam Nielsen R&D SCIENTIST, PhD. CENTRE FOR IT-SECURITY THE ALEXANDRA INSTITUTE LTD. T +45 42 22 93 56 E janus.niel...@alexandra.dk W alexandra.dk ___ viff-devel mailing list (http://viff.dk/) viff-devel@viff.dk http://lists.viff.dk/listinfo.cgi/viff-devel-viff.dk
[viff-devel] [Marc Makkes] Homomorphic encryption
Hi Janus and hi everybody, I got this mail from Marc about fast Paillier: --- Begin Message --- Hi Martin, My name is Marc X. Makkes and i'm the student who is implementing the homomorphic encryption scheme for for NaCL project. Tanja urged me to contact you for some detail regarding the implementation and if i understand correctly your the one that is going to use this scheme for certain applications. Can you tell me a little bit the applications? In addition i've received the whish list. But it seems to me that there is missing a key setup/generation function. Can you maybe comment on that? Currently i've have made a ''basic'' c implementation, which is equivalent to your and my own python implementation. In the next few day's i hope to implement the subgroup variant as well as doing the CRT speedup for decryption. Regards, -Marc -- If this email is PGP signed, the fingerprint is: C6D2 B5D7 390E 0D4E DE02 460E DC7F 651E A9CB 1B34 signed with a 521-bit ECC key pgpAFMM2arQud.pgp Description: PGP signature --- End Message --- -- Martin Geisler VIFF (Virtual Ideal Functionality Framework) brings easy and efficient SMPC (Secure Multiparty Computation) to Python. See: http://viff.dk/. ___ viff-devel mailing list (http://viff.dk/) viff-devel@viff.dk http://lists.viff.dk/listinfo.cgi/viff-devel-viff.dk