Sample code for 30+ languages & platforms
Unicode C++

Example: Crypt2.GenRandomBytesENC method

Shows how to use the GenRandomBytesENC method to generate a specified number of random bytes and return them as a binary encoded string, such as in base64 or hex format.

Chilkat Unicode C++ Downloads

Unicode C++
#include <CkCrypt2W.h>

void ChilkatSample(void)
    {
    CkCrypt2W crypt;

    //  Example of a some of the binary encodings supported by Chilkat.

    //  Internally uses the Fortuna cryptographically secure random number generation algorithm
    //  auto-seeded from a secure source of entropy that depends on the OS.

    crypt.put_EncodingMode(L"hex");
    const wchar_t *s = crypt.genRandomBytesENC(8);
    wprintf(L"Uppercase Hex: %s\n",s);

    crypt.put_EncodingMode(L"hex_lower");
    s = crypt.genRandomBytesENC(8);
    wprintf(L"Lowercase Hex: %s\n",s);

    crypt.put_EncodingMode(L"base64");
    s = crypt.genRandomBytesENC(8);
    wprintf(L"Base64: %s\n",s);

    crypt.put_EncodingMode(L"base64url");
    s = crypt.genRandomBytesENC(8);
    wprintf(L"Base64Url: %s\n",s);

    crypt.put_EncodingMode(L"base58");
    s = crypt.genRandomBytesENC(8);
    wprintf(L"Base58: %s\n",s);

    crypt.put_EncodingMode(L"base32");
    s = crypt.genRandomBytesENC(8);
    wprintf(L"Base32: %s\n",s);

    crypt.put_EncodingMode(L"decList");
    s = crypt.genRandomBytesENC(8);
    wprintf(L"Decimal List: %s\n",s);

    //  Sample Output:

    //  Uppercase Hex: 1BA0E87915C3B429
    //  Lowercase Hex: 1e1638a1c7996c58
    //  Base64: 1lV0I/su5lg=
    //  Base64Url: Zq7DU0nukLk
    //  Base58: foUVWUjAT6e
    //  Base32: LHV5RV4HRCLW2===
    //  Decimal List: 168,55,214,82,93,154,191,164
    }