Package rc4


Package rc4 implements RC4 encryption, as defined in Bruce Schneier's Applied Cryptography.

RC4 is cryptographically broken and should not be used for secure applications.


Package files

rc4.go rc4_asm.go

type CipherSource

A Cipher is an instance of RC4 using a particular key.

type Cipher struct {
        // contains filtered or unexported fields

func NewCipherSource

func NewCipher(key []byte) (*Cipher, error)

NewCipher creates and returns a new Cipher. The key argument should be the RC4 key, at least 1 byte and at most 256 bytes.

func (*Cipher) ResetSource

func (c *Cipher) Reset()

Reset zeros the key data so that it will no longer appear in the process's memory.

func (*Cipher) XORKeyStreamSource

func (c *Cipher) XORKeyStream(dst, src []byte)

XORKeyStream sets dst to the result of XORing src with the key stream. Dst and src must overlap entirely or not at all.

type KeySizeErrorSource

type KeySizeError int

func (KeySizeError) ErrorSource

func (k KeySizeError) Error() string

© Google, Inc.
Licensed under the Creative Commons Attribution License 3.0.