{ "info": { "author": "Cedric Mesnil", "author_email": "cslashm@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Topic :: Security :: Cryptography" ], "description": "ECPy\n====\n\nECPy (pronounced ekpy), is a pure python Elliptic Curve library\nproviding ECDSA, EDDSA (Ed25519), ECSchnorr, Borromean signatures as well as Point\noperations.\n\nFull html documentation is available `here `_.\n\n\n**ECDSA sample**\n\n::\n\n from ecpy.curves import Curve,Point\n from ecpy.keys import ECPublicKey, ECPrivateKey\n from ecpy.ecdsa import ECDSA\n\n cv = Curve.get_curve('secp256k1')\n pu_key = ECPublicKey(Point(0x65d5b8bf9ab1801c9f168d4815994ad35f1dcb6ae6c7a1a303966b677b813b00,\n 0xe6b865e529b8ecbf71cf966e900477d49ced5846d7662dd2dd11ccd55c0aff7f,\n cv))\n pv_key = ECPrivateKey(0xfb26a4e75eec75544c0f44e937dcf5ee6355c7176600b9688c667e5c283b43c5,\n cv)\n\n\n signer = ECDSA()\n sig = signer.sign(b'01234567890123456789012345678912',pv_key)\n assert(signer.verify(b'01234567890123456789012345678912',sig,pu_key))\n\n**Point sample**\n\n::\n\n from ecpy.curves import Curve,Point\n\n cv = Curve.get_curve('secp256k1')\n P = Point(0x65d5b8bf9ab1801c9f168d4815994ad35f1dcb6ae6c7a1a303966b677b813b00,\n 0xe6b865e529b8ecbf71cf966e900477d49ced5846d7662dd2dd11ccd55c0aff7f,\n cv)\n k = 0xfb26a4e75eec75544c0f44e937dcf5ee6355c7176600b9688c667e5c283b43c5\n Q = k*P\n R = P+Q\n\n\n\n\nQuick Install\n=============\n\nFrom Pypi\n---------\n\n::\n\n $ pip install ECPy\n\n\n\nFrom Github\n-----------\n\n.. _tarball dist:\n\nFrom tarball dist\n`````````````````\nDownload last dist tarball.\n\nUntar it\n\n::\n\n $ tar xzvf ECPy-M.m.tar.gz\n\ninstall it (or use it as is...)\n\n::\n\n $ python3 setup.py install\n\nFrom sources\n````````````\n\nClone the git repository\n\nRebuild the tarball\n\n::\n\n $ python3 setup.py sdist\n\nContinue with the created `tarball dist`_.\n\n\nGenerate the documentation\n==========================\n\n\nYou can regenerate the doc from git clone\n\n::\n\n $ cd doc\n $ make singlehtml\n\nDocumentation is in build dir", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/cslashm/ECPy", "keywords": "ecdsa eddsa ed25519 ed448 schnorr ecschnorr elliptic curve", "license": "Apache License - Version 2.0", "maintainer": "", "maintainer_email": "", "name": "ECPy", "package_url": "https://pypi.org/project/ECPy/", "platform": "", "project_url": "https://pypi.org/project/ECPy/", "project_urls": { "Homepage": "https://github.com/cslashm/ECPy" }, "release_url": "https://pypi.org/project/ECPy/0.10.0/", "requires_dist": null, "requires_python": "", "summary": "Pure Pyhton Elliptic Curve Library", "version": "0.10.0" }, "last_serial": 4391029, "releases": { "0.10.0": [ { "comment_text": "", "digests": { "md5": "73f1cc66cf0c3b3d755af9a9560ac03a", "sha256": "8889122d3a8bc1a08b4bda42c073dd22305d770b7876356de806ff91748983bd" }, "downloads": -1, "filename": "ECPy-0.10.0.tar.gz", "has_sig": false, "md5_digest": "73f1cc66cf0c3b3d755af9a9560ac03a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 33004, "upload_time": "2018-10-18T16:46:46", "url": "https://files.pythonhosted.org/packages/98/90/84dac1dbbbdd3f7870a9d36fc5e8bdb4b5c16c7ae70c3ecfbdf8e7ff3883/ECPy-0.10.0.tar.gz" } ], "0.8.0": [ { "comment_text": "", "digests": { "md5": "f3bc98d548c40598497753e4f50f4066", "sha256": "2a0f319fe927069ad0f0009d0ce8693054ddcd391f7a7e461f986756cbc3412c" }, "downloads": -1, "filename": "ECPy-0.8.0.tar.gz", "has_sig": false, "md5_digest": "f3bc98d548c40598497753e4f50f4066", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26819, "upload_time": "2016-07-21T12:14:14", "url": "https://files.pythonhosted.org/packages/6b/16/90d3e003515fd284820459498ec80da428d7229c15bce27e2d87a50f6b86/ECPy-0.8.0.tar.gz" } ], "0.8.1": [ { "comment_text": "", "digests": { "md5": "8824902b9a4562f689e5e5546509cc51", "sha256": "94781bf82bb25d5becbf9164052f897f31908700e1ef56396355af45ba066629" }, "downloads": -1, "filename": "ECPy-0.8.1.tar.gz", "has_sig": false, "md5_digest": "8824902b9a4562f689e5e5546509cc51", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27664, "upload_time": "2016-08-03T09:49:23", "url": "https://files.pythonhosted.org/packages/96/43/61c18b302626459754f8d3e4a910611cc66def4652020413036a3e652f91/ECPy-0.8.1.tar.gz" } ], "0.8.2": [ { "comment_text": "", "digests": { "md5": "7c80b363b7d2bac380d894b023d05707", "sha256": "0509a90714448ef47ef727cb7aee3415995c883c945e972521b5838fa4c50e24" }, "downloads": -1, "filename": "ECPy-0.8.2.tar.gz", "has_sig": false, "md5_digest": "7c80b363b7d2bac380d894b023d05707", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31168, "upload_time": "2017-11-21T13:31:45", "url": "https://files.pythonhosted.org/packages/ef/77/88230537bd299a98bc7001b5c88ca200c603cca03a820797be2e51e6666a/ECPy-0.8.2.tar.gz" } ], "0.8.3": [ { "comment_text": "", "digests": { "md5": "c2b903db8c79a3bb28fefff42920fddf", "sha256": "ef3d95419d53368f52fb7d4b883b8df0dfc2dd19a76243422d24981c3e5f27bd" }, "downloads": -1, "filename": "ECPy-0.8.3.tar.gz", "has_sig": false, "md5_digest": "c2b903db8c79a3bb28fefff42920fddf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34718, "upload_time": "2018-01-11T13:57:19", "url": "https://files.pythonhosted.org/packages/ea/41/3ca89e3e466bcbafab35122d2efe513f513cdcebac51dc542daba22ea2c3/ECPy-0.8.3.tar.gz" } ], "0.9.0": [ { "comment_text": "", "digests": { "md5": "0a3a265e96d0a93253aa947f58fb0057", "sha256": "ef41346ae24789699f3bc3ddefbfac03ad6b73b7d3d19b998ba9ce47b67c7277" }, "downloads": -1, "filename": "ECPy-0.9.0.tar.gz", "has_sig": false, "md5_digest": "0a3a265e96d0a93253aa947f58fb0057", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 32553, "upload_time": "2018-03-07T13:42:55", "url": "https://files.pythonhosted.org/packages/60/4b/251e14580f5b0478ff0550baa2a0d95510a1e51a47bed4073994cf4fae29/ECPy-0.9.0.tar.gz" } ], "0.9.1": [ { "comment_text": "", "digests": { "md5": "52e8fe7e276361e6b5f5c3633bd1b509", "sha256": "f0df66be67f3de0152dfb3c453f4247bdfa2b4e37aa75b98617a637376032229" }, "downloads": -1, "filename": "ECPy-0.9.1.tar.gz", "has_sig": false, "md5_digest": "52e8fe7e276361e6b5f5c3633bd1b509", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 32668, "upload_time": "2018-08-08T10:08:48", "url": "https://files.pythonhosted.org/packages/41/fe/2507bdbf6d39d948801f60b8b4342464839951d9d1a38f128ee0fa20c506/ECPy-0.9.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "73f1cc66cf0c3b3d755af9a9560ac03a", "sha256": "8889122d3a8bc1a08b4bda42c073dd22305d770b7876356de806ff91748983bd" }, "downloads": -1, "filename": "ECPy-0.10.0.tar.gz", "has_sig": false, "md5_digest": "73f1cc66cf0c3b3d755af9a9560ac03a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 33004, "upload_time": "2018-10-18T16:46:46", "url": "https://files.pythonhosted.org/packages/98/90/84dac1dbbbdd3f7870a9d36fc5e8bdb4b5c16c7ae70c3ecfbdf8e7ff3883/ECPy-0.10.0.tar.gz" } ] }