...
Package twofish
Overview ▹
Index ▹
Constants
BlockSize is the constant block size of Twofish.
const BlockSize = 16
type Cipher ¶
A Cipher is an instance of Twofish encryption using a particular key.
type Cipher struct {
// contains filtered or unexported fields
}
func NewCipher ¶
func NewCipher(key []byte) (*Cipher, error)
NewCipher creates and returns a Cipher. The key argument should be the Twofish key, 16, 24 or 32 bytes.
func (*Cipher) BlockSize ¶
func (c *Cipher) BlockSize() int
BlockSize returns the Twofish block size, 16 bytes.
func (*Cipher) Decrypt ¶
func (c *Cipher) Decrypt(dst, src []byte)
Decrypt decrypts a 16-byte block from src to dst, which may overlap.
func (*Cipher) Encrypt ¶
func (c *Cipher) Encrypt(dst, src []byte)
Encrypt encrypts a 16-byte block from src to dst, which may overlap. Note that for amounts of data larger than a block, it is not safe to just call Encrypt on successive blocks; instead, use an encryption mode like CBC (see crypto/cipher/cbc.go).
type KeySizeError ¶
type KeySizeError int
func (KeySizeError) Error ¶
func (k KeySizeError) Error() string