{ "info": { "author": "MissingLink.ai", "author_email": "support@missinglink.ai", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3" ], "description": "### ML-Crypto\nThis library is `pycrypto` / `pycryptodome` wrapper that standardises the MissingLink.ai-s encryption and allows easy extentions to support additional encryption schemes.\n\n ## Overview\n * This library contains a set of `Cipher`s. Each `Cipher` has \n * `encrpyt` and `decrypt` functions that *MUST* return/accept byte array and \n * `encrpyt_string` / `decrypt_string` that work with string objects that will be a `base64` representation of the encrypted byte output of the underlying `[en|de]crypt functions`\n * If your cipher returns structured data (such as `IV` and other data), you SHOULD use `namedtuples` and extend them with `MsgPackNamedTuple` mixin. This will allow you to easly dump the named tuple into optimised byterarray, in order to be flexable with the object, currently we are converting the named tuple into `dict` in order to be able to add fields in the feature \n * You SHOULD provide key generation function as part of the cipher that will generate key (the function may perform external calls in case of cloud kms and etc.) \n ## Current Ciphers\n * Symmetric - `AES-CTR` encryption with `256` bits (32 bytes) key length\n * Asymmetric - `PKCS1_OAEP` encryption with `SHA512` hashAlgo\n * Envelope - Envelope encryption where the body is encrypted with the `Symmetric` cipher. the `DEK` (data encryption key) is encrypted using non-specific cipher provided during init\n\n ## PyCryptoDome vs PyCrypto vs None\n * When installing, no cryptography package is provided by default. Use `mlcrypto[pycryptodome]` or `mlcrypto[pycrypto]` to ensure one is installed or use the default if you know you have one installed\n * As `pycrypto` is dead, prefer using `pycryptodome` and expect some issues (The main one is encrypted ssh private keys) not to work\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://missinglink.ai", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "mlcrypto", "package_url": "https://pypi.org/project/mlcrypto/", "platform": "", "project_url": "https://pypi.org/project/mlcrypto/", "project_urls": { "Homepage": "https://missinglink.ai" }, "release_url": "https://pypi.org/project/mlcrypto/0.6.297/", "requires_dist": [ "six", "msgpack (~=0.5.6)", "pycrypto (~=2.6.1); extra == 'pycrypto'", "pycryptodome (~=3.6.4); extra == 'pycryptodomex'" ], "requires_python": "", "summary": "pyCrypto wrapper, used by various MissingLink.ai libraries", "version": "0.6.297" }, "last_serial": 4091170, "releases": { "0.1.161": [ { "comment_text": "", "digests": { "md5": "6c0305ff3846e116c66d45b3b82dd8c8", "sha256": "e102d2ddbe6ac8cfaaf4b78451d39d2b2876568e8306574ca73d0dc54f3ca292" }, "downloads": -1, "filename": "mlcrypto-0.1.161-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "6c0305ff3846e116c66d45b3b82dd8c8", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5720, "upload_time": "2018-07-18T14:32:14", "url": "https://files.pythonhosted.org/packages/d9/19/72ecd044a225db4e584e0209320f0e562c0467ca18b76feb43f9e6056a43/mlcrypto-0.1.161-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "22dc841797b90d8d747f60971910860b", "sha256": "56c1ad7943832eba2a5df777cf24c9aa3d3dd0f624a1100f8f59eef98ebacb1c" }, "downloads": -1, "filename": "mlcrypto-0.1.161.tar.gz", "has_sig": false, "md5_digest": "22dc841797b90d8d747f60971910860b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3900, "upload_time": "2018-07-18T14:32:14", "url": "https://files.pythonhosted.org/packages/50/21/bb5c6edd3099b7600e012524f99be8c379a8203ab843102003e3c4a2bfc8/mlcrypto-0.1.161.tar.gz" } ], "0.2.180": [ { "comment_text": "", "digests": { "md5": "52d3a8424ef34171341935b3752c1cbd", "sha256": "03b2401c2c503cfeb0f850a39373d5d9f41d12ff13dcc3d491f306371a8d9bda" }, "downloads": -1, "filename": "mlcrypto-0.2.180-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "52d3a8424ef34171341935b3752c1cbd", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7143, "upload_time": "2018-07-19T11:54:26", "url": "https://files.pythonhosted.org/packages/d3/4b/98a88762422d6fe107880a42736c96101301421cc1fc4a2891f18c98e68f/mlcrypto-0.2.180-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c2a93ab791096d57386a4b52e0d3154e", "sha256": "a0dce28fa66649cb1e74e817046a4abc1e108a0e3586f290dc1a3af1c8a5cd2b" }, "downloads": -1, "filename": "mlcrypto-0.2.180.tar.gz", "has_sig": false, "md5_digest": "c2a93ab791096d57386a4b52e0d3154e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4517, "upload_time": "2018-07-19T11:54:27", "url": "https://files.pythonhosted.org/packages/79/84/94c2a725a7842633d3ba2d51f779ceb08a4ed08ae508bf9b6e7e0172c62d/mlcrypto-0.2.180.tar.gz" } ], "0.3.196": [ { "comment_text": "", "digests": { "md5": "0a33c6a69ea47f52ab7ac16c4f61a4b1", "sha256": "c837a08ad543f780f9f3a9720d5860b25dc367e763c3d211f0cf92437c5add02" }, "downloads": -1, "filename": "mlcrypto-0.3.196-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0a33c6a69ea47f52ab7ac16c4f61a4b1", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7640, "upload_time": "2018-07-19T13:30:43", "url": "https://files.pythonhosted.org/packages/c9/b5/af3f98b514cbc4e9eba3a9cfeca72a47176aa73cad4098025bfd25d7d502/mlcrypto-0.3.196-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "37b31f1be1eb55521ccfec9d7fe4ff40", "sha256": "ee91f9fcc3de820a1e20d2d7f9813f3337f3ba4f748ad4c0279da6a811dc3032" }, "downloads": -1, "filename": "mlcrypto-0.3.196.tar.gz", "has_sig": false, "md5_digest": "37b31f1be1eb55521ccfec9d7fe4ff40", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4709, "upload_time": "2018-07-19T13:30:44", "url": "https://files.pythonhosted.org/packages/d2/77/3fbd95ad8cc5eb4c13e328bc75da44df260abe5706033c41b43aa81818a0/mlcrypto-0.3.196.tar.gz" } ], "0.4.246": [ { "comment_text": "", "digests": { "md5": "f23e490c6c6b50eebcbaa0d93197ebfb", "sha256": "a09f49287dbe0cabd8a8d909cb536b9da80eb40fb34f349db18f3e91a59f9c8c" }, "downloads": -1, "filename": "mlcrypto-0.4.246-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f23e490c6c6b50eebcbaa0d93197ebfb", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8228, "upload_time": "2018-07-21T21:27:15", "url": "https://files.pythonhosted.org/packages/5b/ae/5ea2b4365f0d4d709502bb5884f87e6a077542894fe010aaeebd63f26ee8/mlcrypto-0.4.246-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cdc2665068ef90cba1fac80c5eaa54a1", "sha256": "7d0276ce987b7d215b9a7a63a023ba686180820f59906424a42773ae0e02afe8" }, "downloads": -1, "filename": "mlcrypto-0.4.246.tar.gz", "has_sig": false, "md5_digest": "cdc2665068ef90cba1fac80c5eaa54a1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5176, "upload_time": "2018-07-21T21:27:16", "url": "https://files.pythonhosted.org/packages/74/e9/aad9d8a8e1da9aa8b44642b306d3e8036d8a8390bc78b63d7f9a60081315/mlcrypto-0.4.246.tar.gz" } ], "0.5.269": [ { "comment_text": "", "digests": { "md5": "c1a45594f1d256bd444100003e1d5422", "sha256": "d29d66a05d457dd82940d4464dee09379dcb3311cc32e16c530f305b27d7a5da" }, "downloads": -1, "filename": "mlcrypto-0.5.269-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c1a45594f1d256bd444100003e1d5422", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7813, "upload_time": "2018-07-22T15:17:30", "url": "https://files.pythonhosted.org/packages/16/51/8f019bdb6146e25deacf585de0d02bbb126f13c31e1272b9b95ddb4b3516/mlcrypto-0.5.269-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "34f42d03ecde683b06d947d8ba08cf92", "sha256": "42bd6e951e8803a155f1734e33e6e79835cb56d79c91a4cdf354928f78ebdb25" }, "downloads": -1, "filename": "mlcrypto-0.5.269.tar.gz", "has_sig": false, "md5_digest": "34f42d03ecde683b06d947d8ba08cf92", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4988, "upload_time": "2018-07-22T15:17:31", "url": "https://files.pythonhosted.org/packages/c0/a9/4282b50f802d54ab6630afd015c1a36399d6f736437deb2be65c7b2f45c8/mlcrypto-0.5.269.tar.gz" } ], "0.6.297": [ { "comment_text": "", "digests": { "md5": "53bd5501e11138f9e4d8aa91a036d41e", "sha256": "62001a7fc3e91c7ef0e59d07cae6fc7381fa2ecbef46fd4cccc854449846e582" }, "downloads": -1, "filename": "mlcrypto-0.6.297-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "53bd5501e11138f9e4d8aa91a036d41e", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7803, "upload_time": "2018-07-22T22:57:29", "url": "https://files.pythonhosted.org/packages/cb/9a/13d1486907faded369e49b9274f9118cba608183b0ef175edc26bd307c5f/mlcrypto-0.6.297-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "35511bd3b1c4d16e4493acb5a42c180d", "sha256": "bb93d55deaa8c21e5e3b7be4258a64d5bdd19c3494ed97ddfb57da9bbad175bc" }, "downloads": -1, "filename": "mlcrypto-0.6.297.tar.gz", "has_sig": false, "md5_digest": "35511bd3b1c4d16e4493acb5a42c180d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5000, "upload_time": "2018-07-22T22:57:30", "url": "https://files.pythonhosted.org/packages/98/d2/6eb946b43b67fdbd63173c712382da7128ca261206440a1641c5e1920e4c/mlcrypto-0.6.297.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "53bd5501e11138f9e4d8aa91a036d41e", "sha256": "62001a7fc3e91c7ef0e59d07cae6fc7381fa2ecbef46fd4cccc854449846e582" }, "downloads": -1, "filename": "mlcrypto-0.6.297-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "53bd5501e11138f9e4d8aa91a036d41e", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7803, "upload_time": "2018-07-22T22:57:29", "url": "https://files.pythonhosted.org/packages/cb/9a/13d1486907faded369e49b9274f9118cba608183b0ef175edc26bd307c5f/mlcrypto-0.6.297-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "35511bd3b1c4d16e4493acb5a42c180d", "sha256": "bb93d55deaa8c21e5e3b7be4258a64d5bdd19c3494ed97ddfb57da9bbad175bc" }, "downloads": -1, "filename": "mlcrypto-0.6.297.tar.gz", "has_sig": false, "md5_digest": "35511bd3b1c4d16e4493acb5a42c180d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5000, "upload_time": "2018-07-22T22:57:30", "url": "https://files.pythonhosted.org/packages/98/d2/6eb946b43b67fdbd63173c712382da7128ca261206440a1641c5e1920e4c/mlcrypto-0.6.297.tar.gz" } ] }