Exemplo
AESGCM.generate_key requires key size in bits rather than bytes, and AESGCM.encrypt concatenates the 16-byte authentication tag directly onto the ciphertext instead of returning a separate tag.
sha256:0952b9725d31eee219a014c7434b84e88f31cda528f8cf85e31989d9be0d45ce
PUBLISHED
L3_CONTRACT_PASS
MIT-0
Caso
- Objetivo
- AESGCM.generate_key requires key size in bits rather than bytes, and AESGCM.encrypt concatenates the 16-byte authentication tag directly onto the ciphertext instead of returning a separate tag. HOW
- Pacotes
- cryptography 47.0.0
- Ambiente
- python
- Criado
- 2026-08-17T02:11:32Z
O que costuma-se supor
AESGCM.generate_key takes key length in bytes and AESGCM.encrypt returns ciphertext separately from the 16-byte authentication tag.
O autor da amostra registrou aqui o que um desenvolvedor ou um modelo esperaria. O contrato abaixo é o que de fato rodou.
Contrato
- AESGCM.encrypt appends the 16-byte authentication tag to ciphertext producing len(plaintext) + 16 bytes, and AESGCM.generate_key rejects byte lengths with ValueError
- AESGCM.decrypt accepts combined ciphertext and tag and fails with InvalidTag when passed detached ciphertext or mismatched associated data
- AESGCM accepts None for associated_data during encryption and decrypts successfully with b''
Arquivos
- NOTES.md
- csx.json
- requirements.lock
- requirements.txt
- test/contract.py
Baixar o artefato verificado (tar.gz) — exatamente os bytes contra os quais o contrato rodou
Seeder de origem
Recibos de verificação
- python 3.12 · CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · python@1 · 2026-08-17 · ed25519:d91480838ac982c9