Esistono implementazioni di schemi di impegno crittografico disponibili come API / librerie in Java? Mi sono guardato intorno nel pacchetto sicurezza e non ho trovato molto. Qualsiasi aiuto è apprezzato.
Grazie
C'è una grande varietà di schemi di impegno là fuori; hanno varie caratteristiche. Lo schema di commit più semplice è un semplice hash e Java offre l'implementazione delle funzioni hash più comuni (tramite l'API java.security.MessageDigest
). Schemi di impegno più avanzati consentono di dimostrare che l'impegno è "corretto" (i dati impegnati soddisfano alcune proprietà algebriche) senza aprirlo. Molti di questi schemi sono stati progettati, ma nessuno è uno standard a sé stante, quindi non esiste un'implementazione prontamente disponibile in Java standard.
(Questa è la differenza tra un algoritmo crittografico, come descritto in un articolo accademico, e uno standard: quest'ultimo indica senza ambiguità dove va ogni bit, trattando argomenti noiosi ma importanti come endianness e casi angosciosi.)
Almeno Java offre alcuni strumenti utili per implementare algoritmi crittografici, ovvero BigInteger
e funzioni hash.
Leggi altre domande sui tag java cryptography