PureBasic
PureBasic
Convert RSA Private Key to Public Key
See more RSA Examples
Demonstrates how to get a public RSA key from a private RSA key.Chilkat PureBasic Downloads
IncludeFile "CkPublicKey.pb"
IncludeFile "CkPrivateKey.pb"
Procedure ChilkatExample()
success.i = 0
privKey.i = CkPrivateKey::ckCreate()
If privKey.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
; Step 1: Load the private key from a source.
; (Chilkat can load private keys from all types of formats, and from in-memory bytes or encoded strings.
; see the online reference documentation for more options.)
success = CkPrivateKey::ckLoadPemFile(privKey,"qa_data/pem/VP_Private.pem")
If success = 0
Debug CkPrivateKey::ckLastErrorText(privKey)
CkPrivateKey::ckDispose(privKey)
ProcedureReturn
EndIf
; Step 2: Get the public key object from the private key object.
pubKey.i = CkPublicKey::ckCreate()
If pubKey.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
CkPrivateKey::ckToPublicKey(privKey,pubKey)
; Step 3: Save the public key in a desired format.
; (Chilkat can load or save public and private keys in many different formats. See
; the online reference documentation for more options.)
; Saves to a PKCS8 PEM file.
bPreferPkcs1.i = 0
success = CkPublicKey::ckSavePemFile(pubKey,bPreferPkcs1,"qa_data/pem/VP_Public.pem")
If CkPublicKey::ckLastMethodSuccess(pubKey) = 0
Debug CkPublicKey::ckLastErrorText(pubKey)
CkPrivateKey::ckDispose(privKey)
CkPublicKey::ckDispose(pubKey)
ProcedureReturn
EndIf
Debug "Extracted and saved public key from private key."
CkPrivateKey::ckDispose(privKey)
CkPublicKey::ckDispose(pubKey)
ProcedureReturn
EndProcedure