The ARCFOUR stream cipher. More...
#include "config.h"
#include <string.h>
Go to the source code of this file.
Data Structures | |
struct | arc4_context |
ARC4 context structure. More... | |
Functions | |
void | arc4_setup (arc4_context *ctx, const unsigned char *key, unsigned int keylen) |
ARC4 key schedule. | |
int | arc4_crypt (arc4_context *ctx, size_t length, const unsigned char *input, unsigned char *output) |
ARC4 cipher function. | |
int | arc4_self_test (int verbose) |
Checkup routine. |
The ARCFOUR stream cipher.
Copyright (C) 2006-2013, Brainspark B.V.
This file is part of PolarSSL (http://www.polarssl.org) Lead Maintainer: Paul Bakker <polarssl_maintainer at polarssl.org>
All rights reserved.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
Definition in file arc4.h.
int arc4_crypt | ( | arc4_context * | ctx, | |
size_t | length, | |||
const unsigned char * | input, | |||
unsigned char * | output | |||
) |
ARC4 cipher function.
ctx | ARC4 context | |
length | length of the input data | |
input | buffer holding the input data | |
output | buffer for the output data |
Definition at line 71 of file arc4.c.
References arc4_context::m, arc4_context::x, and arc4_context::y.
Referenced by arc4_crypt_stream_wrap(), arc4_self_test(), pkcs12_pbe_sha1_rc4_128(), and test_suite_arc4_crypt().
int arc4_self_test | ( | int | verbose | ) |
Checkup routine.
Definition at line 136 of file arc4.c.
References arc4_crypt(), arc4_setup(), arc4_test_ct, arc4_test_key, and arc4_test_pt.
Referenced by test_suite_arc4_selftest().
void arc4_setup | ( | arc4_context * | ctx, | |
const unsigned char * | key, | |||
unsigned int | keylen | |||
) |
ARC4 key schedule.
ctx | ARC4 context to be initialized | |
key | the secret key | |
keylen | length of the key, in bytes |
Definition at line 42 of file arc4.c.
References arc4_context::m, arc4_context::x, and arc4_context::y.
Referenced by arc4_self_test(), arc4_setkey_wrap(), pkcs12_pbe_sha1_rc4_128(), and test_suite_arc4_crypt().