2012-05-19 6 views
5

Ich verwende die .NET-Version von BouncyCastle, und ich muss einen privaten RSA-Schlüssel in Datei speichern, offensichtlich aus Sicherheitsgründen mit einem Kennwort verschlüsselt.Verschlüsseln eines privaten Schlüssels mit BouncyCastle

Was ich jetzt versuchen, ist dies:

Dim rand As New SecureRandom 
    Dim arr As Byte() = New Byte(7) {} 
    rand.NextBytes(arr) 

    Dim privateKeyInfo As EncryptedPrivateKeyInfo = EncryptedPrivateKeyInfoFactory.CreateEncryptedPrivateKeyInfo(
"PBEwithHmacSHA-256", 
Repository.Password.ToCharArray, 
arr, 
1, 
data.BouncyCastlePrivateKey 
) 

Aber BouncyCastle ist thwrowing eine Nullreferenceexception auf dem letzten Befehl. Da das Verfahren völlig undokumentiert> :(Ich frage mich, ob jemand von euch wissen, wie es richtig verwenden ...

(keine meiner Parametern durch die Art und Weise NULL ist, bereits überprüft, dass)

+1

Leider gibt es wenig Dokumentation.Die gute Nachricht ist, dass die Quelle meiner Meinung nach sehr lesbar ist und ich ermutige Sie, es zu lesen.Es ist auch eng parallel zur Java-Version Das hat ein kleines bisschen mehr Dokumentation. –

Antwort

3

Die besondere PBE Algorithmus wird nicht funktionieren. Versuchen Sie stattdessen: "PBEwithSHA-1and3-keyDESEDE-CBC"

+0

Danke Mann, das hat perfekt funktioniert! –

Verwandte Themen