mirror of
https://github.com/9fans/plan9port.git
synced 2025-01-12 11:10:07 +00:00
d32deab17b
Suggested by G. Brandon Robinson.
55 lines
1.1 KiB
Groff
55 lines
1.1 KiB
Groff
.TH RC4 3
|
|
.SH NAME
|
|
setupRC4state, rc4, rc4skip, rc4back - alleged rc4 encryption
|
|
.SH SYNOPSIS
|
|
.B #include <u.h>
|
|
.br
|
|
.B #include <libc.h>
|
|
.br
|
|
.B #include <mp.h>
|
|
.br
|
|
.B #include <libsec.h>
|
|
.PP
|
|
.B
|
|
void setupRC4state(RC4state *s, uchar *seed, int slen)
|
|
.PP
|
|
.B
|
|
void rc4(RC4state *s, uchar *data, int dlen)
|
|
.PP
|
|
.B
|
|
void rc4skip(RC4state *s, int nbytes)
|
|
.PP
|
|
.B
|
|
void rc4back(RC4state *s, int nbytes)
|
|
.SH DESCRIPTION
|
|
.PP
|
|
This is an algorithm alleged to be Rivest's RC4 encryption function. It is
|
|
a pseudo-random number generator with a 256 byte state and a long
|
|
cycle. The input buffer is XOR'd with the output of the
|
|
generator both to encrypt and to decrypt. The seed, entered
|
|
using
|
|
.IR setupRC4state ,
|
|
can be any length. The generator can be run forward using
|
|
.IR rc4 ,
|
|
skip over bytes using
|
|
.I rc4skip
|
|
to account lost transmissions,
|
|
or run backwards using
|
|
.I rc4back
|
|
to cover retransmitted data.
|
|
The
|
|
.I RC4state
|
|
structure keeps track of the algorithm.
|
|
.SH SOURCE
|
|
.B \*9/src/libsec
|
|
.SH SEE ALSO
|
|
.MR mp (3) ,
|
|
.MR aes (3) ,
|
|
.MR blowfish (3) ,
|
|
.MR des (3) ,
|
|
.MR dsa (3) ,
|
|
.MR elgamal (3) ,
|
|
.MR rsa (3) ,
|
|
.MR sechash (3) ,
|
|
.MR prime (3) ,
|
|
.MR rand (3)
|