Sto provando a crittografare i file usando la mia chiave privata (in formato ASCII) e qualsiasi altra chiave pubblica (anche in formato ASCII). La libreria BouncyCastle sembra la cosa giusta da usare, ma non riesco a trovare la documentazione per C#. Qualcuno potrebbe per favore assistermi con un esempio. Grazie.Bisogno di esempio per BouncyCastle PGP Crittografia file in C#
6
A
risposta
12
Ecco un codice dall'esempio BouncyCastle. Dovresti prendere il codice sorgente e cercare i test unitari, contengono esempi. Ho trovato che anche le risorse Java sono utili. L'esempio può essere trovato nella sorgente sotto Crypto \ test \ src \ openpgp \ esempi \ PbeFileProcessor.cs
private static void EncryptFile(
Stream outputStream,
string fileName,
char[] passPhrase,
bool armor,
bool withIntegrityCheck)
{
if (armor)
{
outputStream = new ArmoredOutputStream(outputStream);
}
MemoryStream bOut = new MemoryStream();
PgpCompressedDataGenerator comData = new PgpCompressedDataGenerator(
CompressionAlgorithmTag.Zip);
PgpUtilities.WriteFileToLiteralData(
comData.Open(bOut),
PgpLiteralData.Binary,
new FileInfo(fileName));
comData.Close();
byte[] bytes = bOut.ToArray();
PgpEncryptedDataGenerator cPk = new PgpEncryptedDataGenerator(
SymmetricKeyAlgorithmTag.Cast5, withIntegrityCheck, new SecureRandom());
cPk.AddMethod(passPhrase);
Stream cOut = cPk.Open(outputStream, bytes.Length);
cOut.Write(bytes, 0, bytes.Length);
cOut.Close();
if (armor)
{
outputStream.Close();
}
}
+1
++ Grazie. Stavo riscontrando problemi nel trovare gli esempi. – John
Problemi correlati
- 1. Bouncycastle PGP decifrare e verificare
- 2. Memorizza le chiavi PGP (pubbliche) nel keystore java - Bouncycastle
- 3. Crittografia di una chiave privata con BouncyCastle
- 4. PGP Crittografia e decrittografia con Java
- 5. C# Esempio di crittografia AES256 utilizzando System.Security.Cryptography.Aes
- 6. C# BouncyCastle - Crittografia RSA con chiavi pubbliche/private
- 7. Come crittografare una stringa/stream con bouncycastle pgp senza iniziare con un file
- 8. PGP Encrypt and Decrypt
- 9. Python e PGP/encryption
- 10. Bouncy Castle PGP Decryption Issue
- 11. Accesso al file crittografato pgp in Ruby
- 12. PGP di servizio per .NET Permettere arbitrarie Keys
- 13. ottenere un inizio con BouncyCastle crypto dll C#
- 14. Catena di certificati di build in BouncyCastle in C#
- 15. Hai bisogno di un esempio di UILocalNotifications
- 16. Librerie di crittografia C++ libere
- 17. Come iniziare a utilizzare BouncyCastle?
- 18. porting Java crittografia di routine per C#
- 19. Crittografia di una chiave RSA BouncyCastle Accoppiamento e memorizzazione in un database SQL2008
- 20. Libreria di crittografia RSA per C++
- 21. C# Crittografia in PHP Decryption
- 22. Metodo di crittografia/decrittografia semplice per crittografare un file immagine
- 23. Esempio PyECC - Crittografia curva ellittica Python
- 24. Un esempio di crittografia di un file xml in Java utilizzando il castello rimbalzante
- 25. Il padding RSA PKCS1-OAEP è supportato in bouncycastle?
- 26. Ho bisogno di un esempio di utilizzo Ypsilon
- 27. Problemi nell'integrazione di BouncyCastle Jar
- 28. Bisogno di buon esempio: API di Google Calendar in Javascript
- 29. Port RSA codice di crittografia Java in C#
- 30. Esempio Singleton in C++/CLI?
forse non ci sto capendo PGP in modo corretto, quando si crittografare un file si usa solo pubblico il 3 ° partito chiave? Nessuna parte della tua chiave privata viene utilizzata nel processo, corretta? Se è così, ho bisogno di cambiare la mia domanda in "Esempio: come crittografare con chiave pubblica di terze parti e firmare con chiave privata" –
È così con qualsiasi crittografia asimmetrica: si utilizza la chiave pubblica per la crittografia e la verifica della firma e la chiave privata è usato per la firma e la decrittazione. –