Visual C++ Examples

ChilkatHOMEASPVisual BasicVB.NETC#Visual C++CMFCDelphiFoxProJavaPerlPHPPythonRubySQL ServerVBScript

Visual C++ Examples

CkString
Byte Array
Bounced Mail
Bz2
Character Encoding
CSV
Digital Certificates
Digital Signatures
Email
Encryption
FTP
HTML-to-XML
HTTP
IMAP
MHT / HTML Email
RSA
S/MIME
Socket
Spider
Tar
Upload
XML
XMP
Zip Compression


More Examples...
Email Object
POP3
SMTP
RSS
Atom
Self-Extractor
Service
PPMD
Deflate
DH Key Exchange
DSA
SSH Key
SSH
SSH Tunnel
SFTP

Unreleased...
FileAccess
Bzip2
LZW
Icon

 

 

 

 

 

 

 

 

Generate Psuedo-Random Data using ARC4 as a PRNG

This example demonstrates how to use the ARC4 stream encryption algorithm as a pseudo-random number generator (PRNG). This example generates the random data as hex encoded strings. The EncryptStringENC method can be replaced with EncryptBytes to generate random bytes. Note: This example uses new features available in the pre-release, or any official new version released after 17-October-2007.

Download Chilkat C++ Libraries for VC++ 8.0 / Win32

Download Chilkat C++ Libraries for VC++ 7.0 / Win32

Download Chilkat C++ Libraries for VC++ 6.0 / Win32

#include <CkCrypt2.h>
#include <CkString.h>

void ChilkatSample(void)
    {
    CkCrypt2 crypt;

    bool success;
    success = crypt.UnlockComponent("Anything for 30-day trial");
    if (success != true) {
        printf("Crypt component unlock failed\n");
        return;
    }

    crypt.put_CryptAlgorithm("arc4");
    crypt.put_KeyLength(128);

    crypt.SetEncodedKey("000102030405060708090A0B0C0D0E0F","hex");

    crypt.put_EncodingMode("hex");

    //  We will repeatedly feed these 8-bytes of data to
    //  the ARC4 stream encryptor to generate our pseudo-random
    //  sequence.
    CkString strData;
    strData = "012345678";

    //  Set FirstChunk to true to initialize the ARC4 PRNG with the key.
    crypt.put_FirstChunk(true);
    crypt.put_LastChunk(false);

    CkString encryptedText;
    encryptedText = crypt.encryptStringENC(strData);
    printf("%s\n",(const char *)encryptedText);

    //  Set FirstChunk to false to continue encrypting
    //  without re-initializing the ARC4 PRNG
    crypt.put_FirstChunk(false);

    int i;
    for (i = 1; i <= 15; i++) {
        //  Repeatedly encrypting the same 8 bytes of data
        //  produces then pseudo-random sequence.
        encryptedText = crypt.encryptStringENC(strData);
        printf("%s\n",(const char *)encryptedText);
    }

    }

Need a specific example? Send a request to support@chilkatsoft.com

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

Mail Component · .NET Mail Component · XML Parser