TrustCore SDK NanoCrypto API reference  version 7.0
rc2algo.h
Go to the documentation of this file.
1 /*
2  * rc2algo.h
3  *
4  * RC2 Algorithm
5  *
6  * Copyright 2019-2024 DigiCert, Inc. All Rights Reserved.
7  * Proprietary and Confidential Material.
8  *
9  */
10 
28 /*------------------------------------------------------------------*/
29 
30 #ifndef __RC2ALGO_H__
31 #define __RC2ALGO_H__
32 
33 #ifdef __cplusplus
34 extern "C" {
35 #endif
36 
37 #ifdef __ENABLE_ARC2_CIPHERS__
38 
97 MOC_EXTERN BulkCtx CreateRC2Ctx(MOC_SYM(hwAccelDescr hwAccelCtx) ubyte* keyMaterial, sbyte4 keyLength, sbyte4 encrypt);
98 
139 MOC_EXTERN BulkCtx CreateRC2Ctx2(MOC_SYM(hwAccelDescr hwAccelCtx) ubyte* keyMaterial, sbyte4 keyLength, sbyte4 effectiveBits);
140 
182 MOC_EXTERN MSTATUS DeleteRC2Ctx(MOC_SYM(hwAccelDescr hwAccelCtx) BulkCtx *ctx);
183 
230 MOC_EXTERN MSTATUS DoRC2(MOC_SYM(hwAccelDescr hwAccelCtx) BulkCtx ctx, ubyte* data, sbyte4 dataLength, sbyte4 encrypt, ubyte* iv);
231 
261 MOC_EXTERN MSTATUS CloneRC2Ctx(
262  MOC_SYM(hwAccelDescr hwAccelCtx) BulkCtx pCtx, BulkCtx *ppNewCtx);
263 
264 #endif
265 
266 #ifdef __cplusplus
267 }
268 #endif
269 
270 
271 #endif
MOC_EXTERN MSTATUS DeleteRC2Ctx(MOC_SYM(hwAccelDescr hwAccelCtx) BulkCtx *ctx)
Delete RC2 context data structure.
MOC_EXTERN MSTATUS CloneRC2Ctx(MOC_SYM(hwAccelDescr hwAccelCtx) BulkCtx pCtx, BulkCtx *ppNewCtx)
Clone an existing RC2 context.
MOC_EXTERN MSTATUS DoRC2(MOC_SYM(hwAccelDescr hwAccelCtx) BulkCtx ctx, ubyte *data, sbyte4 dataLength, sbyte4 encrypt, ubyte *iv)
RC2-encrypt or RC2-decrypt a data buffer.
MOC_EXTERN BulkCtx CreateRC2Ctx(MOC_SYM(hwAccelDescr hwAccelCtx) ubyte *keyMaterial, sbyte4 keyLength, sbyte4 encrypt)
Get a new RC2 context data structure and prepare the key schedule.
MOC_EXTERN BulkCtx CreateRC2Ctx2(MOC_SYM(hwAccelDescr hwAccelCtx) ubyte *keyMaterial, sbyte4 keyLength, sbyte4 effectiveBits)
Get a new RC2 context data structure and prepare the key schedule with arbitrary effective bits...