Per prima cosa non sono un esperto di crittografia, tuttavia so come usare algoritmi che altre persone hanno definito prima in usi pratici, cioè, fino a quando mantengono le loro promesse.
Il fatto è che ho bisogno di alcune utilità:
- Genera una coppia di chiavi pubbliche / private di lunghezza x, prendile come binari; ed essere in grado di elaborare il contenuto con esso.
- Alcuni algoritmi di hashing che consumano molta memoria e impiegano tempo; Non ho bisogno di velocità, ho bisogno di sicurezza. (Sono abbastanza sicuro che useranno password stupide)
- Un algoritmo di crittografia simmetrica che genera testo cifrato basato su una password (hash) che deve essere abbastanza strong.
Le mie risposte correnti sono state:
- Algoritmi RSA OpenSSL.
- Scrypt (pensando di passare a argon2 a causa dell'ottima documentazione e dei wrapper)
- OpenSSL AES CBC
Ma poi vai qua e là su internet e loro dicono che lo scrypt è rotto, usa bcrypt, no argon2 https://github.com/P-H-C/phc-winner-argon2
è la cosa nuova, OpenSSL ha bug di sicurezza, usa meglio LibreSSL, non usa libsodium. ecc ... ecc ...
Quindi quali sono le opzioni migliori? ... Ho bisogno di proteggere i dati altamente sensibili.
Probabilmente userò anche i wrapper Node.js perché ho bisogno di risultati rapidi, dato che ho bisogno di fare una dimostrazione.