Card Vault Tokenization Engine. Servicio Rust de tokenización de PANs bajo PCI DSS v4.0.1 + BCRA Com. "A" 7783.
Estado: pre-implementación. Diseño aprobado para construcción (ver
docs/). Sprint 0–2 en curso: bootstrap del workspace + crates públicos (vault-types,vault-crypto,vault-kms-mock).
Toda la decisión de diseño vive en docs/:
docs/rfcs/0001-card-vault-engine.md— RFC maestro.docs/tsd/0001-overall-system.md— TSD maestro (SLOs, deployment, security model).docs/adr/— 16 ADRs (decisiones tomadas).docs/rfcs/— 13 RFCs por componente.docs/tsd/— 11 TSDs por slice/adapter.docs/audits/— reportes de auditoría (ver arnés más abajo).
crates/
├── public/ # Publicables a crates.io con prefix vault-*
│ ├── vault-types/ # Tipos de dominio (TenantId, Token, KekId, Fingerprint, WrappedDek)
│ ├── vault-ports/ # Traits abstractos (KmsPort, VaultRepo, AuditSink)
│ ├── vault-crypto/ # Funciones puras (AES-256-GCM, HMAC-SHA256)
│ └── vault-kms-mock/ # KMS mock para tests externos
└── private/ # No publicables (publish = false)
├── vault-adapters/ # Implementaciones concretas (AWS KMS, Postgres, audit Postgres)
├── vault-features/ # 6 slices: tokenize, detokenize, get_metadata, rewrap_single, batch_rewrap, retire_kek
└── vault-api/ # Servidor axum + ingress + bootstrap
Layout justificado en ADR-0002 (monorepo workspace), ADR-0003 (vertical slice), ADR-0004 (split público/privado), ADR-0016 (naming vault-*).
cargo check --workspace
cargo test --workspace
cargo clippy --workspace --all-targets -- -D warnings
cargo fmt --all
cargo deny check
El repo lleva instalado un arnés de agentes auditores (Claude Code) que valida coherencia de diseño y código:
audit-security,audit-perf,audit-arch— activos (mododocsmientras no haya.rs; pivotea a modocodeautomáticamente).audit-quality— parked hasta primer.rs(decisión humana de activación).audit-orchestrator— paraleliza los 3 dominios y agrega resultado endocs/audits/<fecha>/SUMMARY.md.
Ver AGENTS.md para el contrato compartido del arnés.
- PCI DSS v4.0.1 (efectivo 31 marzo 2025): cláusulas 3.4, 3.5.1, 3.5.1.1, 3.5.1.2, 3.6/3.7, 4.2.1.1, 8.3.1, 8.3.10.1, 10.x.
- BCRA Com. "A" 7783 punto 3.
- Mapeo completo en
docs/rfcs/0001-card-vault-engine.md§"PCI DSS v4.0.1 mapping".
DISCLAIMER: este software es una referencia de implementación bajo guidance PCI DSS v4.0.1 + BCRA Com. "A" 7783. NO está PCI-attested. Usarlo NO confiere compliance automática. PCI compliance requiere QSA on-site assessment de tu deployment específico, SOC 2 / pen testing de tu infra, controles operacionales propios, cyber insurance, y patching continuo — ninguno incluido en este repo. Si lo deployás en producción, asumís total responsabilidad. Ver
LICENSEpara el disclaimer completo.
Licensed under Apache License 2.0 OR MIT (dual license, tu elección):
- LICENSE-APACHE — Apache License 2.0 con patent grant
- LICENSE-MIT — MIT License
- LICENSE — dispatcher + disclaimer completo
- NOTICE — third-party dependency notices
Contribuciones se reciben bajo los mismos términos (Apache-2.0 §5 + DCO 1.1). Ver CONTRIBUTING.md.
Proyecto personal de aprendizaje en desarrollo Rust asistido por IA. Sin afiliación con ninguna organización. Identificadores en tests (naranja_x, meli_pagos) son fixtures sintéticos, no claims de partnership. Ver ADR-0023 para el rationale completo.