mbed TLS  Version 2.4.1
SSL/TLS Library for the Embedded Space
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
arc4.h File Reference

Data Structures

struct  mbedtls_arc4_context
 ARC4 context structure. More...
 

Functions

void mbedtls_arc4_init (mbedtls_arc4_context *ctx)
 Initialize ARC4 context. More...
 
void mbedtls_arc4_free (mbedtls_arc4_context *ctx)
 Clear ARC4 context. More...
 
void mbedtls_arc4_setup (mbedtls_arc4_context *ctx, const unsigned char *key, unsigned int keylen)
 ARC4 key schedule. More...
 
int mbedtls_arc4_crypt (mbedtls_arc4_context *ctx, size_t length, const unsigned char *input, unsigned char *output)
 ARC4 cipher function. More...
 
int mbedtls_arc4_self_test (int verbose)
 Checkup routine. More...
 

Description

The ARCFOUR stream cipher.

Copyright (C) 2006-2015, ARM Limited, All Rights Reserved SPDX-License-Identifier: Apache-2.0

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

This file is part of mbed TLS (https://tls.mbed.org)


Data Structure Documentation

struct mbedtls_arc4_context

ARC4 context structure.

Data Fields
unsigned char m[256]

permutation table

int x

permutation index

int y

permutation index

Function Documentation

int mbedtls_arc4_crypt ( mbedtls_arc4_context ctx,
size_t  length,
const unsigned char *  input,
unsigned char *  output 
)

ARC4 cipher function.

Parameters
ctxARC4 context
lengthlength of the input data
inputbuffer holding the input data
outputbuffer for the output data
Returns
0 if successful
void mbedtls_arc4_free ( mbedtls_arc4_context ctx)

Clear ARC4 context.

Parameters
ctxARC4 context to be cleared
void mbedtls_arc4_init ( mbedtls_arc4_context ctx)

Initialize ARC4 context.

Parameters
ctxARC4 context to be initialized
int mbedtls_arc4_self_test ( int  verbose)

Checkup routine.

Returns
0 if successful, or 1 if the test failed
void mbedtls_arc4_setup ( mbedtls_arc4_context ctx,
const unsigned char *  key,
unsigned int  keylen 
)

ARC4 key schedule.

Parameters
ctxARC4 context to be setup
keythe secret key
keylenlength of the key, in bytes