FoxPro Examples

ChilkatHOMEAndroid™ASPVisual BasicVB.NETC#iOS (IPhone)Objective-CC++CMFCDelphiFoxProJavaPerl
PHP ExtensionPHP ActiveXPythonPowerShellRubySQL ServerVBScript

Visual FoxPro Examples

Bounced Mail
Bz2
Character Encoding
CSV
Digital Certificates
Digital Signatures
Email
Email Object
FTP
HTML Conversion
HTTP
IMAP
Encryption
MHT / HTML Email
POP3
RSA
S/MIME
Socket
Spider
SFTP
SMTP
SSH
SSH Key
SSH Tunnel
String
Tar
Upload
XML
XMP
Zip Compression
Self-Extractor

More Examples...
Amazon S3
DKIM / DomainKey
NTLM
RSS
Atom
Byte Array
Service
PPMD
Deflate
DH Key Exchange
DSA
FileAccess
Bzip2
LZW

 

Non-Chilkat Links
Text and String Handling

Generate RSA Key and Sign a String

Demonstrates how to generate a new RSA public/private key pair and use it to generate a signature for a string. The (binary) digital signature is returned as a hexidecimalized string.

Download 32-bit Chilkat RSA ActiveX (.msi)

Download All 32-bit Chilkat ActiveX Components (.zip)

Download All 64-bit Chilkat ActiveX Components (.zip)

LOCAL loRsa
LOCAL lnSuccess
LOCAL lcStrData
LOCAL lcHexSig

loRsa = CreateObject('Chilkat.Rsa')

*  Any string argument automatically begins the 30-day trial.

lnSuccess = loRsa.UnlockComponent("30-day trial")
IF (lnSuccess <> 1) THEN
    =MESSAGEBOX("RSA component unlock failed")
    QUIT
ENDIF

*  Generate a 1024-bit RSA key pair.
loRsa.GenerateKey(1024)

*  This example will sign a string, and receive the signature
*  in a hex-encoded string.  Therefore, set the encoding mode
*  to "hex":
loRsa.EncodingMode = "hex"

*  If some other non-Chilkat application or web service is going to be verifying
*  the signature, it is important to match the byte-ordering.
*  The LittleEndian property may be set to 1
*  for little-endian byte ordering,
*  or 0  for big-endian byte ordering.
*  Microsoft apps typically use little-endian, while
*  OpenSSL and other services (such as Amazon CloudFront)
*  use big-endian.
loRsa.LittleEndian = 0

lcStrData = "This is the string to be signed."

*  Sign the string using the  md5 hash algorithm.
*  Other valid choices are "md2", "sha256", "sha384",
*  "sha512", and "sha-1".

lcHexSig = loRsa.SignStringENC(lcStrData,"md5")

? lcHexSig
? loRsa.LastErrorText

*  Now verify the signature:
lnSuccess = loRsa.VerifyStringENC(lcStrData,"md5",lcHexSig)
IF (lnSuccess = 1) THEN
    =MESSAGEBOX("Signature verified!")
ELSE
    ? loRsa.LastErrorText
ENDIF

*  Try it with an invalid signature:
lnSuccess = loRsa.VerifyStringENC(lcStrData,"md5","not a valid sig")
IF (lnSuccess = 1) THEN
    =MESSAGEBOX("Signature verified!")
ELSE
    ? loRsa.LastErrorText
ENDIF

*  Try it with invalid data:
lnSuccess = loRsa.VerifyStringENC("Not the original data","md5",lcHexSig)
IF (lnSuccess = 1) THEN
    =MESSAGEBOX("Signature verified!")
ELSE
    ? loRsa.LastErrorText
ENDIF

*  Try it with the wrong hash algorithm:
lnSuccess = loRsa.VerifyStringENC(lcStrData,"sha-1",lcHexSig)
IF (lnSuccess = 1) THEN
    =MESSAGEBOX("Signature verified!")
ELSE
    ? loRsa.LastErrorText
ENDIF

© 2000-2010 Chilkat Software, Inc. All Rights Reserved.

Mail Component · .NET Email Component · ASP Mail Component · XML Parser