INDEX
Compendium de Criptografia
Referência consolidada sobre criptografia: timeline histórica, fundamentos teóricos, algoritmos simétricos/assimétricos, hash, protocolos, criptografia pós-quântica, confidential computing, criptomoedas, ataques, pessoas e incidentes.
*dioma* pt-BR no corpo; nomes técnicos, algoritmos e protocolos em forma original. *šltima atualização* 20260513 *antenedor* Rodrigo (rpm32510)
Mapa
| # | Arquivo | Escopo |
|---|---|---|
| 01 | timeline.md | Linha do tempo completa: ~1900 a.C. até hoje |
| 02 | fundamentos.md | Teoria, modelos de adversário, princÃpios (Kerckhoffs, Shannon, OWF, IND-CPA/CCA) |
| 03 | classica.md | Cifras pré-modernas: substituição, transposição, polyalfabéticas, máquinas eletromecânicas (Enigma, Lorenz, Purple) |
| 04 | simetrica.md | Block ciphers (DES, AES, Serpent, Twofish, Camellia), stream (RC4, ChaCha20, Salsa20), modos (ECB, CBC, CTR, GCM, CCM, XTS, SIV, OCB), AEAD |
| 05 | assimetrica.md | Diffie |
| 06 | hash |
MD245, SHA-0123, RIPEMD, BLAKE23, HMAC, KMAC, Poly1305, KDFs (PBKDF2, scrypt, bcrypt, Argon2, HKDF) |
| 07 | protocolos.md | SSLTLS 1.0–1.3, SSH, IPsecIKE, Kerberos, OAuthOIDC, Signal Protocol (X3DHDouble Ratchet), MLS, Noise, WireGuard, OPAQUE |
| 08 | pos-quantica.md | NIST PQC: ML |
| 09 | confidential-computing.md | TPM 2.0, Secure Boot, AMD SEVSEV-ESSEV |
| 10 | criptomoeda.md | Hashcash, Bitcoin, Merkle trees em UTXO, Schnorr/Taproot, BLS aggregation, MimbleWimble, ring signatures (Monero), zk-rollups |
| 11 | ataques.md | Taxonomia de ataques: criptanálise (linear, diferencial), side-channel (timing, power, EM, fault), protocolo (BEAST, CRIME, POODLE, FREAK, Logjam, DROWN, ROBOT, ROCA), implementação (Heartbleed, Bleichenbacher, padding oracle), fÃsicos (cold boot, DMA), quantum (Shor, Grover) |
| 12 | pessoas.md | Criptógrafos e criptanalistas: Diffie, Hellman, Rivest, Shamir, Adleman, Merkle, Koblitz, Miller, Bernstein, Schneier, Daemen, Rijmen, Boneh, Bellare, Rogaway, Nakamoto, Turing, Rejewski, Friedman, Kahn, Wang Xiaoyun e outros |
| 13 | incidentes.md | Enigma broken, Operation Rubicon (Crypto AG), Bullrun (Snowden), DualECDRBG, Heartbleed, ROCA Infineon, ROBOT, KRACK, Apple vs FBI, RSA SecurID, Juniper Dual_EC, Solarwinds |
| 14 | koder-aplicada.md | Escolhas criptográficas da Koder Stack: TLS suites, kzip, Koder ID, key management, SDK uniformizado |
Convenções
Citação de fonte
- *aper acadêmico* tÃtulo completo, autores, ano, venue (CRYPTOEUROCRYPTASIACRYPTCHESUSENIX SecurityIEEE S&PCCSNDSS), DOI ou eprint IACR (`eprint.iacr.orgYYYY/NNN`).
- *FC*
RFC NNNN — TÃtulo, com linkdatatracker.ietf.org/doc/html/rfcNNNN. - *IST*
FIPS PUB NouSP 800-NN, linkcsrc.nist.gov. - *VE* formato
CVE-YYYY-NNNNNcom NVD ou breve descrição. - *adrão IECISO* `ISOIEC NNNNN`.
O que SEMPRE incluir
- Datas exatas quando conhecidas (mês/ano).
- Tamanhos de chaveblocosaÃda em bits.
- Status atual: ativo, deprecated, broken, embargado.
- Recomendação prática quando aplicável: "use", "evite", "proibido em FIPS após 2030".
O que NUNCA fazer
- Inventar atribuições históricas (se a data exata não for sabida, escrever "década de NN" ou "circa AAAA").
- Atribuir um algoritmo a um único autor quando há equipe ou disputa de prioridade.
- Confundir cipher (algoritmo) com mode (modo de operação) com construction (esquema completo).
- Misturar key length com block length com security level.
Notação consistente
| SÃmbolo | Significado |
|---|---|
| \(E_k(P)\) | encryption: chave \(k\), plaintext \(P\) |
| \(D_k(C)\) | decryption: chave \(k\), ciphertext \(C\) |
| \(H(m)\) | hash de \(m\) |
| \(text{MAC}_k(m)\) | tag MAC de \(m\) com chave \(k\) |
| \(|m|\) | tamanho em bits de \(m\) |
| \(oplus\) | XOR |
| \(\|\) | concatenação |
| \(lambda\) | parâmetro de segurança |
| \(text{negl}(lambda)\) | função negligÃvel em \(lambda\) |
Roadmap de leitura
Para iniciante absoluto
02-fundamentos.md— princÃpios e vocabulário03-classica.md— intuição histórica04-simetrica.md§AES, §ChaCha2006-hash-e-mac.md§SHA-2, §HMAC, §Argon207-protocolos.md§TLS 1.3
Para implementador de produto
04-simetrica.md§AEAD (GCM/Poly1305)05-assimetrica.md§Curve25519, §EdDSA06-hash-e-mac.md§HKDF, §Argon207-protocolos.md§Noise, §Signal Protocol11-ataques.md§implementação14-koder-aplicada.md
Para arquiteto de segurança
08-pos-quantica.md— migração inevitável09-confidential-computing.md— defesa contra hardware adversário13-incidentes.md— aprender com erros alheios11-ataques.md— modelo de ameaça completo
Para pesquisador
- Tudo, na ordem.
Atualizações
Este compendium deve ser atualizado quando:
- Novo padrão NISTIETF é finalizado (ex.: ML-KEM viraria FIPS 203 em ago2024).
- CVE crÃtico em algoritmo/protocolo amplamente usado (ex.: ROCA, Heartbleed).
- Quebra criptanalÃtica relevante (ex.: SHA
1 collision em 2017, MD5 chosenprefix em 2008). - Novo paper de side-channel/fault attack contra implementação mainstream.
- Decisão arquitetural na Koder Stack que afete
14-koder-aplicada.md.
Histórico de updates rastreado em git log -- meta/context/compendiums/cryptography/.