Sample code for 30+ languages & platforms
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 C++ Downloads

C++
#include <CkCrypt2.h>

void ChilkatSample(void)
    {
    CkCrypt2 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("hex");
    const char *s = crypt.genRandomBytesENC(8);
    std::cout << "Uppercase Hex: " << s << "\r\n";

    crypt.put_EncodingMode("hex_lower");
    s = crypt.genRandomBytesENC(8);
    std::cout << "Lowercase Hex: " << s << "\r\n";

    crypt.put_EncodingMode("base64");
    s = crypt.genRandomBytesENC(8);
    std::cout << "Base64: " << s << "\r\n";

    crypt.put_EncodingMode("base64url");
    s = crypt.genRandomBytesENC(8);
    std::cout << "Base64Url: " << s << "\r\n";

    crypt.put_EncodingMode("base58");
    s = crypt.genRandomBytesENC(8);
    std::cout << "Base58: " << s << "\r\n";

    crypt.put_EncodingMode("base32");
    s = crypt.genRandomBytesENC(8);
    std::cout << "Base32: " << s << "\r\n";

    crypt.put_EncodingMode("decList");
    s = crypt.genRandomBytesENC(8);
    std::cout << "Decimal List: " << s << "\r\n";

    //  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
    }