2012-05-19 96 views
5

我使用的是BouncyCastle的.NET版本,爲了安全起見,我必須將私鑰RSA密鑰保存到文件,明顯使用密碼加密。使用BouncyCastle加密私鑰

我想要,現在是這樣的:

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 
) 

但BouncyCastle的是thwrowing上的最後一個指令一個NullReferenceException。由於該方法是完全無證> :(我不知道任何你知道如何正確使用它...

(沒有我的參數是NULL的方式,已經檢查過)

+1

不幸的是,很少有文檔,好消息是源代碼在我看來是非常可讀的,我鼓勵你閱讀它,並且它與Java版本非常相似其中有一點點文檔。 –

回答

3

這個特定的PBE算法不起作用,試試這個吧:"PBEwithSHA-1and3-keyDESEDE-CBC"

+0

謝謝你,這工作完美! –