documentation

ADR-0003 — libsodium pour toute signature financière

StatutAccepté
Date2025-09-15
AuteursJulien Jorry

Contexte

Les primitives openssl_* de PHP imposent des choix de courbes, paddings et formats (PEM, DER, PKCS#1, PKCS#8) qui sont historiquement source de vulnérabilités (padding oracle, courbes faibles, mauvais nonce). libsodium fournit des APIs misuse-resistant : une seule signature (Ed25519), un seul chiffrement authentifié (XChaCha20-Poly1305), pas de choix possible de paramètres dangereux. Kohinos a besoin de signer chaque Operation pour le hash chain et de chiffrer les IBAN.

Décision

libsodium uniquement pour toute primitive cryptographique financière : signatures (Ed25519), chiffrement symétrique authentifié (XChaCha20-Poly1305 / secretbox), KDF (Argon2id), hash (BLAKE2b ou SHA-256 selon contexte).

Conséquences positives

Conséquences négatives

Alternatives examinées

Références