mirror of
https://github.com/Mauler125/r5sdk.git
synced 2025-02-09 19:15:03 +01:00
DirtySDK (EA's Dirty Sockets library) will be used for the LiveAPI implementation, and depends on: EABase, EAThread.
90 lines
2.1 KiB
C
90 lines
2.1 KiB
C
/*H*******************************************************************/
|
|
/*!
|
|
\File cryptdef.h
|
|
|
|
\Description
|
|
Common definitions for Crypt modules
|
|
|
|
\Copyright
|
|
Copyright (c) Electronic Arts 2013
|
|
|
|
\Version 1.0 11/19/2013 (jbrookes) First Version
|
|
*/
|
|
/*******************************************************************H*/
|
|
|
|
#ifndef _cryptdef_h
|
|
#define _cryptdef_h
|
|
|
|
/*!
|
|
\Moduledef CryptDef CryptDef
|
|
\Modulemember Crypt
|
|
*/
|
|
//@{
|
|
|
|
/*** Include files ***************************************************/
|
|
|
|
#include "DirtySDK/platform.h"
|
|
#include "DirtySDK/crypt/cryptbn.h"
|
|
|
|
/*** Defines *********************************************************/
|
|
|
|
/*** Macros **********************************************************/
|
|
|
|
/*** Type Definitions ************************************************/
|
|
|
|
//! a binary large object, such as a modulus or exponent
|
|
typedef struct CryptBinaryObjT
|
|
{
|
|
uint8_t *pObjData;
|
|
int32_t iObjSize;
|
|
} CryptBinaryObjT;
|
|
|
|
//! used for the point calculations that are used for elliptic curve crypto
|
|
typedef struct CryptEccPointT
|
|
{
|
|
CryptBnT X;
|
|
CryptBnT Y;
|
|
} CryptEccPointT;
|
|
|
|
//! curve supported groups as per: https://www.iana.org/assignments/tls-parameters/tls-parameters.xhtml#tls-parameters-8
|
|
typedef enum CryptCurveE
|
|
{
|
|
CRYPTCURVE_UNASSIGNED,
|
|
CRYPTCURVE_SECT163K1,
|
|
CRYPTCURVE_SECT163R1,
|
|
CRYPTCURVE_SECT163R2,
|
|
CRYPTCURVE_SECT193R1,
|
|
CRYPTCURVE_SECT193R2,
|
|
CRYPTCURVE_SECT233K1,
|
|
CRYPTCURVE_SECT233R1,
|
|
CRYPTCURVE_SECT239K1,
|
|
CRYPTCURVE_SECT283K1,
|
|
CRYPTCURVE_SECT283R1,
|
|
CRYPTCURVE_SECT409K1,
|
|
CRYPTCURVE_SECT409R1,
|
|
CRYPTCURVE_SECT571K1,
|
|
CRYPTCURVE_SECT571R1,
|
|
CRYPTCURVE_SECP160K1,
|
|
CRYPTCURVE_SECP160R1,
|
|
CRYPTCURVE_SECP160R2,
|
|
CRYPTCURVE_SECP192K1,
|
|
CRYPTCURVE_SECP192R1,
|
|
CRYPTCURVE_SECP224K1,
|
|
CRYPTCURVE_SECP224R1,
|
|
CRYPTCURVE_SECP256K1,
|
|
CRYPTCURVE_SECP256R1,
|
|
CRYPTCURVE_SECP384R1,
|
|
CRYPTCURVE_SECP521R1,
|
|
CRYPTCURVE_BRAINPOOLP256R1,
|
|
CRYPTCURVE_BRAINPOOLP384R1,
|
|
CRYPTCURVE_BRAINPOOLP512R1,
|
|
CRYPTCURVE_X25519,
|
|
CRYPTCURVE_X448,
|
|
CRYPTCURVE_MAX = CRYPTCURVE_X448
|
|
} CryptCurveE;
|
|
|
|
//@}
|
|
|
|
#endif // _cryptdef_h
|
|
|