{ "info": { "author": "Luca Pasqualini", "author_email": "pasqualini@diism.unisi.it", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "License :: OSI Approved :: BSD License", "Programming Language :: Python :: 3.6", "Topic :: Security :: Cryptography" ], "description": "NistRng\n*******\n\nLuca Pasqualini - SAILab - University of Siena\n############################################################\n\nThis is a *python 3.6* and above implementation of the **NIST Test Suite for Random Number Generators** (RNGs).\nThe idea behind this work is to make a script oriented object-oriented framework for said tests.\nThis is born from my research since I required to use the tests inside a python research project and I found existing\nimplementation to be not well suited to that task without extensive modifications.\n\nThe NIST reference paper can be found at `SP800-22r1a `_.\n\nThis work is inspired by the great work of David Johnston (C) 2017, which can be found on `github `_.\n\n**Features**\n\n- All the test in the **NIST** paper vectorized and optimized the best I could\n- Class structure for each test allowing for easy debug and use, both in script and inside broader applications\n- Utility functions to pack the sequence in 8-bits using numpy and to run the tests in multiple ways\n- Cache system both at function level and at test level to improve performance\n- Built-in measurement of time required to perform each test\n- Default Test class and Result class to allow eventual extension to additional tests\n\n**License**\n\n*BSD 3-Clause License*\n\nFor additional information check the provided license file.\n\n**How to install**\n\nIf you only need to use the framework, just download the pip package *nistrng* and import the package in your scripts:\n\n- pip install nistrng\n\nIf you want to improve/modify/extends the framework, or even just try my own simple benchmarks at home, download or clone\nthe git `repository `_. You are welcome to open issues or participate in the project, especially if further optimization is achieved.\n\n**How to use**\n\nFor a simple use case, refer to benchmark provided in the `repository `_. For advanced use, refer to the built-in documentation\nand to the provided source code in the `repository `_.\n\n**Current issues**\n\nCurrently the slow speed of both the Serial and Approximate Entropy tests is an open issue. Any solution or improvement is\nwelcome.\n\n**Changelog**\n\n- improved safe-guard against eventual NaN values that may arise inside the score calculations\n- added unpack function to return to the original numeric integer value from a 8-bit binary sequence\n- some minor fixes and adjustments", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/InsaneMonster/NistRng", "keywords": "NIST Tests RNG Random Number Generator SAILab USiena Siena SP800-22r1a", "license": "BSD 3-Clause", "maintainer": "", "maintainer_email": "", "name": "nistrng", "package_url": "https://pypi.org/project/nistrng/", "platform": "", "project_url": "https://pypi.org/project/nistrng/", "project_urls": { "Homepage": "https://github.com/InsaneMonster/NistRng" }, "release_url": "https://pypi.org/project/nistrng/1.2.0/", "requires_dist": null, "requires_python": "", "summary": "NIST Test Suite for Random Number Generators - SAILab - University of Siena", "version": "1.2.0" }, "last_serial": 5902308, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "f49fb8759763dcb0d781367d0f0b0860", "sha256": "979860fc4401b17bad5260145ad52113411f4380d0374c3265dcfa40f512432b" }, "downloads": -1, "filename": "nistrng-1.0.0.tar.gz", "has_sig": false, "md5_digest": "f49fb8759763dcb0d781367d0f0b0860", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17903, "upload_time": "2019-07-19T07:57:36", "url": "https://files.pythonhosted.org/packages/9a/e1/e7ef3e77a42a752caabfcee8995be937ec010ac7f53df8cf7dcabf170af8/nistrng-1.0.0.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "8b38eecc9c064bd5ad669e8596257f92", "sha256": "5d0d0bf3c8dc7d81bff343270fce90467aa397b1b0289e280f3ebb0ed1248895" }, "downloads": -1, "filename": "nistrng-1.1.0.tar.gz", "has_sig": false, "md5_digest": "8b38eecc9c064bd5ad669e8596257f92", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18150, "upload_time": "2019-07-19T08:32:53", "url": "https://files.pythonhosted.org/packages/50/6a/540e010d027f577d3baa1974d0ab1da49433cb6f5b9e2a01e4f34e488bde/nistrng-1.1.0.tar.gz" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "83e29b9499a8c9bba9a711f4f0212bb9", "sha256": "a41dfc39040d984f41c95407431d0eef4be7fb6f866a67d76ecd3fec69999463" }, "downloads": -1, "filename": "nistrng-1.1.1.tar.gz", "has_sig": false, "md5_digest": "83e29b9499a8c9bba9a711f4f0212bb9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18138, "upload_time": "2019-07-31T10:14:30", "url": "https://files.pythonhosted.org/packages/e8/aa/24b71abe431232599bf386a8a5f1a2a55c94208ec5670a9a854d6a53e2fe/nistrng-1.1.1.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "b5178617b369e4851e11de69bca5046b", "sha256": "e621f4d0daebb4caa7e6fe3c7a31c9c0e243658d3afc207e8e9d8c5cab06f38a" }, "downloads": -1, "filename": "nistrng-1.2.0.tar.gz", "has_sig": false, "md5_digest": "b5178617b369e4851e11de69bca5046b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18239, "upload_time": "2019-09-29T10:11:54", "url": "https://files.pythonhosted.org/packages/b5/de/c5bff31bf74c01901961291de190d4ed3ff4008f835e0a392c5c2e58b331/nistrng-1.2.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "b5178617b369e4851e11de69bca5046b", "sha256": "e621f4d0daebb4caa7e6fe3c7a31c9c0e243658d3afc207e8e9d8c5cab06f38a" }, "downloads": -1, "filename": "nistrng-1.2.0.tar.gz", "has_sig": false, "md5_digest": "b5178617b369e4851e11de69bca5046b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18239, "upload_time": "2019-09-29T10:11:54", "url": "https://files.pythonhosted.org/packages/b5/de/c5bff31bf74c01901961291de190d4ed3ff4008f835e0a392c5c2e58b331/nistrng-1.2.0.tar.gz" } ] }