cryptography/docs
Quentin Retourne d6cac753c2
Add support for decrypting S/MIME messages (#11555)
* first python API proposition

first round-trip tests

feat: made asn1 structures readable

refacto: adapted existing functions accordingly

feat/pkcs12: added symmetric_decrypt

feat: deserialize 3 possible encodings

feat: handling AES-128

feat: raise error when no recipient is found

feat/pkcs7: added decanonicalize function

feat/asn1: added decode_der_data

feat/pkcs7: added smime_enveloped_decode

tests are the round-trip (encrypt & decrypt)

more tests for 100% python coverage

test support pkcs7_encrypt with openssl

added algorithm to pkcs7_encrypt signature

refacto: decrypt function is clearer

flow is more natural

refacto: added all rust error tests

refacto: added another CA chain for checking

fix: const handling

Refactor PKCS7Decryptor to pkcs7_decrypt

refacto: removed SMIME_ENVELOPED_DECODE from rust code

refacto: removed decode_der_data

adapted tests accordingly

removed the PEM tag check

added tests for smime_decnonicalize

one more test case

Update src/rust/src/pkcs7.rs

Co-authored-by: Alex Gaynor <alex.gaynor@gmail.com>

took comments into account

pem to der is now outside of decrypt

fix: removed test_support pkcs7_encrypt

added vector for aes_256_cbc encrypted pkcs7

feat: not using test_support decrypt anymore

added new vectors for PKCS7 tests

feat: using pkcs7 vectors

removed previous ones

fix: changed wrong function

feat: added certificate issuer check

test: generating the RSA chain

removed the vectors accordingly

moved symmetric_decrypt to pkcs7.rs

* Update src/cryptography/hazmat/primitives/serialization/pkcs7.py

Co-authored-by: Alex Gaynor <alex.gaynor@gmail.com>

* fix: removed use of deprecated new_bound for PyBytes

* corrected some error types

* updated tests accordingly

* fix: handling other key encryption algorithms

added vectors & tests accordingly

* first attempts raising error when no header to remove

* one more test to handle text data without header

* fix: went back to the previous implementation

* refacto: removed the return part

* feat: Binary option does not seem useful for decryption

removed decanonicalization function

adapted tests accordingly

* moved logic into rust

only left some checks (for now?)

* removed pyfunction for the inner decrypt one

* added checks in rust now :)

changed name for clarity

* removed unused function

* some checks not needed anymore

* removed a parameter

* took comments into account

* removed unused import

removed excess get_type

* added first unwrap corrections

cleaned tests, added some others

added more vectors

* no more unwrap for parameter checks

* removing headers is Python now

added tests accordingly

will compare with OpenSSL

* final corrections?

* first version of documentation

some minor refactoring

* corrected doctests

* better indentation

* doctest: added RSA private key

* oops

---------

Co-authored-by: Alex Gaynor <alex.gaynor@gmail.com>
2024-11-26 08:39:53 -05:00
..
_ext fix preview ruff warning (#11435) 2024-08-15 09:45:08 -07:00
_static
development Add support for decrypting S/MIME messages (#11555) 2024-11-26 08:39:53 -05:00
hazmat Add support for decrypting S/MIME messages (#11555) 2024-11-26 08:39:53 -05:00
x509 chore: replace plaing hyperlinks to rfc sections with rfc roles with section argument (#11985) 2024-11-17 08:33:49 -05:00
api-stability.rst document that we raise CryptographyDeprecationWarning on deprecation more clearly (#10053) 2023-12-23 14:48:55 -05:00
changelog.rst
community.rst Point folks towards irc.libera.chat (#6054) 2021-05-19 14:56:36 -05:00
conf.py webstore.ansi.org is now behind cloudflare (#11477) 2024-08-22 20:53:08 -04:00
doing-a-release.rst Update various links in the docs for permanent redirects (#10109) 2024-01-02 21:00:20 -03:00
exceptions.rst Update docs 2015-04-13 18:20:47 -04:00
faq.rst Remove FAQ that's no longer up to date (#9484) 2023-08-22 07:05:13 -07:00
fernet.rst Update fernet.rst (#11335) 2024-07-22 18:40:21 +00:00
glossary.rst Fix more misspellings (#10933) 2024-05-05 16:12:27 +00:00
index.rst add decrepit namespace and put SEED, IDEA, Blowfish, and CAST5 in it (#10284) 2024-01-28 17:34:33 -05:00
installation.rst Remove buster from CI (#11182) 2024-06-30 14:07:09 +03:00
limitations.rst more warnings and context around RSA online decryption (#7699) 2022-10-12 11:14:56 -04:00
make.bat
Makefile
openssl.rst drop support for openssl < 1.1.1d (#8449) 2023-03-24 08:36:58 -04:00
random-numbers.rst remove out of date details in random numbers docs (#8482) 2023-03-10 05:19:39 +08:00
security.rst fixes #9048 -- document where to find known vulnerabilities (#9055) 2023-06-10 14:12:44 -06:00
spelling_wordlist.txt argon2id support (#11524) 2024-11-11 14:42:26 +00:00