summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Fix issue #98: Generate p and q of exactly half the number of bits of Nissue-98-fips-186-4-prime-selectionSybren A. Stüvel2019-08-042-21/+41
| | | | | | | | | This commit implements the FIPS 186-4 recommendation for lower & upper bounds on p & q, and on a minimum distance |p-q|. @joostrijneveld and @RichardThiessen I'd appreciate your eyes on this before it's pushed to master. If you can, please test & give me some feedback on #98.
* Updated Code Climate badge in README.mdSybren A. Stüvel2019-08-041-1/+1
|
* Configured CodeClimateSybren A. Stüvel2019-08-041-0/+10
| | | | | | I've overridden the default configuration in such a way that the code as it is now passes all the code smells checks. Especially the default code complexity threshold is extremely low.
* Configured flask8 to use max_complexity=10Sybren A. Stüvel2019-08-042-23/+30
| | | | Also reorganised the only function that had a higher complexity.
* Link changelog from README.mdSybren A. Stüvel2019-08-041-1/+1
|
* Converted changelog from txt to MarkdownSybren A. Stüvel2019-08-041-42/+19
|
* Bumped copyright in documentation to 2011-2019Sybren A. Stüvel2019-08-041-1/+1
|
* Added flake8 as development dependency and fixed reported issuesSybren A. Stüvel2019-08-048-15/+65
|
* Add support for SHA3 hashingSybren A. Stüvel2019-08-046-3/+33
| | | | | | | | | | This is based on https://github.com/sybrenstuvel/python-rsa/pull/96, with a few improvements: - The minimum of one use of SHA3 in a unit test, to at least touch it at some point. - Documented the support of SHA3. - Only install the third-party library required by Python 3.5 when we're running on Python 3.5. Newer Python versions support SHA3 natively.
* Added update_version.sh scriptSybren A. Stüvel2019-08-041-0/+19
| | | | This script updates the Python-RSA version number in various places.
* Removed setup.py as this is now managed via PoetrySybren A. Stüvel2019-08-042-73/+0
| | | | | Poetry generates a setup.py as part of the building process. It's no longer necessary to keep it in the Git repo.
* Mentioned Poetry in the installation documentationSybren A. Stüvel2019-08-041-3/+4
|
* Updated CHANGELOGSybren A. Stüvel2019-08-041-1/+5
|
* Switch from Pipenv to PoetrySybren A. Stüvel2019-08-046-477/+596
| | | | | Poetry has a nicer interface, performs more tasks than Pipenv, and is generally more pleasant to use.
* Added type annotations + some fixes to get them correctSybren A. Stüvel2019-08-0412-116/+129
| | | | | | One functional change: `CryptoOperation.read_infile()` now reads bytes from `sys.stdin` instead of text. This is necessary to be consistent with the rest of the code, which all deals with bytes.
* Added mypy for static type checkingSybren A. Stüvel2019-08-048-32/+119
|
* Removed compatibility code for Python 2.7 and 3.4Sybren A. Stüvel2019-08-0421-406/+37
|
* Updated CHANGELOG for fix of #129Sybren A. Stüvel2019-08-041-0/+2
|
* Bumped version to 4.1-dev0Sybren A. Stüvel2019-08-042-3/+3
|
* Drop support for Python 2 and 3.4Sybren A. Stüvel2019-08-048-196/+246
| | | | | | | | | | | | | Some of our development dependencies, like Sphinx, have already dropped support for Python 2. This makes it harder for this project to update its dependencies. Since Python 2 only has a few more months to live, I think it's fine to drop support now. Python 3.4 has already reached its end-of-life date. Python-RSA now only supports Python 3.5 and newer. Python 3.5 support is intended to last until its end-of-life date of 2019-09-13: https://devguide.python.org/#status-of-python-branches
* Fix BytesWarning in testsJon Dufresne2018-10-231-3/+3
| | | | | | | | | | | | | | | Shouldn't try to coerce bytes to a string. Instead, print the repr value (e.g. b'mybytestring'). When running tests with the Python `-b` option, fixes warnings of the form: .../python-rsa/tests/test_strings.py:34: BytesWarning: str() on a bytes instance print("\tMessage: %s" % message) .../python-rsa/tests/test_strings.py:37: BytesWarning: str() on a bytes instance print("\tEncrypted: %s" % encrypted) .../python-rsa/tests/test_strings.py:40: BytesWarning: str() on a bytes instance print("\tDecrypted: %s" % decrypted)
* Use utf-8 when reading README; Use io.openAlexey Sveshnikov2018-10-231-1/+5
|
* Fixed testing on older Python versionsSybren A. Stüvel2018-10-233-60/+93
|
* Mark 4.0 as releasedversion-4.0Sybren A. Stüvel2018-09-164-5/+5
|
* Reword README.md for release of 4.0Sybren A. Stüvel2018-09-161-5/+5
|
* Declare Python 3.7 as supportedSybren A. Stüvel2018-09-161-0/+1
|
* Fixes for Travis CISybren A. Stüvel2018-09-163-7/+13
| | | | | | | | | | | | | | | | - Remove `--ignore-pipfile`. This option makes Pipenv install from the `Pipfile.lock` only, ignoring the `Pipfile` itself. In a sense this is good, because it tests with the locked dependencies. However, it breaks when you lock on Python 3.6 but test on Python 3.4 or 2.7. We'll have to re-visit this when dropping support for older Pythons. - pypy 3.6 -> 3.5 - Drop `pypy` from Travis CI testing We still test with 'pypy3.5'. However, Pipenv has an issue with pypy 2.7. See https://github.com/pypa/pipenv/issues/2449 - Pypy3.5 seems to want pathlib2 when running on Travis CI
* Remove Travis CI testing for Python 3.7Sybren A. Stüvel2018-09-161-2/+5
| | | | | | | Python 3.7 is not yet supported by Travis CI. See https://github.com/travis-ci/travis-ci/issues/9815 Also fixed a mistake in the test config.
* Typo in `.travis.yml`Sybren A. Stüvel2018-09-161-1/+1
|
* Remove unsued nose configurationJon Dufresne2018-09-161-3/+0
| | | | | The use of nose for testing was previously removed and replaced by pytest.
* speedupyjqiang2018-09-166-6/+6
| | | "if A and B" if mostly A is True then we should judge B at first
* Updated changelogSybren A. Stüvel2018-09-161-2/+2
|
* Moved `get_word_alignment()` from `_compat.py` to `machine_size.py`Sybren A. Stüvel2018-09-162-3/+77
| | | | | | In preparation of removal of Python 2.7 support, I only want to have compatibility code for Python 2.7 in `_compat.py`, and not other kinds of 'compatibility'.
* Fixed testing with Travis CI and ToxSybren A. Stüvel2018-09-165-49/+157
| | | | | | - Added missing test dependencies. - Updated `.travis.yml` and `tox.ini` to install deps and run with pipenv. - Added testing on Python 3.7.
* Transitioned from `requirements.txt` to Pipenv for package managementSybren A. Stüvel2018-07-104-6/+230
|
* Enable pip cache in Travis CIJon Dufresne2018-07-101-0/+1
| | | | | | | | Slightly speed up builds and reduce load on PyPI servers. For more information, see: https://docs.travis-ci.com/user/caching/#pip-cache
* Update all pypi.python.org URLs to pypi.orgJon Dufresne2018-06-141-2/+2
| | | | | | For details on the new PyPI, see the blog post: https://pythoninsider.blogspot.ca/2018/04/new-pypi-launched-legacy-pypi-shutting.html
* Include license file in the generated wheel packageJon Dufresne2018-06-141-0/+3
| | | | | | | | | | | | | | | | | | The wheel package format supports including the license file. This is done using the [metadata] section in the setup.cfg file. For additional information on this feature, see: https://wheel.readthedocs.io/en/stable/index.html#including-the-license-in-the-generated-wheel-file Helps the project comply with its own license: > 4. Redistribution. You may reproduce and distribute copies of the Work > or Derivative Works thereof in any medium, with or without > modifications, and in Source or Object form, provided that You meet the > following conditions: > > a. You must give any other recipients of the Work or Derivative Works > a copy of this License; and ...
* Show README.md on PyPIHugo2018-04-281-0/+5
|
* Updated CHANGELOG.md for pull request #104Sybren A. Stüvel2018-02-051-1/+2
|
* Changed unittest to cover the new SHA-224 hash methodSybren A. Stüvel2018-02-051-2/+2
|
* Add support for SHA224 for PKCS1 signaturesJoost Rijneveld2018-02-052-3/+5
|
* Remove keysize requirements / recommendationsJoost Rijneveld2018-02-051-26/+0
| | | | | | This library is probably not the right place to recommend key sizes or have discussions about the relation between key sizes and hash function outputs.
* Add support for Python 3.6Hugo2018-02-052-2/+3
|
* Remove duplicate hash method definitionJoost Rijneveld2018-02-051-10/+2
| | | | | | | There is no need to specify this list in PKCS1_v2 when it is already specified in PKCS1. This does rely on the digest_size attribute being available, but pkcs1.py already depends heavily on the specific API of hashlib.
* Fix typoHugo2018-01-244-5/+5
|
* Drop support for EOL Python 3.3Hugo2017-11-295-5/+5
|
* Use tox-travis to run tox when using TravisCI (#102)Joost Rijneveld2017-10-221-14/+8
| | | | | | | | * Use tox-travis to run tox when using TravisCI * Always run coveralls after TravisCI It appears coveralls no longer comments twice
* Prevent __pycache__ from being committed (#100)Joost Rijneveld2017-10-091-0/+1
|
* Typos (#95)David Larlet2017-08-311-2/+2
|