Quello che ho capito è che vuoi
1) Cifra i dati (non vuoi che nessuno ne conosca il contenuto)
2) Fornisci una garanzia, ad es. una prova che proviene da te.
Risposta 1) Per la crittografia dei dati, è possibile utilizzare qualsiasi algoritmo simmetrico o asimmetrico. Ovviamente RSA sarebbe più difficile da violare, allo stesso tempo richiederà più potenza di calcolo per crittografare i dati.
Risposta per 2) Per sicurezza, è possibile utilizzare l'algoritmo asimmetrico delle formiche, di nuovo RSA sarebbe il migliore, MA, la crittografia deve essere eseguita dalla chiave privata (non chiave pubblica, poiché chiunque può utilizzare la chiave pubblica e sarebbe non stabilire il fatto che è stato crittografato da te).
Combinazione di entrambi: puoi utilizzare due cicli di crittografia utilizzando diverse coppie di chiavi. Primo turno (da asimmetrico o simmetrico) per garantire la riservatezza e il secondo turno (per asimmetrico) per garantire la sicurezza.
L'uso di RSA va bene per entrambi i round, ma per ridurre il sovraccarico di calcolo puoi utilizzare anche altri strumenti di crittografia.
o
È possibile calcolare HMAC, aggiungerlo ai dati e crittografarlo utilizzando la chiave pubblica di qualsiasi tecnica di crittografia asimmetrica (come RSA) o chiave di qualsiasi tecnica di crittografia simmetrica. Quello asimmetrico sarebbe più sicuro. HMAC garantirà l'integrità e la sicurezza che proviene da te e i dati crittografati garantirebbero la sua riservatezza.
Quale approccio da seguire, dipende totalmente dalle risorse dell'applicazione e del calcolo.