Parte V · 3 — Disciplina e postura
A criptografia da Stack não é correta por sorte — é correta porque há um único lugar onde ela vive, uma postura que a guia, e a agilidade para trocar o que precisar. Este é o fecho do compêndio: do como ao como manter.
3.1 koder_kit: um só ponto de estrangulamento
A lição central da Parte I — trabalhe na camada mais alta; nunca monte primitivas à mão — vira código no engines/sdk/koder_kit. Toda a criptografia da Stack passa por ele (policies/reuse-first.kmd); nenhum módulo reimplementa:
| API do SDK | O que entrega |
|---|---|
crypto.aead |
ChaCha20-Poly1305 + AES-GCM, nonce gerido com segurança |
crypto.sign |
Ed25519 (default) e ML-DSA-65 (PQC, planejado) |
crypto.kex |
X25519 + X25519MLKEM768 híbrido |
crypto.hash |
SHA-256/384, BLAKE3 |
crypto.kdf |
HKDF, Argon2id |
crypto.random |
wrapper do CSPRNG |
crypto.constant_time |
comparação sem canal lateral |
O ponto decisivo é a API resistente a mau uso: expõe seal(key, plaintext,
ad) e open(key, ciphertext, ad) — e não expõe ECBCBCCTR crus, escolha de nonce manual nem "cifrar sem autenticar". O erro mais comum da Parte II é tornado impossível por construção: não há como pedir o caminho inseguro.
Como corolário, dependências criptográficas diretas são proibidas em código de produção: o módulo chama o SDK, não a biblioteca de baixo nível. Um só lugar para auditar, atualizar e migrar.
3.2 Postura: self-hosted e multi-tenant
Duas políticas moldam toda decisão:
- Self-hosted first (
policies/self-hosted-first.kmd) — nada de SaaS deterceiro em caminho crypto-crítico quando há alternativa Koder ou OSS auditável. A confiança não se terceiriza.
- Multi-tenant by default (
policies/multi-tenant-by-default.kmd) — oisolamento por tenant é premissa, não recurso adicionado depois.
3.3 Agilidade: pronta para a próxima troca
Porque o SDK é o ponto único, a Stack tem agilidade criptográfica de graça (Parte IV): adicionar ML-DSA-65 ao crypto.sign ou o híbrido pós-quântico ao crypto.kex é mudança em um lugar, propagada a todos os consumidores. A migração PQC — que em sistemas chumbados é reescrita — aqui é configuração. Foi por isso que o X25519MLKEM768 já está em piloto no TLS e no SSH.
3.4 O retrato completo
O arco fecha. Cada decisão de engenharia da Koder Stack é uma primitiva escolhida de propósito:
| Necessidade Koder | Primitiva/protocolo | Parte |
|---|---|---|
| Provar identidade (JWT, passkey) | Ed25519, WebAuthn | I, II |
| Proteger a conexão (web, git) | TLS 1.3, SSH — AEAD + KEX + assinatura | II, III |
| Resistir ao quântico | X25519MLKEM768, ML-DSA-65 | IV |
| Cifrar arquivos e backups | AEAD (kzip) | II |
| Guardar chaves | HSM, HKDF, Shamir | II |
| Não errar na implementação | koder_kit (API misuse-resistant) | I |
Da intuição (Parte I) às primitivas (II), aos protocolos (III), ao futuro pós-quântico (IV), até o código que roda em produção: a criptografia da Koder é uma só disciplina, aplicada com consistência. Para o detalhe denso de qualquer ponto, a Parte VIII — Referência é o almanaque.
Fim do arco narrado do Compêndio de Criptografia. As cinco partes cobrem do porquê ao como ao como manter. A camada de referência segue viva e densa para consulta. Próximo domínio do gênero: Blockchain (stack#196).