Main Page | Modules | File List | File Members

# GSCryptoInterface.h File Reference

Interface ubi.com's cryptographic library. More...

`#include "GSTypes.h"`
`#include "GSCryptoDefines.h"`

Go to the source code of this file.

## Functions
GSbool | InitializeCrypto ()
| Initialize library.
GSvoid | UninitializeCrypto ()
| Uninitialize library.
GSbool | GenerateRawHash (GSCRYPTO_HASH_ALGO eAlgo, const GSubyte *pucInBuffer, GSuint uiBufferSize, GSubyte *pucOutBuffer, GSuint uiIterations=1)
| Generate binary hash.
GSbool | GenerateHexaHash (GSCRYPTO_HASH_ALGO eAlgo, const GSubyte *pucInBuffer, GSuint uiBufferSize, GSchar *pszOutBuffer, GSuint uiIterations=1)
| Generate hexadecimal hash.
GShandle | InitializeHash (GSCRYPTO_HASH_ALGO eAlgo)
| Initialize the hash context.
GSbool | UpdateHash (GShandle hHash, const GSubyte *pucInBuffer, GSuint uiBufferSize, GSuint uiIterations=1)
| Update the internal hash context.
GSbool | TerminateRawHash (GShandle hHash, GSubyte *pucOutBuffer)
| Terminate the hash context, output binary hashed result.
GSbool | TerminateHexaHash (GShandle hHash, GSchar *pszOutBuffer)
| Terminate the hash context, output hexadecimal hashed result.
GSbool | ResetHash (GShandle hHash)
| Reset the hash module.
GSvoid | UninitializeHash (GShandle hHash)
| Uninitiaze the hash module.
GShandle | StartNumberGenerator (GSCRYPTO_PRNG_ALGO eAlgo, GSCRYPTO_HASH_ALGO eHash, const GSubyte *pucSeed, GSuint uiSeedSize)
| Initialize the pseudo-random number generator.
GSvoid | StopNumberGenerator (GShandle hPRNG)
| Uninitiaze the pseudo-random number generator.
GSubyte | GenerateBit (GShandle hPRNG)
| Generate random bit.
GSubyte | GenerateByte (GShandle hPRNG)
| Generate random byte.
GSulong | GenerateNumber (GShandle hPRNG, GSulong ulMax=(GSulong)-1, GSulong ulMin=0)
| Generate random number.
GSvoid | GenerateBlock (GShandle hPRNG, GSubyte *pucBlock, GSuint uiBlockSize)
| Generate random array of bytes.
GShandle | InitializeCipher (GSCRYPTO_CIPHER_ALGO eAlgo, const GSubyte *ucKey, GSuint uiKeyLength)
| Initialize the encryption module.
GSvoid | UninitializeCipher (GShandle hCipher)
| Uninitialize the encryption module.
GSbool | ResetKey (GShandle hCipher, const GSubyte *ucKey, GSuint uiKeyLength)
| Reset the encryption key.
GSbool | Encrypt (GShandle hCipher, const GSvoid *pInputBuffer, GSuint uiInBufferLength, GSvoid *pOutputBuffer, GSuint *puiOutBufferLength)
| Encrypt a data buffer.
GSbool | Decrypt (GShandle hCipher, const GSvoid *pInputBuffer, GSuint uiInBufferLength, GSvoid *pOutputBuffer, GSuint *puiOutBufferLength)
| Decrypt a data buffer.
GShandle | InitializePKC (GSCRYPTO_PKC_ALGO eAlgo)
| Initialize the hash context.
GSvoid | UninitializePKC (GShandle hPKC)
| Uninitiaze the hash module.
GSbool | RandomInit (GShandle hPKC, RANDOM_STRUCT *pRandomData)
GSbool | RandomUpdate (GShandle hPKC, RANDOM_STRUCT *pRandomData, GSubyte *block, GSuint blockLen)
GSvoid | RandomFinal (GShandle hPKC, RANDOM_STRUCT *pRandomData)
GSint | GetRandomBytesNeeded (GShandle hPKC, GSuint *bytesNeeded, RANDOM_STRUCT *pRandomData)
GSbool | GenerateKeyPair (GShandle hPKC, RSA_PUBLIC_KEY *pPublicKey, RSA_PRIVATE_KEY *pPrivateKey, RSA_PROTO_KEY *pProtoKey, RANDOM_STRUCT *pRandomData)
GSbool | PublicEncrypt (GShandle hPKC, GSubyte *pInputBuffer, GSuint uiInputBufferLength, GSubyte *pOutputBuffer, GSuint *pOutputBufferLength, RSA_PUBLIC_KEY *pPublicKey, RANDOM_STRUCT *pRandomData)
GSbool | PrivateEncrypt (GShandle hPKC, GSubyte *pInputBuffer, GSuint uiInputBufferLength, GSubyte *pOutputBuffer, GSuint *pOutputBufferLength, RSA_PRIVATE_KEY *pPrivateKey)
GSbool | PublicDecrypt (GShandle hPKC, GSubyte *pInputBuffer, GSuint uiInputBufferLength, GSubyte *pOutputBuffer, GSuint *pOutputBufferLength, RSA_PUBLIC_KEY *pPublicKey)
GSbool | PrivateDecrypt (GShandle hPKC, GSubyte *pInputBuffer, GSuint uiInputBufferLength, GSubyte *pOutputBuffer, GSuint *pOutputBufferLength, RSA_PRIVATE_KEY *pPrivateKey)

## Detailed Description

This interface provides one-way hash, synchronous block cipher and pseudo-random number generator functionality to be use along with the ubi.com crypto interface.

## Function Documentation

GSbool InitializeCrypto | ( |  | ) |

  | Description: Initialize library Returns: Status of the function call Return values:
  GS_TRUE | the operation suceeded.
  GS_FALSE | the operation failed.

GSvoid UninitializeCrypto | ( |  | ) |

| Description: Uninitialize library Returns: void

Ubi.com GameService SDK - ©UbiSoft Entertainment 2002
GameService development team