CryptoSys PKI Pro Manual

Example: Rsa.KeyBits  Rsa.KeyHashCode  Rsa.ReadPrivateKey  Rsa.SaveEncPrivateKey 

[VB6 equivalent: RSA_SaveEncPrivateKey]

Dim strPriFile As String
Dim strEPKFile As String
Dim strPrivateKey As String
Dim strPK1 As String
Dim nRet As Integer

strPriFile = "CarlPrivRSASign.pri"

' Read in Carl's unencrypted PrivateKeyInfo data
strPrivateKey = Rsa.ReadPrivateKey(strPriFile, "").ToString()
If strPrivateKey.Length = 0 Then
    Console.WriteLine("Failed to read Private Key file")
    Exit Sub
End If
Console.WriteLine("Private key length is " & Rsa.KeyBits(strPrivateKey) & " bits")

' Now save it in PKCS#8 encrypted form with a password
strEPKFile = "CarlPrivRSASign.p8e"
nRet = Rsa.SaveEncPrivateKey(strEPKFile, strPrivateKey, 1000, "password", 0, 0)
Console.WriteLine("Rsa.SaveEncPrivateKey returns " & nRet & " (expected 0)")

' Check we can read it 
strPK1 = Rsa.ReadPrivateKey(strEPKFile, "password").ToString()
If strPK1.Length > 0 Then
    Console.WriteLine("Encrypted private key is " & Rsa.KeyBits(strPK1) & " bits")
Else
    Console.WriteLine("Unable to read encrypted private key")
End If

' To compare these strings, use the RSA_KeyHashCode function
Console.WriteLine("HashCode(original prikeyinfo) ={0,8:X}", Rsa.KeyHashCode(strPrivateKey))
Console.WriteLine("HashCode(encrypted prikeyinfo)={0,8:X}", Rsa.KeyHashCode(strPK1))
If Rsa.KeyHashCode(strPK1) = Rsa.KeyHashCode(strPrivateKey) Then
    Console.WriteLine("OK, Key string values match.")
Else
    Console.WriteLine("ERROR: key strings do not match.")
End If

See Also:
Rsa.SaveEncPrivateKey Method (String, String, Int32, String, CipherAlgorithm, HashAlgorithm, Rsa.Format)
Rsa.SaveEncPrivateKey Method (String, String, Int32, String, Rsa.PbeOptions, Rsa.Format)

[Contents] [Index]

[PREV: Example: Rsa.KeyHashCode ...]   [Contents]   [Index]   
   [NEXT: Example: Rsa.Format ...]

Copyright © 2004-23 D.I. Management Services Pty Ltd. All rights reserved. Generated 2023-09-18T10:02:53Z.