{ "info": { "author": "Sauce Labs", "author_email": "dev@saucelabs.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 2.7", "Topic :: Utilities" ], "description": "isign\n=====\n\nA tool and library to re-sign iOS applications, without proprietary Apple software.\n\nFor example, an iOS app in development would probably only run on the developer's iPhone. \n``isign`` can alter the app so that it can run on another developer's iPhone.\n\nApple tools already exist to do this. But with ``isign``, now you can do this on operating\nsystems like Linux.\n\n\nTable of contents\n-----------------\n\n- `Installing`_\n- `How to get started`_\n- `How to use isign`_\n- `isign command line arguments`_\n- `Contributing`_\n- `More documentation`_\n- `Authors`_\n\n\n.. _Installing:\n\nInstalling\n----------\n\nLinux\n~~~~~\n\nThe latest version of ``isign`` can be installed via `PyPi `__:\n\n.. code::\n\n $ pip install isign\n\nMac OS X\n~~~~~~~~\n\nOn Mac OS X, there are a lot of prerequisites, so the ``pip`` method probably won't work.\nThe easiest method is to use ``git`` to clone the `source code repository `__ and \nrun the install script:\n\n.. code::\n\n $ git clone https://github.com/saucelabs/isign.git\n $ cd isign\n $ sudo ./INSTALL.sh\n\n.. _How to get started:\n\nHow to get started\n------------------\n\nAll the libraries and tools that ``isign`` needs to run will work on both Linux \nand Mac OS X. However, you will need a Mac to export your Apple developer \ncredentials. \n\nIf you're like most iOS developers, credentials are confusing -- if so check out \nthe `documentation on credentials `__ on Github.\n\nYou should have a key and certificate in \n`Keychain Access `__,\nand a provisioning profile associated with that certificate, that you \ncan use to sign iOS apps for one or more of your own iOS devices.\n\nIn Keychain Access, open the *Certificates*. Find the certificate you use to sign apps. \nRight click on it and export the key as a ``.p12`` file, let's say ``Certificates.p12``. If Keychain \nasks you for a password to protect this file, just leave it blank. \n\nNext, let's extract the key and certificate you need, into a standard PEM format.\n\n.. code::\n\n $ isign_export_creds.sh ~/Certificates.p12\n\nIf you get prompted for a password, just press ``Return``.\n\nBy default, ``isign_export_creds.sh`` will put these files into ``~/.isign``, which is\nthe standard place to put ``isign`` configuration files.\n\nFinally, you need a provisioning profile from the Apple Developer Portal that uses\nthe same certificate. If you've never dealt with this, the provisioning profile is \nwhat tells the phone that you Apple has okayed you installing apps onto this particular phone.\n\nIf you develop with XCode, you might have a provisioning profile already. \nOn the Mac where you develop with XCode, try running the ``isign_guess_mobileprovision.sh`` script. \nIf you typically have only a few provisioning profiles and install on one phone, it might find it. \n\nAnyway, once you have a ``.mobileprovision`` file, move it to ``~/.isign/isign.mobileprovision``.\n\nThe end result should look like this:\n\n.. code::\n\n $ ls -l ~/.isign\n -r--r--r-- 1 alice staff 2377 Sep 4 14:17 certificate.pem\n -r--r--r-- 1 alice staff 9770 Nov 23 13:30 isign.mobileprovision\n -r-------- 1 alice staff 1846 Sep 4 14:17 key.pem\n\nAnd now you're ready to start re-signing apps!\n\n.. _How to use isign:\n\nHow to use isign\n----------------\n\nIf you've installed all the files in the proper locations above, then ``isign`` can be now invoked\non any iOS ``.app`` directory, or ``.ipa`` archive, or ``.app.zip`` zipped directory. For example:\n\n.. code::\n\n $ isign -o resigned.ipa my.ipa\n archived Ipa to /home/alice/resigned.ipa\n\nYou can also call it from Python:\n\n.. code:: python\n\n from isign import isign\n\n isign.resign(\"my.ipa\", output_path=\"resigned.ipa\")\n\n.. _isign command line arguments:\n\nisign command line arguments\n----------------------------\n\n.. code::\n\n # Resigning by specifying all credentials, input file, and output file\n $ isign -c /path/to/mycert.pem -k ~/mykey.pem -p path/to/my.mobileprovision \\\n -o resigned.ipa original.ipa\n\n # Resigning, with credentials under default filenames in ~/.isign - less to type!\n $ isign -o resigned.ipa original.ipa\n\n # Modify Info.plist properties in resigned app\n $ isign -i CFBundleIdentifier=com.example.myapp,CFBundleName=MyApp -o resigned.ipa original.ipa\n\n # Display Info.plist properties from an app as JSON\n $ isign -d my.ipa\n\n # Get help\n $ isign -h\n\n**-a , --apple-cert **\n\nPath to Apple certificate in PEM format. This is already included in the library, so you will likely\nnever need it. In the event that the certificates need to be changed, See the `Apple Certificate documentation `__.\n\n**-c , --certificate **\n\nPath to your certificate in PEM format. Defaults to ``$HOME/.isign/certificate.pem``.\n\n**-d, --display**\n\nFor the application path, display the information property list (Info.plist) as JSON.\n\n**-h, --help**\n\nShow a help message and exit.\n\n**-i, --info**\n\nWhile resigning, add or update info in the application's information property list (Info.plist). \nTakes a comma-separated list of key=value pairs, such as \n``CFBundleIdentifier=com.example.app,CFBundleName=ExampleApp``. Use with caution!\nSee Apple documentation for `valid Info.plist keys `_.\n\n**-k , --key **\n\nPath to your private key in PEM format. Defaults to ``$HOME/.isign/key.pem``.\n\n**-n , --credentials **\n\nEquivalent to:\n\n.. code::\n\n -k /key.pem \n -c /certificate.pem \n -p /isign.mobileprovision\n\n**-o , --output **\n\nPath to write the re-signed application. Defaults to ``out`` in your current working directory.\n\n**-p , --provisioning-profile **\n\nPath to your provisioning profile. This should be associated with your certificate. Defaults to \n``$HOME/.isign/isign.mobileprovision``.\n\n**-v, --verbose**\n\nMore verbose logs will be printed to STDERR.\n\n**Application path**\n\nThe app to be resigned is specified on the command line after other arguments. The application path is \ntypically an IPA, but can also be a ``.app`` directory or even a zipped ``.app`` directory. When\nresigning, ``isign`` will always create an archive of the same type as the original.\n\n\n.. _Contributing:\n\nContributing\n------------\n\nDevelopment happens on `our Github repository `__. File an issue, or fork the code!\n\nYou'll probably want to create some kind of python virtualenv, so you don't have to touch your system python or its \nlibraries. `virtualenvwrapper `__ is a good tool for this.\n\nThen, just do the following:\n\n.. code::\n\n $ git clone https://github.com/saucelabs/isign.git\n $ cd isign\n $ dev/setup.sh \n $ ./run_tests.sh\n\nIf the tests don't pass please `file an issue `__. Please keep the tests up to date as you develop.\n\nNote: some tests require Apple's\n`codesign `__\nto run, so they are skipped unless you run them on a Macintosh computer with developer tools.\n\nOkay, if all the tests passed, you now have an 'editable' install of isign. Any edits to this repo will affect (for instance)\nhow the `isign` command line tool works.\n\nSauce Labs supports ongoing public ``isign`` development. ``isign`` is a part of our infrastructure\nfor the `iOS Real Device Cloud `__,\nwhich allows customers to test apps and websites on real iOS devices. ``isign`` has been successfully re-signing submitted customer apps in production\nsince June 2015.\n\nThis project not have an official code of conduct, yet, but one is forthcoming. Please contribute\nto discussion `here `__.\n\n.. _More documentation:\n\nMore documentation\n------------------\n\nSee the `docs `__ directory of this repository for random stuff that didn't fit here.\n\n.. _Authors:\n\n\nAuthors\n-------\n\n`Neil Kandalgaonkar `__ is the main developer and maintainer.\n\nProof of concept by `Steven Hazel `__ and Neil Kandalgaonkar.\n\nReference scripts using Apple tools by `Michael Han `__.\n", "description_content_type": null, "docs_url": null, "download_url": "https://github.com/saucelabs/isign/tarball/v1.6.15", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/saucelabs/isign", "keywords": "ios,app,signature,codesign,sign,resign", "license": "", "maintainer": "", "maintainer_email": "", "name": "isign", "package_url": "https://pypi.org/project/isign/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/isign/", "project_urls": { "Download": "https://github.com/saucelabs/isign/tarball/v1.6.15", "Homepage": "https://github.com/saucelabs/isign" }, "release_url": "https://pypi.org/project/isign/1.6.15/", "requires_dist": null, "requires_python": "", "summary": "Re-signing iOS apps without Apple tools", "version": "1.6.15" }, "last_serial": 2583590, "releases": { "1.3.5": [ { "comment_text": "", "digests": { "md5": "c487ebb030f68a855e12b767ad0fd699", "sha256": "2b2176e12bc7ce75381496111a688adfe93baea5d179bc15f2548ed82b136b80" }, "downloads": -1, "filename": "isign-1.3.5.tar.gz", "has_sig": false, "md5_digest": "c487ebb030f68a855e12b767ad0fd699", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5277, "upload_time": "2015-11-11T05:54:24", "url": "https://files.pythonhosted.org/packages/c5/2c/e696b1300bfcdd5e215d3117aa3f0a296d5908e2aa7e727323d22213c4b7/isign-1.3.5.tar.gz" } ], "1.3.6": [ { "comment_text": "", "digests": { "md5": "e544b358c8f35d3cbb9815782e18a747", "sha256": "6a9b7bed000bd72444fe140cbc335d87ac6556f897bd89fd4e8e60e701bc112e" }, "downloads": -1, "filename": "isign-1.3.6.tar.gz", "has_sig": false, "md5_digest": "e544b358c8f35d3cbb9815782e18a747", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5280, "upload_time": "2015-11-23T20:44:54", "url": "https://files.pythonhosted.org/packages/32/4b/48d0d4544fdcae85a58bf2ae9b0fdad3e4bece40dec20d9b91d4952ee365/isign-1.3.6.tar.gz" } ], "1.4.29": [], "1.4.30": [ { "comment_text": "", "digests": { "md5": "2779ce83a1e0f9d413a90cad48ba2f0b", "sha256": "d110cba5af3959c66f23e1e9af30735c7c814c0194b2f624f47b381bd92a451b" }, "downloads": -1, "filename": "isign-1.4.30.tar.gz", "has_sig": false, "md5_digest": "2779ce83a1e0f9d413a90cad48ba2f0b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26782, "upload_time": "2016-02-11T17:16:03", "url": "https://files.pythonhosted.org/packages/0e/07/39780adfbe401172872977eff5691913b4e3ffb298d7c59c1f0a95521829/isign-1.4.30.tar.gz" } ], "1.4.50": [ { "comment_text": "", "digests": { "md5": "cfdf7e1ed2e7e763716e6007a9b3d0ca", "sha256": "bcc731808e263983ea37a4224680afe6013cf6f271eb82e85c35c83143492544" }, "downloads": -1, "filename": "isign-1.4.50.tar.gz", "has_sig": false, "md5_digest": "cfdf7e1ed2e7e763716e6007a9b3d0ca", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6673, "upload_time": "2016-03-04T02:20:23", "url": "https://files.pythonhosted.org/packages/df/3f/adfc10d19bd443580db9645f4fdd12c64fbfbe32cdc1e6c243a8e9ff558f/isign-1.4.50.tar.gz" } ], "1.5.0": [ { "comment_text": "", "digests": { "md5": "394389c090890fc52aa379fbad3bd2a4", "sha256": "a07e2cc4c5f91b6d63140602a2a653530980bcac5fd108ce564782cc6bf4b007" }, "downloads": -1, "filename": "isign-1.5.0.tar.gz", "has_sig": false, "md5_digest": "394389c090890fc52aa379fbad3bd2a4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6667, "upload_time": "2016-03-04T02:22:37", "url": "https://files.pythonhosted.org/packages/e8/c1/2fc1e976e94c77152e9ce929c43988dd8af315c446070e4bf3073826dcb6/isign-1.5.0.tar.gz" } ], "1.5.11": [ { "comment_text": "", "digests": { "md5": "f77926bdf6d72cd033feb4e6a7231b76", "sha256": "95a796beb5f35960c396c2a71f0a0b65f76564cc20331f60c8b5e9fbf4d692ee" }, "downloads": -1, "filename": "isign-1.5.11.tar.gz", "has_sig": false, "md5_digest": "f77926bdf6d72cd033feb4e6a7231b76", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6806, "upload_time": "2016-04-22T18:15:34", "url": "https://files.pythonhosted.org/packages/36/d3/1ada2d094ee8c37da6536554d29a238cdc961785ed4c643108588e8ab78f/isign-1.5.11.tar.gz" } ], "1.5.13": [ { "comment_text": "", "digests": { "md5": "b3311a7b0c16b43d1df422b0929e1785", "sha256": "45ba7051da7c025bf90b34a8ce1926362106381d049b3f40a7b318f950419a83" }, "downloads": -1, "filename": "isign-1.5.13.tar.gz", "has_sig": false, "md5_digest": "b3311a7b0c16b43d1df422b0929e1785", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6810, "upload_time": "2016-04-22T18:20:48", "url": "https://files.pythonhosted.org/packages/3b/ca/abc196770829e105baed756d365cacaeb55976809c819964a0feb896bdc1/isign-1.5.13.tar.gz" } ], "1.5.15": [ { "comment_text": "", "digests": { "md5": "a6a4c05ece85710aa75bf238ba1f8765", "sha256": "e865de6de3d0ab85a9b86da591a14ad45e072955382f50ca814cdfb2c3d9d284" }, "downloads": -1, "filename": "isign-1.5.15.tar.gz", "has_sig": false, "md5_digest": "a6a4c05ece85710aa75bf238ba1f8765", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28964, "upload_time": "2016-04-22T22:47:48", "url": "https://files.pythonhosted.org/packages/e6/76/e441a283096449e1456898e8f192e20b5d4b1886582dbaa8c0fad80cb5a5/isign-1.5.15.tar.gz" } ], "1.5.16": [ { "comment_text": "", "digests": { "md5": "f2e79c4923b0fb3c5dd2394d875967fd", "sha256": "b000e40347b0081e039d80a641799c9a16e1c17809e305bcd7d1900c9519d0d8" }, "downloads": -1, "filename": "isign-1.5.16.tar.gz", "has_sig": false, "md5_digest": "f2e79c4923b0fb3c5dd2394d875967fd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28957, "upload_time": "2016-04-22T22:56:43", "url": "https://files.pythonhosted.org/packages/64/40/af014bc01d7bed64d66388bdb3358c57caacecdbfab057ee28cde746b67b/isign-1.5.16.tar.gz" } ], "1.5.17": [ { "comment_text": "", "digests": { "md5": "b6e56249a20ed8a346a4bc517d1e9438", "sha256": "fac78c86ee63d5f61fb2ca64418db8397914ecab8b87160cb51fe797c3671a4d" }, "downloads": -1, "filename": "isign-1.5.17.tar.gz", "has_sig": false, "md5_digest": "b6e56249a20ed8a346a4bc517d1e9438", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28958, "upload_time": "2016-04-22T23:03:19", "url": "https://files.pythonhosted.org/packages/0a/f2/02e8a06c54c72d3285abda6b1d6766f315a64449d435038ebd69d07661a4/isign-1.5.17.tar.gz" } ], "1.5.19": [ { "comment_text": "", "digests": { "md5": "c098edb130d31c6d39ddd88360cf51c3", "sha256": "aaf3c265eba7406f50152778ccd8b73c316505d32ee86123b70cd18c26e23877" }, "downloads": -1, "filename": "isign-1.5.19.tar.gz", "has_sig": false, "md5_digest": "c098edb130d31c6d39ddd88360cf51c3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28965, "upload_time": "2016-04-29T04:13:49", "url": "https://files.pythonhosted.org/packages/7b/40/aff9276bf15019040355f13b0bede98177bcf0b19db45e63063e13eadc87/isign-1.5.19.tar.gz" } ], "1.5.23": [ { "comment_text": "", "digests": { "md5": "561d93ba79c787bd74020f9c8f7be324", "sha256": "4353f6eb6e15f07f3c822f0ae758981f60014d6cb769587ff06210ea4fe39633" }, "downloads": -1, "filename": "isign-1.5.23.tar.gz", "has_sig": false, "md5_digest": "561d93ba79c787bd74020f9c8f7be324", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 29379, "upload_time": "2016-05-25T18:05:38", "url": "https://files.pythonhosted.org/packages/c7/88/d17d7135a2145ff02b65e0525af383827843c9b19a7849155a6dc345da00/isign-1.5.23.tar.gz" } ], "1.5.26": [ { "comment_text": "", "digests": { "md5": "5db4d7fba612856c53702771c32d871f", "sha256": "e5bce969af5a585bffb6ae2eb2f20d1f2f65f7a89ceb749ab380a38b9d0800b5" }, "downloads": -1, "filename": "isign-1.5.26.tar.gz", "has_sig": false, "md5_digest": "5db4d7fba612856c53702771c32d871f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30495, "upload_time": "2016-06-03T20:24:47", "url": "https://files.pythonhosted.org/packages/e5/69/40b050dc3aaea75aaed060a7a0530e5d7a8bd863726071ad4fd151aa70eb/isign-1.5.26.tar.gz" } ], "1.5.27": [ { "comment_text": "", "digests": { "md5": "85207632b4838d63de6472c52446b9eb", "sha256": "c88007df44d1353c2ad0a5e2b47b2c46eaf4aa8804b09f3e5c5f9b6d19ce7d0b" }, "downloads": -1, "filename": "isign-1.5.27.tar.gz", "has_sig": false, "md5_digest": "85207632b4838d63de6472c52446b9eb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30742, "upload_time": "2016-06-08T20:53:55", "url": "https://files.pythonhosted.org/packages/89/ae/4568ee864b0e5f6f06b81354bd028d53e54d7181bce10fcaa1725701f3bd/isign-1.5.27.tar.gz" } ], "1.5.28": [ { "comment_text": "", "digests": { "md5": "95d0f02c29ad2380d45a5a89d7da2aca", "sha256": "b30defb361064d82496f7ac0c5af1963050a396f4450e37aa5e5ba23837096b4" }, "downloads": -1, "filename": "isign-1.5.28.tar.gz", "has_sig": false, "md5_digest": "95d0f02c29ad2380d45a5a89d7da2aca", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30745, "upload_time": "2016-06-08T20:57:52", "url": "https://files.pythonhosted.org/packages/fb/20/0d54de31fd96637245e20536748accef2650d5f42e90d8ed7290c34ed183/isign-1.5.28.tar.gz" } ], "1.5.31": [ { "comment_text": "", "digests": { "md5": "2ccc2359981bca9dc6df072e95274ad8", "sha256": "f6a45b600de796e0ec4b8b37737a349247d64981946798263fb5f0d8cc65156f" }, "downloads": -1, "filename": "isign-1.5.31.tar.gz", "has_sig": false, "md5_digest": "2ccc2359981bca9dc6df072e95274ad8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31072, "upload_time": "2016-06-08T21:14:13", "url": "https://files.pythonhosted.org/packages/49/44/a25dfcb194f280e9d1ccad009c489a3bd9921ce8e13fc8ff54d9803ccdfe/isign-1.5.31.tar.gz" } ], "1.5.32": [ { "comment_text": "", "digests": { "md5": "17105c10d9826f297526a70f2f51f978", "sha256": "c1796b5219dbf03ea9c1a3d8b94e00cb3e5eeb18dbe485b170f28fe1a7a1b647" }, "downloads": -1, "filename": "isign-1.5.32.tar.gz", "has_sig": false, "md5_digest": "17105c10d9826f297526a70f2f51f978", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31063, "upload_time": "2016-06-10T00:29:46", "url": "https://files.pythonhosted.org/packages/14/89/91aefbb29f8c86c67f888d8fa29e4d7d9ef41e1d3747922ba62554485d90/isign-1.5.32.tar.gz" } ], "1.5.35": [ { "comment_text": "", "digests": { "md5": "d3be0673e0275eac68c86095cb28911c", "sha256": "4a75d4a460c6911e9311baf6b33e1a765abebc04aca224b5c51e06d425a43b60" }, "downloads": -1, "filename": "isign-1.5.35.tar.gz", "has_sig": false, "md5_digest": "d3be0673e0275eac68c86095cb28911c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31117, "upload_time": "2016-06-15T01:40:13", "url": "https://files.pythonhosted.org/packages/13/dc/6c56a774aa2a6261976cfe37fe9e54baf96b1057cd327b772fd368210b82/isign-1.5.35.tar.gz" } ], "1.5.37": [ { "comment_text": "", "digests": { "md5": "ac310bdf062c0dd010578de78c5c1bc0", "sha256": "c343ff030e95feda8efc011a19723a4e5a5ecfd849cdbc850abd7a9c1aad237b" }, "downloads": -1, "filename": "isign-1.5.37.tar.gz", "has_sig": false, "md5_digest": "ac310bdf062c0dd010578de78c5c1bc0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31182, "upload_time": "2016-06-15T01:55:23", "url": "https://files.pythonhosted.org/packages/b9/a3/188d63577c2e43718b69cc008af178eb58fe0c71d85b8487bbba38238729/isign-1.5.37.tar.gz" } ], "1.5.37.post2": [ { "comment_text": "", "digests": { "md5": "39baf4e3b2e973425aab2cd1e0d7c521", "sha256": "8ae404972b632facba78444188ed85fe91e4d59581604c4377a43edad8a1331d" }, "downloads": -1, "filename": "isign-1.5.37.post2.tar.gz", "has_sig": false, "md5_digest": "39baf4e3b2e973425aab2cd1e0d7c521", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31193, "upload_time": "2016-06-15T02:11:14", "url": "https://files.pythonhosted.org/packages/1b/17/417ccc0768dbc9479a694db55d25d92ab2a46e3cb16e42506eb83eacd482/isign-1.5.37.post2.tar.gz" } ], "1.5.39": [ { "comment_text": "", "digests": { "md5": "0aa74f61091e62a628f1f871eb3d2cd0", "sha256": "dfdcec30d6b2b5d883298b1b17f86a236594ca61319d38c80a99e3f99692c845" }, "downloads": -1, "filename": "isign-1.5.39.tar.gz", "has_sig": false, "md5_digest": "0aa74f61091e62a628f1f871eb3d2cd0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31271, "upload_time": "2016-06-15T02:08:10", "url": "https://files.pythonhosted.org/packages/09/6a/8dff0f419d3f4be0e35e7fe7887daba03beccec1359ac6d0a7723a22a35e/isign-1.5.39.tar.gz" } ], "1.5.4": [ { "comment_text": "", "digests": { "md5": "26b5535014115aeaa6b3ce4b0d99c0e3", "sha256": "776275fad14f4217fb6e92bca7fec1be993ae54e51835707fcc4b0da85f9c49c" }, "downloads": -1, "filename": "isign-1.5.4.tar.gz", "has_sig": false, "md5_digest": "26b5535014115aeaa6b3ce4b0d99c0e3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6806, "upload_time": "2016-03-15T22:43:49", "url": "https://files.pythonhosted.org/packages/1c/78/d8731b47533d200ccb95ba1c5032047f1cc406fb83bfee26ffd613466324/isign-1.5.4.tar.gz" } ], "1.5.43": [ { "comment_text": "", "digests": { "md5": "36220b9e97b638b1169fc9c33b608412", "sha256": "7c1e70727b2d28973cc629092d760202ef2c108a44c09f9a67135254337058eb" }, "downloads": -1, "filename": "isign-1.5.43.tar.gz", "has_sig": false, "md5_digest": "36220b9e97b638b1169fc9c33b608412", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31280, "upload_time": "2016-06-15T02:12:15", "url": "https://files.pythonhosted.org/packages/5b/37/f8eeae612de7ddd4d8d9a6e5856e559247e55a507015bb783e7768ac6944/isign-1.5.43.tar.gz" } ], "1.5.44": [ { "comment_text": "", "digests": { "md5": "b96298e8a20b58591a52b4cb928e898f", "sha256": "175d26731ebce8ec18843d92922e6df7ab8cc26b17f3890c9026bce212b8538e" }, "downloads": -1, "filename": "isign-1.5.44.tar.gz", "has_sig": false, "md5_digest": "b96298e8a20b58591a52b4cb928e898f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31274, "upload_time": "2016-06-15T02:13:12", "url": "https://files.pythonhosted.org/packages/cc/ad/174b21677b0fb11722245c546cdd1d657eb057cb87363b8e4ebca9c28204/isign-1.5.44.tar.gz" } ], "1.5.45": [ { "comment_text": "", "digests": { "md5": "266c4466c3475614b09ddda72b8befc6", "sha256": "01ce16aa6665036ddecc4d5de645e14e2a43440279e68ba5748102282493f941" }, "downloads": -1, "filename": "isign-1.5.45.tar.gz", "has_sig": false, "md5_digest": "266c4466c3475614b09ddda72b8befc6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31277, "upload_time": "2016-06-15T02:14:50", "url": "https://files.pythonhosted.org/packages/57/de/5d29b07b8c531038cb5c668873a4bf042c4a40f0dd8f1a94ae3c8ed2652f/isign-1.5.45.tar.gz" } ], "1.5.5": [ { "comment_text": "", "digests": { "md5": "5ac5823d046d7f00ff4d4aeda1949c2e", "sha256": "abd2fd5eb4808c4c4f3f83bd08df1d5a17a63448b4c2d488653dff1ba7796773" }, "downloads": -1, "filename": "isign-1.5.5.tar.gz", "has_sig": false, "md5_digest": "5ac5823d046d7f00ff4d4aeda1949c2e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6797, "upload_time": "2016-04-14T17:04:24", "url": "https://files.pythonhosted.org/packages/cd/96/8adfd60b90ca9503d2d944cd4de4d3929ae789c2e37f8301f8cadf33d435/isign-1.5.5.tar.gz" } ], "1.5.50": [ { "comment_text": "", "digests": { "md5": "b730d4ed94ed2f1d8752fa90e175b405", "sha256": "65b0f7e456b63904e20476abd9f12a7304d628f8680e6d2332c6912d99a8a38c" }, "downloads": -1, "filename": "isign-1.5.50.tar.gz", "has_sig": false, "md5_digest": "b730d4ed94ed2f1d8752fa90e175b405", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31269, "upload_time": "2016-07-26T19:14:42", "url": "https://files.pythonhosted.org/packages/d8/00/db0ed1e867d1d49a74ff86370e32c6b9a7a9ce470da85e20d4c382b3a8c8/isign-1.5.50.tar.gz" } ], "1.5.53": [ { "comment_text": "", "digests": { "md5": "3ce005fa54e2eed5bae1ab67230ae2c0", "sha256": "e90f84dfa17ae240811da4fe9c6e71a3e7910693b9aecb3f3d5ad7766fad6181" }, "downloads": -1, "filename": "isign-1.5.53.tar.gz", "has_sig": false, "md5_digest": "3ce005fa54e2eed5bae1ab67230ae2c0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31317, "upload_time": "2016-08-17T22:07:24", "url": "https://files.pythonhosted.org/packages/9b/e0/f8e6aa09029401d402b11ca593493a2d442a40388dcd274695ca3cb29f1e/isign-1.5.53.tar.gz" } ], "1.5.55": [ { "comment_text": "", "digests": { "md5": "90cbab363a8ed2be8f423a92bef4af67", "sha256": "288c23e96259546a1d31bf7a7e54c9b5142b3e66e8fead1bfdf35e239c9a9ece" }, "downloads": -1, "filename": "isign-1.5.55.tar.gz", "has_sig": false, "md5_digest": "90cbab363a8ed2be8f423a92bef4af67", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31343, "upload_time": "2016-08-25T23:19:01", "url": "https://files.pythonhosted.org/packages/2b/86/f6bd1cfb75461e5b5a636d394331ccad79a58a6c19ebf4ee7111411b329e/isign-1.5.55.tar.gz" } ], "1.5.59": [ { "comment_text": "", "digests": { "md5": "468fc376b72f00055410df542a51376a", "sha256": "78694b456a98c043cd863a52a32d6b72848c31ffbbbb098e057c3080d7aedc7b" }, "downloads": -1, "filename": "isign-1.5.59.tar.gz", "has_sig": false, "md5_digest": "468fc376b72f00055410df542a51376a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31774, "upload_time": "2016-11-30T03:08:29", "url": "https://files.pythonhosted.org/packages/a2/28/6069b34a39929d5ffbd55443dc4e9ef251d3812d768f700b2567b005a1f1/isign-1.5.59.tar.gz" } ], "1.5.6": [ { "comment_text": "", "digests": { "md5": "2f6c29dcdf44b9a28f049ba85f2dedf2", "sha256": "e25a02bbf6c8b337674a7496ae685f916fdfcc6884a640f8e8e2a95fb7baae87" }, "downloads": -1, "filename": "isign-1.5.6.tar.gz", "has_sig": false, "md5_digest": "2f6c29dcdf44b9a28f049ba85f2dedf2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6802, "upload_time": "2016-04-15T18:06:56", "url": "https://files.pythonhosted.org/packages/ec/72/503e45cfe61f2159e09057e626f31737a08c865a7e009281b66703d97c04/isign-1.5.6.tar.gz" } ], "1.5.60": [ { "comment_text": "", "digests": { "md5": "51de7c493fe17eedbdf35519c5daa76d", "sha256": "9d0a708ae7d5835c611674b2f5a43ae4dd2716e2387ae2f4a241444b30544ebb" }, "downloads": -1, "filename": "isign-1.5.60.tar.gz", "has_sig": false, "md5_digest": "51de7c493fe17eedbdf35519c5daa76d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31814, "upload_time": "2016-12-02T22:57:39", "url": "https://files.pythonhosted.org/packages/ce/eb/7f73b91774fe9c9d3e86fc988b7b9455dd71579bb7880e5e7fe972e5c3f4/isign-1.5.60.tar.gz" } ], "1.5.61": [ { "comment_text": "", "digests": { "md5": "c1da46e9e4caa8001613394e310f5c58", "sha256": "932ff18621005ca79e67aa1f4e495e6f5c0e31a045d3ae4c7eac8925f3cb03f8" }, "downloads": -1, "filename": "isign-1.5.61.tar.gz", "has_sig": false, "md5_digest": "c1da46e9e4caa8001613394e310f5c58", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31792, "upload_time": "2016-12-14T22:49:09", "url": "https://files.pythonhosted.org/packages/ec/be/97799617692a166f6c4de0de1dfbacf3ca0064d43ac54769ca273a9d286a/isign-1.5.61.tar.gz" } ], "1.5.66": [ { "comment_text": "", "digests": { "md5": "ce8c4d7f8ae0f73f4bbc4da7603aeb66", "sha256": "fb7757156c94779ff2b558806189864c75fbfe5e4ce0fb53ce33ad72e283a6b9" }, "downloads": -1, "filename": "isign-1.5.66.tar.gz", "has_sig": false, "md5_digest": "ce8c4d7f8ae0f73f4bbc4da7603aeb66", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 32691, "upload_time": "2016-12-15T00:12:09", "url": "https://files.pythonhosted.org/packages/42/ab/abaf778a3b39fed34cc41fec12107c8932bb97e3343b0d88ca0bf78576db/isign-1.5.66.tar.gz" } ], "1.5.8": [ { "comment_text": "", "digests": { "md5": "5ca02181c88556b5506bff521c15ff69", "sha256": "6bff57b1063bde0b6b512640b700c94c4af0c9787883aac417052eb0e8b25d78" }, "downloads": -1, "filename": "isign-1.5.8.tar.gz", "has_sig": false, "md5_digest": "5ca02181c88556b5506bff521c15ff69", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6797, "upload_time": "2016-04-18T21:17:50", "url": "https://files.pythonhosted.org/packages/1f/f0/c16cf1f6d11915d307f347beb6a8d6751fe750cbb465d14d8785aae01423/isign-1.5.8.tar.gz" } ], "1.5.8.post3": [ { "comment_text": "", "digests": { "md5": "36ec96004417576b2d67b7f849110ba7", "sha256": "8fd76865ec6f657e243d4a6322641354a159c1e2ca95a5d7f8a4ac9384309bcc" }, "downloads": -1, "filename": "isign-1.5.8.post3.tar.gz", "has_sig": false, "md5_digest": "36ec96004417576b2d67b7f849110ba7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28555, "upload_time": "2016-04-22T22:38:42", "url": "https://files.pythonhosted.org/packages/e4/16/583e5bf438914485ac5456fa5b0b95c84b4868571f68206cec4cf1e809b2/isign-1.5.8.post3.tar.gz" } ], "1.6.0": [ { "comment_text": "", "digests": { "md5": "19e16a39ed42509f99796a5030e8e066", "sha256": "754772b3bf17c745a96802d943e3c3055f6787265a39436e28dfed4f7b04f214" }, "downloads": -1, "filename": "isign-1.6.0.tar.gz", "has_sig": false, "md5_digest": "19e16a39ed42509f99796a5030e8e066", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 33357, "upload_time": "2016-12-22T18:43:21", "url": "https://files.pythonhosted.org/packages/f8/6e/99cad26bccd280e44342f90ea47f00e43bb705b91f83416d2f3785118a8d/isign-1.6.0.tar.gz" } ], "1.6.1": [ { "comment_text": "", "digests": { "md5": "873c29285a299867e92da23130d54a22", "sha256": "2086660acd36583ef5225d83f91fdb64eb5529957deea6e262c7f689d3b7fe67" }, "downloads": -1, "filename": "isign-1.6.1.tar.gz", "has_sig": false, "md5_digest": "873c29285a299867e92da23130d54a22", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35046, "upload_time": "2016-12-22T18:46:35", "url": "https://files.pythonhosted.org/packages/0b/0e/de1fe8ae5c0e5350ba7d9a09606666605f9b46022008249ccd43fe77f481/isign-1.6.1.tar.gz" } ], "1.6.10": [ { "comment_text": "", "digests": { "md5": "c031a2165071825d2528d1e850375a8d", "sha256": "012933d0119f674f789ea603b9c47b056bebbb90fb972db59bb6036acf954171" }, "downloads": -1, "filename": "isign-1.6.10.tar.gz", "has_sig": false, "md5_digest": "c031a2165071825d2528d1e850375a8d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35692, "upload_time": "2017-01-06T01:26:25", "url": "https://files.pythonhosted.org/packages/8d/47/e32cfacbc97d169d82cf8f5b514e5919e1efb5aa44ca8a134d26e0d43c6e/isign-1.6.10.tar.gz" } ], "1.6.12": [ { "comment_text": "", "digests": { "md5": "9fb97c671a66814a5cb57ac47bdb179b", "sha256": "8d80860767f17e2e87ac83e0b343bafb7c868a5447758a3991cf919dca4bfc0b" }, "downloads": -1, "filename": "isign-1.6.12.tar.gz", "has_sig": false, "md5_digest": "9fb97c671a66814a5cb57ac47bdb179b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35702, "upload_time": "2017-01-16T20:31:10", "url": "https://files.pythonhosted.org/packages/d5/82/ca327cab4c66bde2a1507db050a83e04bd31eae91e35ba4f51641f592ebd/isign-1.6.12.tar.gz" } ], "1.6.13": [ { "comment_text": "", "digests": { "md5": "4394a8333a5a9934baf7bdbb70b2ecf3", "sha256": "9dd6b162838179af3eb0073dddc91ef6af174094d36eb4aa2e67273f1db46b7d" }, "downloads": -1, "filename": "isign-1.6.13.tar.gz", "has_sig": false, "md5_digest": "4394a8333a5a9934baf7bdbb70b2ecf3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35700, "upload_time": "2017-01-18T22:22:33", "url": "https://files.pythonhosted.org/packages/3a/0d/e1676b2a5af19adeeb4ed66a0fa74bf741b3afca6574be992e3a212c0e3e/isign-1.6.13.tar.gz" } ], "1.6.14": [ { "comment_text": "", "digests": { "md5": "85f935c774b78502f36fed1cb9c410d5", "sha256": "ac875b14c3cc4d7159f35838f29cc921ed8ae06f000653f50446f569e46500ad" }, "downloads": -1, "filename": "isign-1.6.14.tar.gz", "has_sig": false, "md5_digest": "85f935c774b78502f36fed1cb9c410d5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35695, "upload_time": "2017-01-18T22:29:53", "url": "https://files.pythonhosted.org/packages/13/af/92a0b318a8e864855f8386601859df84e3181c2935dfd2e7ccec5864d158/isign-1.6.14.tar.gz" } ], "1.6.15": [ { "comment_text": "", "digests": { "md5": "6c8adcf5e7b39cc2a949b231cc1caaef", "sha256": "d6092cc6ab31dd8295782e540bed5609a43b5f33a8cde0ecb3fc974d0ebb3267" }, "downloads": -1, "filename": "isign-1.6.15.tar.gz", "has_sig": false, "md5_digest": "6c8adcf5e7b39cc2a949b231cc1caaef", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35690, "upload_time": "2017-01-18T22:31:10", "url": "https://files.pythonhosted.org/packages/77/74/58146fffa33fde28565f5ec0332b8d8fcf0fafbd13d841d75480e30755b1/isign-1.6.15.tar.gz" } ], "1.6.2": [ { "comment_text": "", "digests": { "md5": "8c06fff80154f64ef9d333bc12002e9e", "sha256": "1e5a40d79fe436333d70d9c5a47029735e0bebc836b0f6b8ce5f93844f150b6a" }, "downloads": -1, "filename": "isign-1.6.2.tar.gz", "has_sig": false, "md5_digest": "8c06fff80154f64ef9d333bc12002e9e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35400, "upload_time": "2016-12-22T19:10:26", "url": "https://files.pythonhosted.org/packages/27/65/759374bd330c8a4421a0aa6179f9e53483781f1c6cfcdadfba90ea14cc30/isign-1.6.2.tar.gz" } ], "1.6.6": [ { "comment_text": "", "digests": { "md5": "83997fecaac48808f3d231979c76297f", "sha256": "679108fdc431678499327e67e49860ae2779857fda9ac390462f78ce8730d5f5" }, "downloads": -1, "filename": "isign-1.6.6.tar.gz", "has_sig": false, "md5_digest": "83997fecaac48808f3d231979c76297f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35465, "upload_time": "2016-12-22T23:56:00", "url": "https://files.pythonhosted.org/packages/04/5e/bc7d8147cb59bb0762bb8c99b5b9d6e07e351324c08fd8a5ac3a10772cbf/isign-1.6.6.tar.gz" } ], "1.6.8": [ { "comment_text": "", "digests": { "md5": "d0c1b657b471813f241e98c88bdba3ab", "sha256": "60ec824565a391946d83981cb66982c3b61bfb3a961ca3b2c74a0a18b3ce8b0d" }, "downloads": -1, "filename": "isign-1.6.8.tar.gz", "has_sig": false, "md5_digest": "d0c1b657b471813f241e98c88bdba3ab", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35704, "upload_time": "2017-01-06T01:02:59", "url": "https://files.pythonhosted.org/packages/41/52/fb69a390418019be67ef4275a8eaea08103f072df6581e1518b6ea0fac18/isign-1.6.8.tar.gz" } ], "1.6.9": [ { "comment_text": "", "digests": { "md5": "b449f71b5b4019c5d1eb4211f058e768", "sha256": "5db0e50c30153fc2984c061639dbc1775bba5ec14f57beb95cf65272a062f240" }, "downloads": -1, "filename": "isign-1.6.9.tar.gz", "has_sig": false, "md5_digest": "b449f71b5b4019c5d1eb4211f058e768", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35691, "upload_time": "2017-01-06T01:14:55", "url": "https://files.pythonhosted.org/packages/20/e5/51748068d45f7f248efc3e627aa05e368d43163dc17e494c86041b10c153/isign-1.6.9.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6c8adcf5e7b39cc2a949b231cc1caaef", "sha256": "d6092cc6ab31dd8295782e540bed5609a43b5f33a8cde0ecb3fc974d0ebb3267" }, "downloads": -1, "filename": "isign-1.6.15.tar.gz", "has_sig": false, "md5_digest": "6c8adcf5e7b39cc2a949b231cc1caaef", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35690, "upload_time": "2017-01-18T22:31:10", "url": "https://files.pythonhosted.org/packages/77/74/58146fffa33fde28565f5ec0332b8d8fcf0fafbd13d841d75480e30755b1/isign-1.6.15.tar.gz" } ] }