{ "info": { "author": "irma-dev", "author_email": "irma-dev@quarkslab.com", "bugtrack_url": null, "classifiers": [], "description": "Irmacl: command-line tool for IRMA API\n--------------------------------------\n\n|docs|\n\nIRMA is an asynchronous and customizable analysis system for suspicious files.\nThis repository is a subproject of IRMA and contains the source code for IRMA's\nAPI client.\n\n**This api client is only made for IRMA API version 2.**\n\nInstallation\n````````````\n.. code-block:: console\n\n $ python setup.py install\n\n\nConfiguration file contains the API endpoint (full url) and some optional parameters (max number and\ndelay in second between retries)\n\n.. code-block:: console\n\n [Server]\n api_endpoint=http://172.16.1.30/api/v2\n max_tries=3\n pause=1\n\nOptionnally you could add some SSL configuration, ``ca`` key unser ``Server`` section\nif you want to verify server's certificate, and ``Client`` section if you have enabled\nclient certificates.\n\n.. code-block:: console\n\n [Server]\n api_endpoint=https://172.16.1.30/api/v2\n max_tries=3\n pause=1\n ca=\n [Client]\n cert=\n key=\n\n\nand is searched in these locations in following order:\n\n* current directory\n* environment variable (\"IRMA_CONF\")\n* user home directory\n* global directory (\"/etc/irma\")\n\n\nOnce you set up a working irma.conf settings file, you could run tests on your running IRMA server:\n\n.. code-block:: bash\n\n $ python setup.py test\n\n\nPip Install\n-----------\n\nInstall it directly with pip:\n\n.. code-block:: bash\n\n $ pip install irmacl\n\n\nUsage\n-----\n\n.. code-block:: python\n\n >>> from irmacl.helpers import *\n >>> probe_list()\n [u'Comodo', u'TrID']\n\n >>> tag_list()\n [Tag malware [1], Tag clean [2], Tag suspicious [3]]\n\n >>> scan_files([\"./irma/tests/samples/eicar.com\"], force=True, blocking=True)\n Scanid: b91c348b-1bc7-43fc-8363-983ef2e613e6\n Status: finished\n Probes finished: 2\n Probes Total: 2\n Date: 2018-03-13 11:42:01\n Options: Force [True] Resubmit [True]\n Mimetype [True]\n Results: []\n\n >>> scan = _\n >>> print scan.results[0]\n id: 9098500f-6f06-4926-9558-c08608c3be23\n Status: 1\n Probes finished: 2\n Probes Total: 2\n Scanid: b91c348b-1bc7-43fc-8363-983ef2e613e6\n Scan Date: 2018-03-13 11:42:01\n Filename: eicar.txt\n SHA256: 131f95c51cc819465fa1797f6ccacf9d494aaaff46fa3eac73ae63ffbdfd8267\n ParentFile SHA256: None\n\n >>> print scan_proberesults(\"9098500f-6f06-4926-9558-c08608c3be23\")\n id: 9098500f-6f06-4926-9558-c08608c3be23\n Status: 1\n Probes finished: 2\n Probes Total: 2\n Scanid: b91c348b-1bc7-43fc-8363-983ef2e613e6\n Scan Date: 2018-03-13 11:42:01\n Filename: eicar.txt\n SHA256: 131f95c51cc819465fa1797f6ccacf9d494aaaff46fa3eac73ae63ffbdfd8267\n ParentFile SHA256: None\n FileInfo:\n Size: 69\n Sha1: cf8bd9dfddff007f75adf4c2be48005cea317c62\n Sha256: 131f95c51cc819465fa1797f6ccacf9d494aaaff46fa3eac73ae63ffbdfd8267\n Md5: 69630e4574ec6798239b091cda43dca0s\n First Scan: 2018-03-13 11:42:00\n Last Scan: 2018-03-13 11:42:04\n Mimetype: EICAR virus test files\n Tags: []\n\n Results: {u'antivirus':{u'Comodo Antivirus (Linux)': {u'status': 1, u'duration': 1.42, u'version': u'1.1.268025.1', u'results': u'Malware', u'virus_database_version': u'2018-03-13'}},\n u'metadata': {u'TrID File Identifier': {u'status': 1, u'duration': 0.1, u'version': None, u'results': [{u'ext': u'.COM', u'ratio': u'100.0', u'desc': u'EICAR antivirus test file (7057/5)'}]}}}\n\n >>> file_result = _\n >>> print file_result.probe_results\n {u'antivirus': {u'Comodo Antivirus (Linux)': {u'duration': 1.42,\n u'results': u'Malware',\n u'status': 1,\n u'version': u'1.1.268025.1',\n u'virus_database_version': u'2018-03-13'}},\n u'metadata': {u'TrID File Identifier': {u'duration': 0.1,\n u'results': [{u'desc': u'EICAR antivirus test file (7057/5)',\n u'ext': u'.COM',\n u'ratio': u'100.0'}],\n u'status': 1,\n u'version': None}}}\n\n\nSearching for scans\n\n.. code-block:: python\n\n >>> scan_list()\n (2, [Scanid: bec16782-7cc1-4807-b83c-42e23ef483c4\n Status: finished\n Probes finished: 2\n Probes Total: 2\n Date: 2018-03-13 11:40:48\n Options: Force [True] Resubmit [True]\n Mimetype [True] Results: [],\n Scanid: b91c348b-1bc7-43fc-8363-983ef2e613e6\n Status: finished\n Probes finished: 2\n Probes Total: 2\n Date: 2018-03-13 11:42:01\n Options: Force [True] Resubmit [True]\n Mimetype [True] Results: []])\n [...]\n\n\nSearching for files\n\n.. code-block:: python\n\n >>> file_search(name=\"ei\")\n (1, [])\n\n >>> (total, res) = _\n >>> print res[0]\n Status: 1\n Probes finished: 1\n Probes Total: 1\n Scanid: 7ae6b759-b357-4680-8358-b134b564b1ca\n Filename: eicar.txt\n [...]\n\n >>> file_search(hash=\"131f95c51cc819465fa1797f6ccacf9d494aaaff46fa3eac73ae63ffbdfd8267\")\n (1, [])\n\n >>> file_search(hash=\"131f95c51cc819465fa1797f6ccacf9d494aaaff46fa3eac73ae63ffbdfd8267\", tags=[1,2])\n (0, [])\n\n # looking for an unexisting tagid raise IrmaError\n >>> file_search(hash=\"131f95c51cc819465fa1797f6ccacf9d494aaaff46fa3eac73ae63ffbdfd8267\", tags=[100])\n IrmaError: Error 402\n\n\nObjects (apiclient.py)\n-------\n\nIrmaFileInfo\n IrmaFileInfo are the metadata information linked to a IrmaFile\n\nIrmaScan\n IrmaScan keep tracks of the IrmaFileExt scanned together, probe list used and scan options.\n\nIrmaFileExt\n IrmaFileExt object are scan results for a IrmaFile. One IrmaFileExt could be linked to only one IrmaScan.\n If you submit multiple times the same file and scan it each time, you create only one IrmaFile\n but create multiple IrmaFileExt all linked to the same IrmaFile.\n\nIrmaTag\n Tag will be directly linked to IrmaFiles, each IrmaFileExt linked to this IrmaFile will\n be tagged indirectly.\n\n\nHelpers (helpers.py)\n-------\nabout(verbose=False)\n Retrieves information about the application\n\nfile_download(sha256, dest_filepath, verbose=False)\n Download file identified by sha256 to dest_filepath\n\nfile_results(sha256, limit=None, offset=None, verbose=False)\n List all results for a given file identified by sha256\n\nfile_search(name=None, hash=None, tags=None, limit=None, offset=None, verbose=False)\n Search a file by name or hash value\n\nfile_tag_add(sha256, tagid, verbose=False)\n Add a tag to a File\n\nfile_tag_remove(sha256, tagid, verbose=False)\n Remove a tag to a File\n\nprobe_list(verbose=False)\n List availables probes\n\ndata_upload(data, filename, verbose=False)\n Upload data, returns a fileext\n\nfile_upload(filepath, verbose=False)\n Upload file, returns a fileext\n\nscan_cancel(scan_id, verbose=False)\n Cancel a scan\n\nscan_data(data, filename, force, post_max_size_M=100, probe=None, mimetype_filtering=None, resubmit_files=None, blocking=False,blocking_timeout=60, verbose=False)\n Wrapper around scan_new / scan_add / scan_launch\n\nscan_files(filelist, force, post_max_size_M=100, probe=None, mimetype_filtering=None, resubmit_files=None, blocking=False,blocking_timeout=60, verbose=False)\n Wrapper around scan_new / scan_add / scan_launch\n\nscan_get(scan_id, verbose=False)\n Fetch a scan (useful to track scan progress with scan.pstatus)\n\nscan_launch(file_id_list, force, probe=None, mimetype_filtering=None, resubmit_files=None, verbose=False)\n Launch an existing scan on Filext ids previously uploaded\n\nscan_list(limit=None, offset=None, verbose=False)\n List all scans\n\nscan_new(verbose=False)\n Create a new scan\n\nscan_proberesults(fe_id, formatted=True, verbose=False)\n Fetch file probe results (for a given scan\n one scan <-> one fileext_id\n\ntag_list(verbose=False)\n List all available tags\n\ntag_new(text, verbose=False)\n Create a new tag\n\nDocumentation\n`````````````\n\nThe full IRMA documentation is available `on Read The Docs Website`_.\n\n\nGetting help\n````````````\n\nJoin the #qb_irma channel on irc.freenode.net. Lots of helpful people hang out there.\n\n\nContribute to IRMA\n``````````````````\n\nIRMA is an ambitious project. Make yourself known on the #qb_irma channel on\nirc.freenode.net. We will be please to greet you and to find a way to get you\ninvolved in the project.\n\n\n.. |docs| image:: https://readthedocs.org/projects/irma/badge/\n :alt: Documentation Status\n :scale: 100%\n :target: https://irma.readthedocs.io\n.. _on Read The Docs Website: https://irma.readthedocs.io\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/quarkslab/irma-cli", "keywords": "", "license": "ApacheV2", "maintainer": "", "maintainer_email": "", "name": "irmacl", "package_url": "https://pypi.org/project/irmacl/", "platform": "", "project_url": "https://pypi.org/project/irmacl/", "project_urls": { "Homepage": "https://github.com/quarkslab/irma-cli" }, "release_url": "https://pypi.org/project/irmacl/2.0.7/", "requires_dist": null, "requires_python": "", "summary": "Irma command line tool for API v2", "version": "2.0.7" }, "last_serial": 4312640, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "9b86761d8bcc8d6300b5e1c6afd28ae1", "sha256": "66e85bdcc80ed1125ba5ff7528e036188696e266f5b17467ac90272a39ae52c5" }, "downloads": -1, "filename": "irmacl-1.0.0.tar.gz", "has_sig": false, "md5_digest": "9b86761d8bcc8d6300b5e1c6afd28ae1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13167, "upload_time": "2016-12-27T11:20:22", "url": "https://files.pythonhosted.org/packages/03/11/836f47f7200266989cd2c9152ab8c3de990b458e0ad41002ae9c6e89d243/irmacl-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "6b672c8eb13141aa95c9a8a67f62eddc", "sha256": "810a051fa1a742603924fab9c6aee77d0c3a1e416c6223fbf4b408c892e411fe" }, "downloads": -1, "filename": "irmacl-1.0.1.tar.gz", "has_sig": false, "md5_digest": "6b672c8eb13141aa95c9a8a67f62eddc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13163, "upload_time": "2016-12-27T11:35:26", "url": "https://files.pythonhosted.org/packages/51/43/9d7d5283e4268337f958333de03fa74d95f6471e5ea757485fd1e7de7253/irmacl-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "c5ba3d70c33a4c2bc751f3b07c2b8f1d", "sha256": "e6f0bf75a82d7699bcf43ae92f34f12b9099dc06557b035e4f05d5e0301ea99b" }, "downloads": -1, "filename": "irmacl-1.0.2.tar.gz", "has_sig": false, "md5_digest": "c5ba3d70c33a4c2bc751f3b07c2b8f1d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13162, "upload_time": "2016-12-27T12:42:25", "url": "https://files.pythonhosted.org/packages/44/c9/e3e4ccb0abf5abbe5cf2dad4b4f3e1529dd63a7d6956d76c02c0cbcbc6fa/irmacl-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "dbcd6c6a71eed01f9070d5f1d522166f", "sha256": "d46b9a41a9c6512eaa50ac82d71e9a6c208b5a01629c6f42078a060813027956" }, "downloads": -1, "filename": "irmacl-1.0.3.tar.gz", "has_sig": false, "md5_digest": "dbcd6c6a71eed01f9070d5f1d522166f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11828, "upload_time": "2017-02-09T17:21:05", "url": "https://files.pythonhosted.org/packages/41/cb/73c6e55dc9b52146d6ec633571db0a80623bd43460e4d4e06d6cf9e770d0/irmacl-1.0.3.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "64f5a89180955b8d2987ce4d4195bc31", "sha256": "b089f88f65b5a2d8b881c738a7318d76d8d67d232b166f1b9f68680fbae36c79" }, "downloads": -1, "filename": "irmacl-1.1.0.tar.gz", "has_sig": false, "md5_digest": "64f5a89180955b8d2987ce4d4195bc31", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17086, "upload_time": "2016-12-27T11:28:55", "url": "https://files.pythonhosted.org/packages/c8/48/5b97f6dff00bd3427b36a11d0ef96eb11c2d12c8bab7789320e3fc8e2a17/irmacl-1.1.0.tar.gz" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "24bcc518820cd783f87abf545053b8b6", "sha256": "27a03fbf5e7b4174f209c2983b871d2d1a719085e575ec9a8895a72c154bd97b" }, "downloads": -1, "filename": "irmacl-1.1.1.tar.gz", "has_sig": false, "md5_digest": "24bcc518820cd783f87abf545053b8b6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17562, "upload_time": "2017-01-05T13:05:48", "url": "https://files.pythonhosted.org/packages/e7/09/960db094e0fe810a6e9b9897d1b351429bb6de07e2d85d46f5deecc45d5f/irmacl-1.1.1.tar.gz" } ], "1.1.2": [ { "comment_text": "", "digests": { "md5": "8eb259c9986f52fd8dfc1ccb4e23c330", "sha256": "2408cb8cab8e078d6d26566b863cc89dcf4a097dfc5f395a9215385b5b9ad3e8" }, "downloads": -1, "filename": "irmacl-1.1.2.tar.gz", "has_sig": false, "md5_digest": "8eb259c9986f52fd8dfc1ccb4e23c330", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16375, "upload_time": "2017-02-09T17:21:17", "url": "https://files.pythonhosted.org/packages/99/e1/3fefcf719ac14432a16fff6e441c27f67cb1e5ddfa66b675a52e9d2e6579/irmacl-1.1.2.tar.gz" } ], "1.1.3": [ { "comment_text": "", "digests": { "md5": "25cf8f8cff6378744a6636f5ff7d8e0e", "sha256": "faa1de779ce6b24fc96dc9df428798a91e8bc6acdae1c276875f5042158b4a39" }, "downloads": -1, "filename": "irmacl-1.1.3.tar.gz", "has_sig": false, "md5_digest": "25cf8f8cff6378744a6636f5ff7d8e0e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16384, "upload_time": "2017-02-09T17:40:15", "url": "https://files.pythonhosted.org/packages/98/55/9afec3519fcd66b3d2ba644a75ddbfd5d828e4378a78205c5ce9b5c950e4/irmacl-1.1.3.tar.gz" } ], "1.1.4": [ { "comment_text": "", "digests": { "md5": "049cb0939c6056e191cacadb727da8e9", "sha256": "55387e74878b8e8788c39d7055626ae9af4d2dd39c5df1d5b589d1b2152eb300" }, "downloads": -1, "filename": "irmacl-1.1.4.tar.gz", "has_sig": false, "md5_digest": "049cb0939c6056e191cacadb727da8e9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16431, "upload_time": "2017-03-02T15:01:16", "url": "https://files.pythonhosted.org/packages/da/88/fc26a867ed56f36877867028a46b12d7736b1f0af39ae236ada1be6d3a30/irmacl-1.1.4.tar.gz" } ], "1.1.5": [ { "comment_text": "", "digests": { "md5": "cf00904bf175d226aa625be53f5a2bd1", "sha256": "83a17260c1e8562ff0086b78e103e025b0a0302b12283540c29ac766ccbb2716" }, "downloads": -1, "filename": "irmacl-1.1.5.tar.gz", "has_sig": false, "md5_digest": "cf00904bf175d226aa625be53f5a2bd1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16447, "upload_time": "2017-08-23T16:49:31", "url": "https://files.pythonhosted.org/packages/8a/e3/f47f40f0388c517b4709d112a5467a8ddc67c8a00ac8ba12a858134f788c/irmacl-1.1.5.tar.gz" } ], "1.1.6": [ { "comment_text": "", "digests": { "md5": "0a19f6ca1526c2c27404f48911ba2427", "sha256": "e423b7e6f40eac70f63a40b21790a9df769633f94fc0a3f5dc432886cf52126d" }, "downloads": -1, "filename": "irmacl-1.1.6.tar.gz", "has_sig": false, "md5_digest": "0a19f6ca1526c2c27404f48911ba2427", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16578, "upload_time": "2017-09-01T08:35:10", "url": "https://files.pythonhosted.org/packages/20/da/8774d651413b23c40a4ebf0c0e9529d2b212cbb4537feaf35330f67b7846/irmacl-1.1.6.tar.gz" } ], "1.1.7": [ { "comment_text": "", "digests": { "md5": "f07b8840c1ea3636b54c6b39970b2ab9", "sha256": "768c40cc574bc1f79ed1c4c8de28a88e7042165995027879af883fd0b19f182b" }, "downloads": -1, "filename": "irmacl-1.1.7.tar.gz", "has_sig": false, "md5_digest": "f07b8840c1ea3636b54c6b39970b2ab9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16426, "upload_time": "2017-09-19T10:30:26", "url": "https://files.pythonhosted.org/packages/be/e8/1111f989ef348b91299a0f083869fabd90f0d8a41e70e96278c022641675/irmacl-1.1.7.tar.gz" } ], "1.1.8-1": [ { "comment_text": "", "digests": { "md5": "6fa7b7e91eb8fb81bcffe29b080cc557", "sha256": "a0df8cfc4a712bbb77db164f5b1509e225d48b3e92ca372f68141bfac9d3d026" }, "downloads": -1, "filename": "irmacl-1.1.8-1.tar.gz", "has_sig": false, "md5_digest": "6fa7b7e91eb8fb81bcffe29b080cc557", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16653, "upload_time": "2017-10-20T16:43:45", "url": "https://files.pythonhosted.org/packages/2a/7f/f15b33c5289e1563d0992bbf3415fafc769114ca2abfd691a555ed680627/irmacl-1.1.8-1.tar.gz" } ], "1.1.9": [ { "comment_text": "", "digests": { "md5": "02fc44081278b2e53d8b0d6ad950578c", "sha256": "a278007ca3da4ddb9884d769396d39e0291cc3267328b7e3f0d7454205757dc6" }, "downloads": -1, "filename": "irmacl-1.1.9.tar.gz", "has_sig": false, "md5_digest": "02fc44081278b2e53d8b0d6ad950578c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16721, "upload_time": "2017-11-22T11:08:19", "url": "https://files.pythonhosted.org/packages/25/e2/385224b0a382ee05a3b1d1b8638718e87eb194d8ae7460e35eff29120ea6/irmacl-1.1.9.tar.gz" } ], "2.0.0": [ { "comment_text": "", "digests": { "md5": "aa643895661415dc7657fa1d21ad0d1f", "sha256": "7c003c1f7c4e2581bff81b8cebf034b943659cf78d7d2a6979d69080bd040861" }, "downloads": -1, "filename": "irmacl-2.0.0.tar.gz", "has_sig": false, "md5_digest": "aa643895661415dc7657fa1d21ad0d1f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16191, "upload_time": "2018-03-12T10:33:31", "url": "https://files.pythonhosted.org/packages/6c/4e/8e0af3bd6c4b57bb4e0308a38b88ec75442711ed2946ff7fc864f83a90d0/irmacl-2.0.0.tar.gz" } ], "2.0.1": [ { "comment_text": "", "digests": { "md5": "a99374d7e952a497e04be3d474dc15fa", "sha256": "537da66b8a0fba31d5c8cbd8c122b7f65afbb0b9ce993cf4a7ef45c26b7f371a" }, "downloads": -1, "filename": "irmacl-2.0.1.tar.gz", "has_sig": false, "md5_digest": "a99374d7e952a497e04be3d474dc15fa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13611, "upload_time": "2018-03-13T12:49:25", "url": "https://files.pythonhosted.org/packages/19/47/ef7ba04cfc1366b323806abc16fdfea338b29e4bf1b84bb10645771bd45d/irmacl-2.0.1.tar.gz" } ], "2.0.2": [ { "comment_text": "", "digests": { "md5": "b18b5bbc767056db260e20f620e0a550", "sha256": "9c98d18642de6665d9a1ef997a5e045355db5e4910fcf43916f2ad52eca9930d" }, "downloads": -1, "filename": "irmacl-2.0.2.tar.gz", "has_sig": false, "md5_digest": "b18b5bbc767056db260e20f620e0a550", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13646, "upload_time": "2018-03-23T17:26:43", "url": "https://files.pythonhosted.org/packages/c8/68/79897789c1a492a24514e1fb88cc0774a3f11eb35f3eacdc98171cce7aaa/irmacl-2.0.2.tar.gz" } ], "2.0.3": [ { "comment_text": "", "digests": { "md5": "ef7f81ece8e7dbbafeeb6303c7f5a70c", "sha256": "3113a08be5dd140b2d5385b84b3a2f48f6b4dd3a3cafd8e94586bca5b22235bd" }, "downloads": -1, "filename": "irmacl-2.0.3.tar.gz", "has_sig": false, "md5_digest": "ef7f81ece8e7dbbafeeb6303c7f5a70c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13655, "upload_time": "2018-04-14T10:57:36", "url": "https://files.pythonhosted.org/packages/34/9e/0b73e2b12b4049f5c69504eb12b94dc9c74f6c3a3c9985a1807e9a738e5d/irmacl-2.0.3.tar.gz" } ], "2.0.4": [ { "comment_text": "", "digests": { "md5": "5b590921c45e6e259642e0e7696fd919", "sha256": "d30c12cee73461d5f2706d11ac339e60b8c8b515c0a4f5fb5f57cb9dad945536" }, "downloads": -1, "filename": "irmacl-2.0.4.tar.gz", "has_sig": false, "md5_digest": "5b590921c45e6e259642e0e7696fd919", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12227, "upload_time": "2018-05-02T16:26:49", "url": "https://files.pythonhosted.org/packages/ae/fc/b5cf6e51b3fcd945eafc1171d236507299a4e733100570fa4ac6cecbe0a4/irmacl-2.0.4.tar.gz" } ], "2.0.5": [ { "comment_text": "", "digests": { "md5": "895c7d36025cf75fa021e8b097d38ed8", "sha256": "870526f2ea50db9148ed87a3675f2e00d1608c53fd01ab21301acbe4a4a3b108" }, "downloads": -1, "filename": "irmacl-2.0.5.tar.gz", "has_sig": false, "md5_digest": "895c7d36025cf75fa021e8b097d38ed8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15045, "upload_time": "2018-05-18T12:54:30", "url": "https://files.pythonhosted.org/packages/22/d1/bea585891fa3a4a70c335cc89456bb2a323e076d97f51104886ac01f6fdd/irmacl-2.0.5.tar.gz" } ], "2.0.6": [ { "comment_text": "", "digests": { "md5": "17db1bb9957fa4650993d5bcd7e1ba3f", "sha256": "f4b1513af18734c21277af110547809822e691f679ec89359e963ea1cbd70471" }, "downloads": -1, "filename": "irmacl-2.0.6.tar.gz", "has_sig": false, "md5_digest": "17db1bb9957fa4650993d5bcd7e1ba3f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14037, "upload_time": "2018-08-28T15:40:40", "url": "https://files.pythonhosted.org/packages/fb/7e/631aa3e575066399823b4b0fc6c71417acd9504004100a2d1580d7e917c4/irmacl-2.0.6.tar.gz" } ], "2.0.7": [ { "comment_text": "", "digests": { "md5": "ddfa0a1682769070e68b7693d4a65608", "sha256": "48af11632d5ef014435707277340bbda714b35eec8bf1dcae9f46b71c81b5d6e" }, "downloads": -1, "filename": "irmacl-2.0.7.tar.gz", "has_sig": false, "md5_digest": "ddfa0a1682769070e68b7693d4a65608", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14051, "upload_time": "2018-09-26T13:51:19", "url": "https://files.pythonhosted.org/packages/64/8a/96580755bc58d1b744bc5b22fa08d4923ea01ce7c90a0736b72d8f1b4644/irmacl-2.0.7.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "ddfa0a1682769070e68b7693d4a65608", "sha256": "48af11632d5ef014435707277340bbda714b35eec8bf1dcae9f46b71c81b5d6e" }, "downloads": -1, "filename": "irmacl-2.0.7.tar.gz", "has_sig": false, "md5_digest": "ddfa0a1682769070e68b7693d4a65608", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14051, "upload_time": "2018-09-26T13:51:19", "url": "https://files.pythonhosted.org/packages/64/8a/96580755bc58d1b744bc5b22fa08d4923ea01ce7c90a0736b72d8f1b4644/irmacl-2.0.7.tar.gz" } ] }