files
kolibrios/programs/develop/ktcc/libc.obj/include/cryptal/arcfour.h
Andrew f5ddbaa599
Some checks failed
Build system / Check kernel codestyle (pull_request) Successful in 22s
Build system / Build (pull_request) Failing after 26s
develop/ktcc: Post-SVN tidy
- Move source code from `trunk` into program root directory.
- Update build files and include paths.
- Note: Line endings standardised from `CRLF` > `LF`, so best to view diffs with whitespace changes hidden.
2025-05-24 12:03:37 +01:00

31 lines
1.2 KiB
C

/*********************************************************************
* Filename: arcfour.h
* Author: Brad Conte (brad AT bradconte.com)
* Copyright:
* Disclaimer: This code is presented "as is" without any guarantees.
* Details: Defines the API for the corresponding ARCFOUR implementation.
*********************************************************************/
#ifndef ARCFOUR_H
#define ARCFOUR_H
/*************************** HEADER FILES ***************************/
#include <stddef.h>
/**************************** DATA TYPES ****************************/
typedef unsigned char BYTE; // 8-bit byte
/*********************** FUNCTION DECLARATIONS **********************/
// Input: state - the state used to generate the keystream
// key - Key to use to initialize the state
// len - length of key in bytes (valid lenth is 1 to 256)
void arcfour_key_setup(BYTE state[], const BYTE key[], int len);
// Pseudo-Random Generator Algorithm
// Input: state - the state used to generate the keystream
// out - Must be allocated to be of at least "len" length
// len - number of bytes to generate
void arcfour_generate_stream(BYTE state[], BYTE out[], size_t len);
#endif // ARCFOUR_H