Sto sviluppando un'applicazione Win32 e vorrei utilizzare una libreria di crittografia RSA. Quale libreria consiglieresti?Libreria di crittografia RSA per C++
risposta
Io uso la seguente libreria:
http://www.efgh.com/software/rsa.htm
È di dominio pubblico, compatto, autonomo e fa il lavorare bene.
Penso che OpenSSL sia una buona scelta. E 'ben mantenuto, e il prezzo è giusto :)
Se stai usando Win32, perché non è sufficiente utilizzare il cripto-API built-in win32?
Ecco un piccolo esempio di come funziona in pratica:
http://www.codeproject.com/KB/security/EncryptionCryptoAPI.aspx
Non sembra essere C++ per uno. – dvorak
L'API Win è in C, che è immediatamente utilizzabile in un programma C++. – KTC
Sì. Se preferisci un'interfaccia C++, scrivici attorno a te un wrapper. Può essere comunque una buona idea solo nel caso in cui successivamente si desideri modificare l'API. –
In alternativa, prendere in considerazione LibTomCrypt (http://libtomcrypt.com/download.html)
È scritta in C ed è immediatamente utilizzabile in un programma C++. – KTC
Crypto++ - Hanno dll convalidati da NIST FIPS per MSVC 6, 7.1 e 8 in aggiunta ai normali pacchetti compilati dal codice sorgente.
non c'è dubbio per me, il sigillo di approvazione NIST significa molto. La crittografia non è una di quelle cose con cui vuoi scherzare: devi essere certo che sia implementata correttamente e non abbia buchi di sicurezza. –
Un'altra alternativa è libbeecrypt. Un prodotto molto maturo con implementazioni assembler su molte piattaforme.
Ho usato OpenSSL in passato e l'ho trovato un'ottima libreria per le API crittografiche tra cui AES, RSA, 3DES.
Forse Botan è un'alternativa? È una libreria C++ con una licenza BSD che supporta gli algoritmi RSA.
Consiglierei la libreria Miracl https://certivox.com/solutions/miracl-crypto-sdk/ ma il prezzo è elevato.
- 1. RSA Crittografia dei grandi dati in C#
- 2. Dimensione uscita crittografia RSA
- 3. Libreria per implementazione RSA in puro C
- 4. Port RSA codice di crittografia Java in C#
- 5. Utilizzo di RSA in C#
- 6. crittografia RSA, ottenendo cattivo lunghezza
- 7. Qt supporta la crittografia RSA?
- 8. C# BouncyCastle - Crittografia RSA con chiavi pubbliche/private
- 9. crittografia RSA in Java, decriptare in PHP
- 10. Crittografia con chiave privata RSA in Java
- 11. Quanti numeri primi ci sono (disponibile per la crittografia RSA)?
- 12. Libreria di crittografia bidirezionale Java
- 13. Modulo di crittografia Erlang - ECDSA, RSA, SHA256 e così via
- 14. C# Criptaggio/decodifica RSA con trasmissione
- 15. errore di riempimento quando si utilizza RSA di crittografia in C# e la decrittografia in Java
- 16. Errore di crittografia Web.config
- 17. Codifica RSA e AES
- 18. Perché la crittografia Java RSA mi fornisce un'eccezione aritmetica?
- 19. La crittografia RSA Java e la decodifica Node.js non funzionano
- 20. porting Java crittografia di routine per C#
- 21. libreria ruby di alto livello per la crittografia
- 22. Esiste una buona libreria di crittografia GnuPG per Java/Scala?
- 23. Conversione di valore chiave RSA non elaborato su SecKeyRef Oggetto per crittografia
- 24. Bisogno di esempio per BouncyCastle PGP Crittografia file in C#
- 25. Librerie di crittografia C++ libere
- 26. Esempi di libreria di crittografia Javascript (SJCL) di Stanford? (Crittografia JS)
- 27. Buona libreria per la crittografia basata sull'abbinamento in Java
- 28. Implementazione di RSA senza allocazione dinamica
- 29. Crittografia privata/pubblica in Python con libreria standard
- 30. Creazione di firme RSA-SHA1 con JavaScript
Questa libreria non utilizza il riempimento. Questa è un'omissione significativa. – Accipitridae
È vero, l'ho migliorato aggiungendolo. Il problema è che ho perso il codice :(.Non era "troppo difficile da aggiungere però ... – Zombies
Utilizza gli intes 16-bit come elementi primitivi. Probabilmente è piuttosto lento sull'hardware moderno. Inoltre, se ho capito bene, usa un'implementazione ingenua per l'operazione pow/mod. Gli algoritmi più veloci esistono ... –