{ "info": { "author": "Carlton Shepherd", "author_email": "carlton@linux.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Science/Research", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Topic :: Security :: Cryptography" ], "description": "# paillier-lib\n\nThis package provides a simple implementation of the Paillier cryptosystem using gmpy2.\n\n# Usage\n\n```\nfrom paillierlib import paillier\nfrom gmpy2 import mpz\n\nkey_pair = paillier.keygen() # Optional param.: bit size (default = 2048)\n\nm1 = mpz(10)\nm2 = mpz(1)\nc1 = paillier.encrypt(m1, key_pair.public_key)\nc2 = paillier.encrypt(m2, key_pair.public_key)\n\n# Example homomorphic operations\n# Addition\npaillier.decrypt(c1 + c2, key_pair.private_key) # => 11\npaillier.decrypt(c1 - c2, key_pair.private_key) # => 9\npaillier.decrypt(c1 + c1 + c2, key_pair.private_key) # => 21\n\n# Multiplication (ciphertext with plaintext)\nm3 = mpz(2)\npaillier.decrypt(c1 * m3, key_pair.private_key) # => 20\n\n```\n\n# Requirements\n\ngmpy2 (tested v2.0.8)\n\n# Planned Work\n* Encode inputs, rather than requiring GMP MPZ objects.", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/carltonshepherd/paillier-lib", "keywords": "paillier,encryption,decryption,homomorphic,crypto,cryptography,security,privacy", "license": "", "maintainer": "", "maintainer_email": "", "name": "paillierlib", "package_url": "https://pypi.org/project/paillierlib/", "platform": "", "project_url": "https://pypi.org/project/paillierlib/", "project_urls": { "Homepage": "https://github.com/carltonshepherd/paillier-lib" }, "release_url": "https://pypi.org/project/paillierlib/0.0.2/", "requires_dist": null, "requires_python": "", "summary": "A simple implementation of the Paillier cryptosystem", "version": "0.0.2" }, "last_serial": 4291416, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "820d353e8ffab4b94b9f44552892838f", "sha256": "43e9f7b980a49f58d94020d576954ed2ce58d410467581ff6081e8a958f16960" }, "downloads": -1, "filename": "paillierlib-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "820d353e8ffab4b94b9f44552892838f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3528, "upload_time": "2018-09-19T20:10:58", "url": "https://files.pythonhosted.org/packages/8b/0b/78176a076be40f0472f34694adeeed3bd9ca7e1898af79b40ba1984174d4/paillierlib-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a769f7eeca7482ea996345c676abf776", "sha256": "062593ba7043dd977bd7c403eb12f2447cfd953e7ada298015d0447095d38b5f" }, "downloads": -1, "filename": "paillierlib-0.0.1.tar.gz", "has_sig": false, "md5_digest": "a769f7eeca7482ea996345c676abf776", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2741, "upload_time": "2018-09-19T20:10:59", "url": "https://files.pythonhosted.org/packages/b9/d0/03ead5b6a406a98cd2d430307e8ffc13971621bfa319219b389c1e4bdc0d/paillierlib-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "a26b4506e559fc74d5ec2ccdd04789a9", "sha256": "80c2db03dc136c82a59039b3e7a4dcc0ed3cec14b8732efb996d027999ed03f6" }, "downloads": -1, "filename": "paillierlib-0.0.2.tar.gz", "has_sig": false, "md5_digest": "a26b4506e559fc74d5ec2ccdd04789a9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2735, "upload_time": "2018-09-20T06:11:11", "url": "https://files.pythonhosted.org/packages/22/b7/b1731249cafc33326e66e350588244ecbcae8810f615226283937c34a415/paillierlib-0.0.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a26b4506e559fc74d5ec2ccdd04789a9", "sha256": "80c2db03dc136c82a59039b3e7a4dcc0ed3cec14b8732efb996d027999ed03f6" }, "downloads": -1, "filename": "paillierlib-0.0.2.tar.gz", "has_sig": false, "md5_digest": "a26b4506e559fc74d5ec2ccdd04789a9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2735, "upload_time": "2018-09-20T06:11:11", "url": "https://files.pythonhosted.org/packages/22/b7/b1731249cafc33326e66e350588244ecbcae8810f615226283937c34a415/paillierlib-0.0.2.tar.gz" } ] }