A Cipher is an instance of RC4 using a particular key.
type Cipher struct {
// contains filtered or unexported fields
}
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 (c *Cipher) Reset()
Reset zeros the key data so that it will no longer appear in the process's memory.
func (c *Cipher) XORKeyStream(dst, src []byte)
XORKeyStream sets dst to the result of XORing src with the key stream. Dst and src may be the same slice but otherwise should not overlap.
type KeySizeError int
func (k KeySizeError) Error() string
RC4 is in common use but has design weaknesses that make it a poor choice for new protocols.