{ "info": { "author": "Dusan Klinec", "author_email": "dusan.klinec@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Security" ], "description": "Python CryptoNight implementation\n=================================\n\n|Build Status|\n\nPython binding for Monero hash functions ``cn_fast_hash``,\n``cn_slow_hash``.\n\n- ``cn_fast_hash`` is used mainly for hashing to scalars / EC points.\n- ``cn_slow_hash`` is CryptoNight hash function used for mining and\n encryption key derivation for encrypted wallet files.\n- Supports CNv1, CNv2, CNv4\n- JIT tested on OSX + LLVM, experimental\n\nPy2, Py3 compatible + tests with Monero test vectors.\n\n::\n\n pip install py-cryptonight\n\nUsage\n-----\n\n.. code:: python\n\n import binascii\n import pycryptonight\n\n pycryptonight.cn_fast_hash(b'1')\n # hexcoded: b'c89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc6\n\n pycryptonight.cn_slow_hash(b'1')\n # hexcoded: b'cbdfba46388e040422b4a9daa471726be659ae184ee86420c2795647f0b301d5\n\n # variant 1:\n pycryptonight.cn_slow_hash(binascii.unhexlify(b'38274c97c45a172cfc97679870422e3a1ab0784960c60514d816271415c306ee3a3ed1a77e31f6a885c3cb'), 1) # variant 1\n # hexcoded: b'ed082e49dbd5bbe34a3726a0d1dad981146062b39d36d62c71eb1ed8ab49459b\n\n # variant 2:\n pycryptonight.cn_slow_hash(b'1', 2) # variant 2\n # hexcoded: b'44016d2376838d89b374e99a20118c0e8916e8c0a5b910744efc7d8f426509ca\n\n # variant 4:\n pycryptonight.cn_slow_hash(b'1', 4) # variant 4\n # hexcoded: b'97db7e03629f7c17e4d78b36a2d247d226b88a8df6cf69f2e4cdae1f1b706b4a\n\n # variant 4, height:\n pycryptonight.cn_slow_hash(b'1', 4, prehashed=0, height=1) # variant 4, height 1\n # hexcoded: b'09bcf4997132dc3d7980125620724acc9c90dc393cb6694097a7d745c57b6b5b\n\nBuild problems\n--------------\n\nThe extension builds with AES extension by default. To disable this,\nrebuild with:\n\n.. code:: bash\n\n MONERO_NO_AES=1 python setup.py install\n\nJIT\n~~~\n\nThe JIT optimization is disabled by default as the implementation was\nnot properly tested. If you want to experiment with JIT you need to\ncompile with:\n\n.. code:: bash\n\n MONERO_NO_JIT=0 python setup.py install\n MONERO_USE_CNV4_JIT=1 ./test.sh\n\nTo rebuild locally and test:\n\n.. code:: bash\n\n MONERO_NO_AES=0 MONERO_NO_JIT=0 python setup.py develop\n MONERO_USE_CNV4_JIT=0 ./test.sh # JIT disabled\n MONERO_USE_CNV4_JIT=1 ./test.sh # JIT enabled\n\nFor more info read `JIT.md `__\n\nDonations\n---------\n\nThanks for your support!\n\n``47BEukN83whUdvuXbaWmDDQLYNUpLsvFR2jioQtpP5vD8b3o74b9oFgQ3KFa3ibjbwBsaJEehogjiUCfGtugUGAuJAfbh1Z``\n\n.. |Build Status| image:: https://travis-ci.org/ph4r05/py-cryptonight.svg?branch=master\n :target: https://travis-ci.org/ph4r05/py-cryptonight", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/ph4r05/py-cryptonight", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "py-cryptonight", "package_url": "https://pypi.org/project/py-cryptonight/", "platform": "", "project_url": "https://pypi.org/project/py-cryptonight/", "project_urls": { "Homepage": "https://github.com/ph4r05/py-cryptonight" }, "release_url": "https://pypi.org/project/py-cryptonight/0.2.4/", "requires_dist": null, "requires_python": "", "summary": "Python Cryptonight", "version": "0.2.4" }, "last_serial": 4862117, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "7739a997b96015ea5a7183ff255e387e", "sha256": "b0153944b2da28ca43d65d14bca054ac4a7798341d8fc079e613e517de595fed" }, "downloads": -1, "filename": "py_cryptonight-0.1.0.tar.gz", "has_sig": false, "md5_digest": "7739a997b96015ea5a7183ff255e387e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 278554, "upload_time": "2018-04-22T01:38:00", "url": "https://files.pythonhosted.org/packages/3c/5e/afbadb5f10fa87e672cfc5fdcc7ecf70d45082b9907933ae261d70bc7405/py_cryptonight-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "e16dd324d367479ed2e2dcae582f6003", "sha256": "9599b2d4db693542568f9a5ae0dcee2c80294bf0266854f3d5a461fe1fe8c5d9" }, "downloads": -1, "filename": "py_cryptonight-0.1.1-cp27-cp27m-macosx_10_13_x86_64.whl", "has_sig": false, "md5_digest": "e16dd324d367479ed2e2dcae582f6003", "packagetype": "bdist_wheel", "python_version": "cp27", "requires_python": null, "size": 277700, "upload_time": "2018-04-22T01:44:08", "url": "https://files.pythonhosted.org/packages/80/25/e4fa25eb750a7bcbed5e74038e98a6fbc67ccb35386cf273c82c22eed628/py_cryptonight-0.1.1-cp27-cp27m-macosx_10_13_x86_64.whl" }, { "comment_text": "", "digests": { "md5": "e5701c3d9073eedcdb0bd5805f6c87d8", "sha256": "26701e4d7028167c19073ad399c9588de17b191d7a3744b6fa9e9c41d9824ed7" }, "downloads": -1, "filename": "py_cryptonight-0.1.1.tar.gz", "has_sig": false, "md5_digest": "e5701c3d9073eedcdb0bd5805f6c87d8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 278655, "upload_time": "2018-04-22T01:43:42", "url": "https://files.pythonhosted.org/packages/46/39/d22410ab2f419551a3c3ec1eed79e633932b665b260f9c60db3fa246d8e1/py_cryptonight-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "ab08c96ae326e188f6b92c4fb6b7f4d5", "sha256": "d679e10ecb8868354c898811a6dabc52cf137f3064a0e95c83e679f03c97a443" }, "downloads": -1, "filename": "py_cryptonight-0.1.2-cp27-cp27m-macosx_10_13_x86_64.whl", "has_sig": false, "md5_digest": "ab08c96ae326e188f6b92c4fb6b7f4d5", "packagetype": "bdist_wheel", "python_version": "cp27", "requires_python": null, "size": 277736, "upload_time": "2018-04-22T13:18:36", "url": "https://files.pythonhosted.org/packages/66/4b/40d833e0fffb9c7c6dfbf6ae4631727bb9384134bc87e96450b1bf78993f/py_cryptonight-0.1.2-cp27-cp27m-macosx_10_13_x86_64.whl" }, { "comment_text": "", "digests": { "md5": "88c736f5a4a4e9ec0f3dd4479ca328cc", "sha256": "5dd5efa98ce4bf2796405aabe2933f78363609ba5ac8057ec67ea6473795b6de" }, "downloads": -1, "filename": "py_cryptonight-0.1.2.tar.gz", "has_sig": false, "md5_digest": "88c736f5a4a4e9ec0f3dd4479ca328cc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 289801, "upload_time": "2018-04-22T13:17:55", "url": "https://files.pythonhosted.org/packages/21/1a/c2a74f0eac7454e3b0f6722cba67af69dd8c63b9cef80a76f68ae8d9d31b/py_cryptonight-0.1.2.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "3570bb1eec1d62f0997e7deae0ba048e", "sha256": "e7bcf7f6b10a393bb35e495c75a8696f1c923f2401dc55f3799c9a80af26c899" }, "downloads": -1, "filename": "py_cryptonight-0.1.5-cp27-cp27m-macosx_10_13_x86_64.whl", "has_sig": false, "md5_digest": "3570bb1eec1d62f0997e7deae0ba048e", "packagetype": "bdist_wheel", "python_version": "cp27", "requires_python": null, "size": 277733, "upload_time": "2018-04-22T21:25:00", "url": "https://files.pythonhosted.org/packages/db/d3/f3f2cbb27a91d4fb6b9117a7f0ae7dc562d5d4bc0b7f66c6e8771792a23f/py_cryptonight-0.1.5-cp27-cp27m-macosx_10_13_x86_64.whl" }, { "comment_text": "", "digests": { "md5": "7cee635286f392b367d95bab17f27d8f", "sha256": "790008ab77a6b6d8751183a635f0fea298f6795cc87a022d714fcfa4c69b446c" }, "downloads": -1, "filename": "py_cryptonight-0.1.5-cp36-cp36m-macosx_10_13_x86_64.whl", "has_sig": true, "md5_digest": "7cee635286f392b367d95bab17f27d8f", "packagetype": "bdist_wheel", "python_version": "cp36", "requires_python": null, "size": 276172, "upload_time": "2018-04-23T13:49:05", "url": "https://files.pythonhosted.org/packages/8a/24/08bf00f2bce62080f0039479f9963b97ee6c42f1223ba971ffc9136f9230/py_cryptonight-0.1.5-cp36-cp36m-macosx_10_13_x86_64.whl" }, { "comment_text": "", "digests": { "md5": "46263100c2993732234e4ac28258d4cd", "sha256": "1323961860abeb4d062d163060c7b2e00735accf5df38b2983acff138f96c814" }, "downloads": -1, "filename": "py_cryptonight-0.1.5.tar.gz", "has_sig": false, "md5_digest": "46263100c2993732234e4ac28258d4cd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 289799, "upload_time": "2018-04-22T21:24:34", "url": "https://files.pythonhosted.org/packages/c0/ed/ea836d862f7930e80cc85ff0aa9fa860808ccd961257de355c7a5f7fcb46/py_cryptonight-0.1.5.tar.gz" } ], "0.1.7": [ { "comment_text": "", "digests": { "md5": "9d977ee2eb8ca3646f4510967d77b6da", "sha256": "c1f957614d289c5d1cff7ff0a223247ff6e585d59a63383fd8b071ac2450a41d" }, "downloads": -1, "filename": "py_cryptonight-0.1.7.tar.gz", "has_sig": true, "md5_digest": "9d977ee2eb8ca3646f4510967d77b6da", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 289817, "upload_time": "2019-02-12T21:53:39", "url": "https://files.pythonhosted.org/packages/03/92/9c0527e2d99e322e20d4b8d36ba2dfdc2257d4768f31377c4d447eea1798/py_cryptonight-0.1.7.tar.gz" } ], "0.1.8": [ { "comment_text": "", "digests": { "md5": "2bda5834830b2124c4d6ab73a392bafc", "sha256": "18ef26c56d7b677c527932af37a9bc98f39e4a56a87a003ef9a3a994d8bfe080" }, "downloads": -1, "filename": "py_cryptonight-0.1.8.tar.gz", "has_sig": true, "md5_digest": "2bda5834830b2124c4d6ab73a392bafc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 293300, "upload_time": "2019-02-12T21:55:44", "url": "https://files.pythonhosted.org/packages/68/57/c4507aa009b83facc567f81be642f17ff0c093fd71c8d28fb2d78be4e322/py_cryptonight-0.1.8.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "1b75096d535b503354aa32d58f5eebe5", "sha256": "09e604c324b8d181bbf9bb640d25d0cceca588d1270636599e64fb5dc8039d3a" }, "downloads": -1, "filename": "py_cryptonight-0.2.0-cp36-cp36m-macosx_10_13_x86_64.whl", "has_sig": true, "md5_digest": "1b75096d535b503354aa32d58f5eebe5", "packagetype": "bdist_wheel", "python_version": "cp36", "requires_python": null, "size": 296505, "upload_time": "2019-02-23T20:54:13", "url": "https://files.pythonhosted.org/packages/e5/af/0acd4369fae3937b978f443e5fe1a612ccaca24aa58cc6d9dbe8cf466470/py_cryptonight-0.2.0-cp36-cp36m-macosx_10_13_x86_64.whl" }, { "comment_text": "", "digests": { "md5": "299d23455aee21fdd1e7846e934dd3fc", "sha256": "2b96ff778258ea6200fc00877782ca81a283c1bc699eff06707a11fc7215b9a6" }, "downloads": -1, "filename": "py_cryptonight-0.2.0.tar.gz", "has_sig": true, "md5_digest": "299d23455aee21fdd1e7846e934dd3fc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 469706, "upload_time": "2019-02-23T20:54:02", "url": "https://files.pythonhosted.org/packages/72/14/fb66fe4d5d4ff13dcd1464a1130d8a4a2d5451a6c0416845fbcd918e8567/py_cryptonight-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "9624c59dc167da1b22df017bfd0b7a8a", "sha256": "a7c41fb930706f363ed41df8d6fa46dc4dbd1a2ebd24ed99c3f61e4bf88c61e9" }, "downloads": -1, "filename": "py_cryptonight-0.2.1-cp36-cp36m-macosx_10_13_x86_64.whl", "has_sig": true, "md5_digest": "9624c59dc167da1b22df017bfd0b7a8a", "packagetype": "bdist_wheel", "python_version": "cp36", "requires_python": null, "size": 300443, "upload_time": "2019-02-23T21:22:11", "url": "https://files.pythonhosted.org/packages/36/b7/61d5c0ca146f93a1d51f0757d0869e059ca7d74d7f61c47a32853f5c98aa/py_cryptonight-0.2.1-cp36-cp36m-macosx_10_13_x86_64.whl" }, { "comment_text": "", "digests": { "md5": "4b12d00c8d78eb1a1f173404764c16f1", "sha256": "307aec5cb4aa514189f63709e7aae302db42f53d210b85f94996dabd3a65dd06" }, "downloads": -1, "filename": "py_cryptonight-0.2.1.tar.gz", "has_sig": true, "md5_digest": "4b12d00c8d78eb1a1f173404764c16f1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 317485, "upload_time": "2019-02-23T21:21:59", "url": "https://files.pythonhosted.org/packages/29/e0/ebb6e0dcebc1592cb478481e84bea28b470e54d8a7259c5ef92e063b4d8d/py_cryptonight-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "ba74c7baaadfdcdffb9059ed8512d513", "sha256": "53497fae02a8b32d271d881d131dba62bb6047c79a201d3e6503cf1721191738" }, "downloads": -1, "filename": "py_cryptonight-0.2.2-cp36-cp36m-macosx_10_13_x86_64.whl", "has_sig": true, "md5_digest": "ba74c7baaadfdcdffb9059ed8512d513", "packagetype": "bdist_wheel", "python_version": "cp36", "requires_python": null, "size": 300444, "upload_time": "2019-02-23T21:34:19", "url": "https://files.pythonhosted.org/packages/05/74/582a8c2181917d5180994e071025df0bb155b62ecd5a6e85a75723bcd77e/py_cryptonight-0.2.2-cp36-cp36m-macosx_10_13_x86_64.whl" }, { "comment_text": "", "digests": { "md5": "7ffceac01e02826ad32ebf1d38dee245", "sha256": "aa46ba019439f334af2281a525d7af0a42d7a42bae48e7d6e6cbc1ad83ebe190" }, "downloads": -1, "filename": "py_cryptonight-0.2.2.tar.gz", "has_sig": true, "md5_digest": "7ffceac01e02826ad32ebf1d38dee245", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 317506, "upload_time": "2019-02-23T21:34:11", "url": "https://files.pythonhosted.org/packages/13/87/a1db1d0ba5200eccd8490b78b65177279f8de464140fd8751ef9b57c7cd4/py_cryptonight-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "d802812acda55ef875a3145b89feab67", "sha256": "85886343037863d5fd48d7d074432bb11703b76e8a9423c3ff53896acebe6a53" }, "downloads": -1, "filename": "py_cryptonight-0.2.3.tar.gz", "has_sig": true, "md5_digest": "d802812acda55ef875a3145b89feab67", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 317746, "upload_time": "2019-02-24T09:46:30", "url": "https://files.pythonhosted.org/packages/74/a6/860be1c67b3e2f41a2f72216db3813297b9c54f8cf40a0d88c25878dc35f/py_cryptonight-0.2.3.tar.gz" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "58722e2088d1f709c2a7b949cf08f3fe", "sha256": "7dae42a96ad4d0e61ca67ca04f71d4faad62653df8d8dd58eb04c0bee335bfbe" }, "downloads": -1, "filename": "py_cryptonight-0.2.4-cp36-cp36m-macosx_10_13_x86_64.whl", "has_sig": true, "md5_digest": "58722e2088d1f709c2a7b949cf08f3fe", "packagetype": "bdist_wheel", "python_version": "cp36", "requires_python": null, "size": 300435, "upload_time": "2019-02-24T22:15:53", "url": "https://files.pythonhosted.org/packages/99/73/c24d0d2ae4c27865947e9173285ab68eea76127a7e69f1677b53f2514ccf/py_cryptonight-0.2.4-cp36-cp36m-macosx_10_13_x86_64.whl" }, { "comment_text": "", "digests": { "md5": "9a0c2c4be2ac3f069a8584516b33a658", "sha256": "a56dfb87dc937676ff0716a1a43d4fdd7dd6cbdbab6bb531ba82bec2ed0daa33" }, "downloads": -1, "filename": "py_cryptonight-0.2.4.tar.gz", "has_sig": true, "md5_digest": "9a0c2c4be2ac3f069a8584516b33a658", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 328852, "upload_time": "2019-02-24T22:15:32", "url": "https://files.pythonhosted.org/packages/5e/12/718549356abab7f03cf8c3c5012777b803581bcb40825d2515c1e53d6263/py_cryptonight-0.2.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "58722e2088d1f709c2a7b949cf08f3fe", "sha256": "7dae42a96ad4d0e61ca67ca04f71d4faad62653df8d8dd58eb04c0bee335bfbe" }, "downloads": -1, "filename": "py_cryptonight-0.2.4-cp36-cp36m-macosx_10_13_x86_64.whl", "has_sig": true, "md5_digest": "58722e2088d1f709c2a7b949cf08f3fe", "packagetype": "bdist_wheel", "python_version": "cp36", "requires_python": null, "size": 300435, "upload_time": "2019-02-24T22:15:53", "url": "https://files.pythonhosted.org/packages/99/73/c24d0d2ae4c27865947e9173285ab68eea76127a7e69f1677b53f2514ccf/py_cryptonight-0.2.4-cp36-cp36m-macosx_10_13_x86_64.whl" }, { "comment_text": "", "digests": { "md5": "9a0c2c4be2ac3f069a8584516b33a658", "sha256": "a56dfb87dc937676ff0716a1a43d4fdd7dd6cbdbab6bb531ba82bec2ed0daa33" }, "downloads": -1, "filename": "py_cryptonight-0.2.4.tar.gz", "has_sig": true, "md5_digest": "9a0c2c4be2ac3f069a8584516b33a658", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 328852, "upload_time": "2019-02-24T22:15:32", "url": "https://files.pythonhosted.org/packages/5e/12/718549356abab7f03cf8c3c5012777b803581bcb40825d2515c1e53d6263/py_cryptonight-0.2.4.tar.gz" } ] }