PureBasic
PureBasic
Load a Public Key from BinData
Demonstrates the Chilkat PublicKey.LoadBd method, which loads a public key from the bytes in a BinData. The only argument is the BinData, which may contain binary DER or any textual representation recognized by LoadFromString.
Note: The file paths are relative to the application's current working directory. Absolute paths may also be used. Supply the paths appropriate to your own environment.
Background: When key bytes are already in memory — downloaded, extracted from a container, or pulled from a database — this loads them directly with no temporary file. It applies the same content inspection as the string and file loaders, so it accepts both binary DER and any recognized text form. It is the in-memory counterpart to
LoadFromFile.Chilkat PureBasic Downloads
IncludeFile "CkBinData.pb"
IncludeFile "CkPublicKey.pb"
Procedure ChilkatExample()
success.i = 0
; Demonstrates the PublicKey.LoadBd method, which loads a public key from the bytes in a BinData.
; The only argument is the BinData, which may contain binary DER or any textual representation
; recognized by LoadFromString.
bd.i = CkBinData::ckCreate()
If bd.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
success = CkBinData::ckLoadFile(bd,"qa_data/public.der")
If success = 0
Debug CkBinData::ckLastErrorText(bd)
CkBinData::ckDispose(bd)
ProcedureReturn
EndIf
pubKey.i = CkPublicKey::ckCreate()
If pubKey.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
success = CkPublicKey::ckLoadBd(pubKey,bd)
If success = 0
Debug CkPublicKey::ckLastErrorText(pubKey)
CkBinData::ckDispose(bd)
CkPublicKey::ckDispose(pubKey)
ProcedureReturn
EndIf
Debug "Loaded a " + CkPublicKey::ckKeyType(pubKey) + " public key."
CkBinData::ckDispose(bd)
CkPublicKey::ckDispose(pubKey)
ProcedureReturn
EndProcedure