Visual FoxPro
Visual FoxPro
RSA Sign using Base64 Private Key
See more RSA Examples
Signs a string using a non-encrypted RSA private key in base64 encoding. Returns the RSA signature as a base64 string.Chilkat Visual FoxPro Downloads
LOCAL lnSuccess
LOCAL loPrivKey
LOCAL loSbPem
LOCAL loRsa
LOCAL loBd
LOCAL lcStrOriginal
lnSuccess = 0
* This requires the Chilkat API to have been previously unlocked.
* See Global Unlock Sample for sample code.
loPrivKey = CreateObject('Chilkat.PrivateKey')
loSbPem = CreateObject('Chilkat.StringBuilder')
loSbPem.AppendLine("-----BEGIN RSA PRIVATE KEY-----",1)
loSbPem.AppendLine("MIIC .... j5A==",1)
loSbPem.AppendLine("-----END RSA PRIVATE KEY-----",1)
lnSuccess = loPrivKey.LoadPem(loSbPem.GetAsString())
IF (lnSuccess = 0) THEN
? loPrivKey.LastErrorText
RELEASE loPrivKey
RELEASE loSbPem
CANCEL
ENDIF
loRsa = CreateObject('Chilkat.Rsa')
lnSuccess = loRsa.UsePrivateKey(loPrivKey)
IF (lnSuccess = 0) THEN
? loRsa.LastErrorText
RELEASE loPrivKey
RELEASE loSbPem
RELEASE loRsa
CANCEL
ENDIF
loBd = CreateObject('Chilkat.BinData')
loBd.AppendString("12345678","utf-8")
lnSuccess = loRsa.SignRawBd(loBd)
IF (lnSuccess = 0) THEN
? loRsa.LastErrorText
RELEASE loPrivKey
RELEASE loSbPem
RELEASE loRsa
RELEASE loBd
CANCEL
ENDIF
* Get the base64 RSA signature.
? loBd.GetEncoded("base64")
lnSuccess = loRsa.VerifyRawBd(loBd)
IF (lnSuccess = 0) THEN
? loRsa.LastErrorText
RELEASE loPrivKey
RELEASE loSbPem
RELEASE loRsa
RELEASE loBd
CANCEL
ENDIF
lcStrOriginal = loBd.GetString("utf-8")
? lcStrOriginal
RELEASE loPrivKey
RELEASE loSbPem
RELEASE loRsa
RELEASE loBd