{ "info": { "author": "", "author_email": "", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "Intended Audience :: System Administrators", "Natural Language :: English", "Operating System :: MacOS :: MacOS X", "Operating System :: Microsoft :: Windows", "Operating System :: POSIX :: Linux", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Security", "Topic :: Security :: Cryptography" ], "description": "mrcrypt: Multi-Region Encryption\n================================\n\n.. image:: https://img.shields.io/pypi/v/mrcrypt.svg\n :target: https://pypi.python.org/pypi/mrcrypt\n\n.. image:: https://img.shields.io/pypi/pyversions/mrcrypt.svg\n :target: https://pypi.python.org/pypi/mrcrypt\n\n.. image:: https://travis-ci.org/aol/mrcrypt.svg?branch=master\n :target: https://travis-ci.org/aol/mrcrypt\n\n.. image:: https://codecov.io/gh/aol/mrcrypt/branch/master/graph/badge.svg\n :target: https://codecov.io/gh/aol/mrcrypt\n\nmrcrypt is a command-line tool which encrypts secrets that conform to the AWS\nEncryption SDK's `message format\n`__\nfor envelope encryption. As of v2.0, mrcrypt now wraps the `aws-encryption-sdk-cli `__.\n\nFor more information about the AWS Encryption SDK see\n``__.\n\nInstallation\n============\n\nYou can install the latest release of mrcrypt with `pip`:\n\n::\n\n pip install mrcrypt\n\nQuick Start\n===========\n\nEncrypt a file for use in 3 regions (NOTE: Key alias must exist in specified regions):\n\n::\n\n mrcrypt encrypt -r us-east-1 us-west-2 eu-west-1 -- alias/master-key secrets.txt\n\nDecrypt the file:\n\n::\n\n mrcrypt decrypt secrets.txt.encrypted\n\nUsage\n=====\n\n::\n\n usage: mrcrypt [-h] [-p PROFILE] [-v] [-q] [-o OUTFILE] {encrypt,decrypt} ...\n\n Multi Region Encryption. A tool for managing secrets across multiple AWS\n regions.\n\n positional arguments:\n {encrypt,decrypt}\n\n optional arguments:\n -h, --help show this help message and exit\n -p PROFILE, --profile PROFILE\n The profile to use\n -v, --verbose More verbose output (ignored if --quiet)\n -q, --quiet Quiet all output\n -o OUTFILE, --outfile OUTFILE\n The file to write the results to (use \"-\" to write to\n stdout\n\nBoth the encrypt, and decrypt commands can encrypt and decrypt files in\ndirectories recursively.\n\nNamed Profiles\n''''''''''''''\n\nIf you have multiple named profiles in your ``~/.aws/credentials`` file,\nyou can specify one using the ``-p`` argument.\n\n::\n\n mrcrypt -p my_profile encrypt alias/master-key secrets.txt\n\nEncryption Context\n''''''''''''''''''\n\nYou can specify an `encryption\ncontext `__\nusing the ``-e`` argument. This flag takes a JSON object with no spaces:\n\n::\n\n # encrypt\n mrcrypt -e '{\"key\":\"value\",\"key2\":\"value2\"}' encrypt alias/master-key secrets.txt\n\n # decrypt\n mrcrypt -e '{\"key\":\"value\",\"key2\":\"value2\"}' decrypt secrets.txt.encrypted\n\nOutput file name\n''''''''''''''''\n\nIf you want to specify the output filename, you can use the ``-o``\nargument.\n\n::\n # Encrypt 'file.txt' writing the output into 'encrypted-file.txt'\n mrcrypt -o encrypted-file.txt encrypt alias/master-key file.txt\n\nTo write to stdout, you can use `-`\n\n::\n # Encrypt 'file.txt' writing the output to stdout\n mrcrypt -o - encrypt alias/master-key file.txt\n\nWhen the output filename argument is not specified, mrcrypt will use the input\nfilename as a base and add a suffix. On encrypt this suffix is ``.encrypted``\nand on decrypt this suffix is ``.decrypted``.\n\nEncryption\n==========\n\n::\n\n usage: mrcrypt encrypt [-h] [-r REGIONS [REGIONS ...]] [-e ENCRYPTION_CONTEXT]\n key_id filename\n\n Encrypts a file or directory recursively\n\n positional arguments:\n key_id An identifier for a customer master key.\n filename The file or directory to encrypt. Use \"-\" to read from\n stdin\n\n optional arguments:\n -h, --help show this help message and exit\n -r REGIONS [REGIONS ...], --regions REGIONS [REGIONS ...]\n A list of regions to encrypt with KMS. End the list\n with --\n -e ENCRYPTION_CONTEXT, --encryption_context ENCRYPTION_CONTEXT\n An encryption context to use\n\n**Example:** Encrypt ``secrets.txt`` with the key alias\n``alias/master-key`` in the regions ``us-east-1`` and ``us-west-2``:\n\n::\n\n mrcrypt encrypt -r us-east-1 us-west-2 -- alias/master-key secrets.txt\n\n**Note:** In this example, the key alias `alias/master-key` exists in both the\n`us-east-1`, and `us-west-2` regions.\n\nDecryption\n==========\n\n::\n\n usage: mrcrypt decrypt [-h] filename\n\n Decrypts a file\n\n positional arguments:\n filename The file or directory to decrypt. Use \"-\" to read from stdin\n\n optional arguments:\n -h, --help show this help message and exit\n\n**Example:** To decrypt ``secrets.txt.encrypted``:\n\n::\n\n mrcrypt decrypt secrets.txt.encrypted\n\n**Note:** Be careful when decrypting a directory. If the directory\ncontains files that are not encrypted, it will fail.\n\nTesting\n=======\n\nRunning tests for mrcrypt is easy if you have ``tox`` installed. Simply\nrun ``tox`` at the project's root.\n\nIf you have an AWS account with a KMS key, you can run the integration tests using\n\n::\n\n AWS_ENCRYPTION_SDK_PYTHON_INTEGRATION_TEST_AWS_KMS_KEY_ID= tox -e py{27,34,35,36}-{local,integ}\n\nNote about files created with mrcrypt before v2.0\n=================================================\n\nUpon the release of v2.0, mrcrypt started wrapping the\n`aws-encryption-sdk-cli `__. Wrapping the\naws-encryption-sdk-cli means that mrcrypt now fully conforms to the AWS\nEncryption SDK's `message format\n`__ and uses\ncompressed points when encrypting files. Before v2.0, mrcrypt did not use compressed points, and\nwhile still secure, it lead to compatibility issues with other AWS Encryption SDK implementations.\nTo update your pre-2.0 mrcrypt encrypted files, and improve compatibility with the AWS Encryption\nSDK, simply decrypt and re-encrypt your file with the latest version of mrcrypt.\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/aol/mrcrypt", "keywords": "", "license": "Apache 2.0", "maintainer": "", "maintainer_email": "", "name": "mrcrypt", "package_url": "https://pypi.org/project/mrcrypt/", "platform": "", "project_url": "https://pypi.org/project/mrcrypt/", "project_urls": { "Homepage": "https://github.com/aol/mrcrypt" }, "release_url": "https://pypi.org/project/mrcrypt/2.0.0/", "requires_dist": [ "aws-encryption-sdk-cli (>=1.1.3)" ], "requires_python": "", "summary": "A command-line tool that can encrypt/decrypt secrets using the AWS Encryption SDK for use in multiple AWS KMS regions.", "version": "2.0.0" }, "last_serial": 3756437, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "03d5b7e2fe2328f145179c8320dba12c", "sha256": "35656ac931888eb88de83607ad47b55f99502b602823824dc0bd6e610fe5d5a7" }, "downloads": -1, "filename": "mrcrypt-1.0.0-py2-none-any.whl", "has_sig": false, "md5_digest": "03d5b7e2fe2328f145179c8320dba12c", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 24974, "upload_time": "2017-01-26T16:18:55", "url": "https://files.pythonhosted.org/packages/57/1f/214db4ea8f6205367bc9c7ef8d60e54b92eccc017b2cbf06cf69fdccf62c/mrcrypt-1.0.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bb9db9ee5294529996e74f04449b4c61", "sha256": "e5cdc1b5557490bf76151033df0e2e09f8e52d1be64296915f220aef1e371bf1" }, "downloads": -1, "filename": "mrcrypt-1.0.0.tar.gz", "has_sig": false, "md5_digest": "bb9db9ee5294529996e74f04449b4c61", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16679, "upload_time": "2017-01-26T16:18:56", "url": "https://files.pythonhosted.org/packages/54/e8/c7647a747d95fe7d9d2c2e311f0a7125db623a597b7581be29885bd9c658/mrcrypt-1.0.0.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "e8ca1d20fd95940e94de0ca83c704458", "sha256": "a561b666d40a198b77591f0f9badae513c91cea9709158b8507697716fb34bb7" }, "downloads": -1, "filename": "mrcrypt-1.1.0-py2-none-any.whl", "has_sig": false, "md5_digest": "e8ca1d20fd95940e94de0ca83c704458", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 25162, "upload_time": "2017-02-27T15:15:02", "url": "https://files.pythonhosted.org/packages/9e/1b/29e9107dc6be88297403ab8df88c7557c3b26c121d3608975c5ebf0b7aae/mrcrypt-1.1.0-py2-none-any.whl" } ], "2.0.0": [ { "comment_text": "", "digests": { "md5": "af022205375cc46d73a1ecd1db820a68", "sha256": "4f94a9b41b8ceabbb3ca210d2bfd5a2624dd2f7af73c8f53d33e1a7412e26238" }, "downloads": -1, "filename": "mrcrypt-2.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "af022205375cc46d73a1ecd1db820a68", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 14409, "upload_time": "2018-04-11T19:42:00", "url": "https://files.pythonhosted.org/packages/e2/e2/1d9cb843470a37385d85478fba14966ea234dceb913c94d949474b4265e1/mrcrypt-2.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9111fc3f455ffe5fc8d121d0ce0fc0d2", "sha256": "6f4c31a1467ad78bebd73ac33078fe69d405a641ef5f4fae76678d47428f813e" }, "downloads": -1, "filename": "mrcrypt-2.0.0.tar.gz", "has_sig": false, "md5_digest": "9111fc3f455ffe5fc8d121d0ce0fc0d2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12831, "upload_time": "2018-04-11T19:42:01", "url": "https://files.pythonhosted.org/packages/49/57/0c96558fc5775c134526e18e34ed87192fae703a453be8b8d01a4e8b8e57/mrcrypt-2.0.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "af022205375cc46d73a1ecd1db820a68", "sha256": "4f94a9b41b8ceabbb3ca210d2bfd5a2624dd2f7af73c8f53d33e1a7412e26238" }, "downloads": -1, "filename": "mrcrypt-2.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "af022205375cc46d73a1ecd1db820a68", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 14409, "upload_time": "2018-04-11T19:42:00", "url": "https://files.pythonhosted.org/packages/e2/e2/1d9cb843470a37385d85478fba14966ea234dceb913c94d949474b4265e1/mrcrypt-2.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9111fc3f455ffe5fc8d121d0ce0fc0d2", "sha256": "6f4c31a1467ad78bebd73ac33078fe69d405a641ef5f4fae76678d47428f813e" }, "downloads": -1, "filename": "mrcrypt-2.0.0.tar.gz", "has_sig": false, "md5_digest": "9111fc3f455ffe5fc8d121d0ce0fc0d2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12831, "upload_time": "2018-04-11T19:42:01", "url": "https://files.pythonhosted.org/packages/49/57/0c96558fc5775c134526e18e34ed87192fae703a453be8b8d01a4e8b8e57/mrcrypt-2.0.0.tar.gz" } ] }