646 Commits

Author SHA1 Message Date
565d78b908 updated cryptography deprecated things
Some checks failed
Tox Tests / test-setup (py39-setup, 3.9) (push) Waiting to run
Tox Tests / pep8 (push) Waiting to run
Tox Tests / finish-coveralls (push) Blocked by required conditions
Tox Tests / unit-tests (macos-10.15, 3.10) (push) Has been cancelled
Tox Tests / unit-tests (macos-10.15, 3.6) (push) Has been cancelled
Tox Tests / unit-tests (macos-10.15, 3.7) (push) Has been cancelled
Tox Tests / unit-tests (macos-10.15, 3.8) (push) Has been cancelled
Tox Tests / unit-tests (macos-10.15, 3.9) (push) Has been cancelled
Tox Tests / unit-tests (ubuntu-18.04, 3.10) (push) Has been cancelled
Tox Tests / unit-tests (ubuntu-18.04, 3.6) (push) Has been cancelled
Tox Tests / unit-tests (ubuntu-18.04, 3.7) (push) Has been cancelled
Tox Tests / unit-tests (ubuntu-18.04, 3.8) (push) Has been cancelled
Tox Tests / unit-tests (ubuntu-18.04, 3.9) (push) Has been cancelled
Tox Tests / c-locale-test (push) Has been cancelled
Tox Tests / test-setup (py310-setup, 3.10) (push) Has been cancelled
Tox Tests / test-setup (py36-setup, 3.6) (push) Has been cancelled
Tox Tests / test-setup (py37-setup, 3.7) (push) Has been cancelled
Tox Tests / test-setup (py38-setup, 3.8) (push) Has been cancelled
2026-02-11 15:20:56 +03:00
347fbb1d73 fixed cures for current cryptography
Some checks failed
Tox Tests / unit-tests (macos-10.15, 3.10) (push) Has been cancelled
Tox Tests / unit-tests (macos-10.15, 3.6) (push) Has been cancelled
Tox Tests / unit-tests (macos-10.15, 3.7) (push) Has been cancelled
Tox Tests / unit-tests (macos-10.15, 3.8) (push) Has been cancelled
Tox Tests / unit-tests (macos-10.15, 3.9) (push) Has been cancelled
Tox Tests / unit-tests (ubuntu-18.04, 3.10) (push) Has been cancelled
Tox Tests / unit-tests (ubuntu-18.04, 3.6) (push) Has been cancelled
Tox Tests / unit-tests (ubuntu-18.04, 3.7) (push) Has been cancelled
Tox Tests / unit-tests (ubuntu-18.04, 3.8) (push) Has been cancelled
Tox Tests / unit-tests (ubuntu-18.04, 3.9) (push) Has been cancelled
Tox Tests / c-locale-test (push) Has been cancelled
Tox Tests / test-setup (py310-setup, 3.10) (push) Has been cancelled
Tox Tests / test-setup (py36-setup, 3.6) (push) Has been cancelled
Tox Tests / test-setup (py37-setup, 3.7) (push) Has been cancelled
Tox Tests / test-setup (py38-setup, 3.8) (push) Has been cancelled
Tox Tests / test-setup (py39-setup, 3.9) (push) Has been cancelled
Tox Tests / pep8 (push) Has been cancelled
Tox Tests / finish-coveralls (push) Has been cancelled
2026-02-07 10:56:19 +03:00
f76636b9f8 removed imghdr dependency 2026-02-07 10:54:35 +03:00
Michael Greene
8e3b7b2e3f almost missed this lol 2022-11-23 17:19:56 -08:00
Michael Greene
eb99007b3a big PEP8 pass 2022-11-23 17:15:45 -08:00
Michael Greene
dd85906b50 fix last test 2022-11-23 16:32:15 -08:00
Michael Greene
696e24b800 fix warning formatting and try to get everything using the same kind of string formatting 2022-11-23 16:18:04 -08:00
Michael Greene
ef0ed5145a fix almost all the rest of the tests 2022-11-23 16:10:26 -08:00
Michael Greene
18bc63d856 - explicitly define which security issues can cause signature verify to fail
- improve implementation of SignatureVerify.bad_signatures
- improve implementation of SignatureVerify.good_signatures
- fix implementation of SignatureVerify.__bool__
2022-11-23 16:05:33 -08:00
Michael Greene
25d2c12718 fix this weirdness 2022-11-23 15:44:04 -08:00
Michael Greene
c10439f74b this fixes EdDSA 2022-11-23 15:43:51 -08:00
Michael Greene
3aa0acbce5 oops 2022-11-23 15:35:08 -08:00
Michael Greene
0f574f5ba8 fix expires_at 2022-11-23 15:34:30 -08:00
Michael Greene
eead880d09 - move FlagEnum and FlagEnumMeta back into types.py where they belong
- fix capitalization and spelling of SecurityIssues flag members
- pythonize the names of SAFE_CURVES and MINIMUM_ASYMMETRIC_KE?Y_LENGTHS
- move the functionality of is_hash_considered_secure into a HashAlgorithm property called is_considered_secure where it always should have been
- move the functionality of check_assymetric_algo_and_its_parameters into a PubKeyAlgorithm function called validate_params like it always should have been
2022-11-23 15:33:36 -08:00
Michael Greene
830bdab323 better 2022-11-23 11:42:57 -08:00
Michael Greene
74d5ec834f fix fingerprint test 2022-11-23 11:26:49 -08:00
Michael Greene
40464c5eb9 reimplement Fingerprint __pretty__ better 2022-11-23 11:12:02 -08:00
Michael Greene
0965434d9d fix PGPUID.selfsig 2022-11-23 11:04:05 -08:00
Michael Greene
7d228ab7ee fix fingerprint comparisons 2022-11-23 10:48:56 -08:00
Michael Greene
937f36bd62 fix typo 2022-11-23 10:47:09 -08:00
Michael Greene
b3f1477089 remove spurious file 2022-11-23 09:57:10 -08:00
KOLANICH
a23dccef97 Got rid of six. 2022-11-11 17:39:38 +03:00
KOLANICH
b8c28c5a46 Added some security checks: * a check of self-signatures (doesn't work - no self-signatures are detected on primary key (_signatures is empty), BouncyCastle detects them fine) * a check of cryptoprimitives used 2022-11-10 17:23:27 +03:00
Michael Greene
b5cc2f353b Merge pull request #415 from dkg/tz-aware-datetime 2022-11-09 14:50:16 -08:00
Daniel Kahn Gillmor
65613853fd Warn when the user passes a TZ-naive datetime object
TZ-naive datetime objects are looking for trouble.  We would prefer to
do all comparisons and work using TZ-aware datetime objects.
2022-11-09 07:52:45 -05:00
Daniel Kahn Gillmor
c880d72902 Generate and use TZ-aware datetime objects
pgpy has been using TZ-naive datetime objects, despite all OpenPGP
wire-format dates being essentially UTC.

Better to represent the datetime objects explicitly as UTC.

Closes: #401
2022-11-09 07:52:28 -05:00
Daniel Kahn Gillmor
82614f8019 Ignore unrecognized signature versions
As new versions of OpenPGP signatures are defined, implementations may
provide multiple signatures, one of an older version for legacy
clients and one of a new version for clients that can read the new
signature form.

PGPy should skip over any signature whose version is not recognized.
2022-11-09 07:49:01 -05:00
Michael Greene
473d3651e2 Merge pull request #313 from prebuilder/genExprs
Refactoring the generator expressions for better readability and possibility to add debug output
2022-11-02 21:36:08 -07:00
Michael Greene
ae2159e504 Merge pull request #311 from prebuilder/fingerprint_class
Fingerprint class
2022-11-02 21:31:47 -07:00
Michael Greene
d958cfe6a3 Merge pull request #309 from prebuilder/subkey_binding_signature
Added a subkey binding signature subpacket.
2022-11-02 21:28:35 -07:00
Michael Greene
f1a41ede87 Merge pull request #388 from dkg/passwords-as-bytes
Accept passphrases as bytes
2022-11-02 21:25:39 -07:00
Michael Greene
10f7d765e3 Merge pull request #394 from ignaloidas/default-to-3DES
Default to 3DES when preferred algorithms don't have any supporting algorithm
2022-11-02 21:24:56 -07:00
Michael Greene
0ba2bc5b15 Merge pull request #403 from hofrob/fix-removed-cryptography-utils-register-interface
fix removed cryptography.utils.register_interface
2022-11-02 21:23:56 -07:00
Robert Hofer
d84597eb84 fix removed cryptography.utils.register_interface 2022-09-11 17:21:55 +02:00
Conrad Hoffmann
d2bd9e83b0 Allow tabs in regex for ASCII validity check
They can occur e.g. in armor headers.

Fixes: #395
2022-05-30 20:39:02 +02:00
Ignas Kiela
e0eb8fb4a5 Default to 3DES when preferred algorithms don't have any supporting algorithm
As per RFC 4880 13.2, "Since TripleDES is the MUST-implement algorithm,
if it is not explicitly in the list, it is tacitly at the end."

Some keys in the wild do not have it explicitly in the list, so put it
there as a default.
2022-04-20 17:53:29 +03:00
Daniel Kahn Gillmor
412540ad72 Accept passphrases as bytes
The OpenPGP specifications are ambiguous about the encoding of
passwords.

In practice, we expect most passphrases to be UTF-8-encoded, but if
the incoming passphrase is in fact a bytestring, we ought to be able
to handle it correctly.

Signed-off-by: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
2022-02-01 23:05:54 -05:00
Gabriel Cruz
50ef17a9b1 Feature:: Support for keys without usage flags (#371)
Co-authored-by: James Morris <jmorris@securityinnovation.com>
2021-07-08 15:52:09 -04:00
James Morris
78c4588a7e Move the last of the metadata to setup.cfg 2021-04-20 11:33:20 -04:00
James Morris
8600971ac0 Update copyright dates 2021-04-16 16:38:08 -04:00
James Morris
a69158412e Remove stacklevel=4 from logging.debug in decorators.KeyAction
Fixes #368
2021-04-09 14:06:24 -04:00
James Morris
abcf2ae300 Fixed docstring for PGPKey.add_subkey() 2021-01-26 10:36:31 -05:00
KOLANICH
3d34eba1b4 Refactoring the generator expressions for better readability and possibility to add debug output 2021-01-12 19:34:15 +03:00
KOLANICH
29236fae53 Fixed fingerprint class 2021-01-12 19:34:15 +03:00
KOLANICH
449a7afb77 Added a subkey binding signature subpacket. 2021-01-12 19:34:15 +03:00
James Morris
cd3056fb65 Set version to 0.6.0-dev 2020-10-09 12:44:21 -04:00
James Morris
6650e0c0c6 Add Python 3.8 to tests and drop Python 2.7 and 3.4 support 2020-10-07 15:38:29 -04:00
James Morris
746817efc9 Merge pull request #328 from tirkarthi/fix-collections
Import ABC from collections.abc
2020-10-07 15:26:12 -04:00
James Morris
3a1f7bf3db Merge branch 'master' into master 2020-09-24 17:38:54 -04:00
James Morris
1b2b52adfd More documentation fixups 2020-09-18 17:48:00 -04:00