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 <C_CkCrypt2.h>

void ChilkatSample(void)
    {
    HCkCrypt2 crypt;
    const char *s;

    crypt = CkCrypt2_Create();

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

    CkCrypt2_putEncodingMode(crypt,"hex");
    s = CkCrypt2_genRandomBytesENC(crypt,8);
    printf("Uppercase Hex: %s\n",s);

    CkCrypt2_putEncodingMode(crypt,"hex_lower");
    s = CkCrypt2_genRandomBytesENC(crypt,8);
    printf("Lowercase Hex: %s\n",s);

    CkCrypt2_putEncodingMode(crypt,"base64");
    s = CkCrypt2_genRandomBytesENC(crypt,8);
    printf("Base64: %s\n",s);

    CkCrypt2_putEncodingMode(crypt,"base64url");
    s = CkCrypt2_genRandomBytesENC(crypt,8);
    printf("Base64Url: %s\n",s);

    CkCrypt2_putEncodingMode(crypt,"base58");
    s = CkCrypt2_genRandomBytesENC(crypt,8);
    printf("Base58: %s\n",s);

    CkCrypt2_putEncodingMode(crypt,"base32");
    s = CkCrypt2_genRandomBytesENC(crypt,8);
    printf("Base32: %s\n",s);

    CkCrypt2_putEncodingMode(crypt,"decList");
    s = CkCrypt2_genRandomBytesENC(crypt,8);
    printf("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


    CkCrypt2_Dispose(crypt);

    }