...
Package aes
Package aes implements AES encryption (formerly Rijndael), as defined in
U.S. Federal Information Processing Standards Publication 197.
The AES operations in this package are not implemented using constant-time algorithms.
An exception is when running on systems with enabled hardware support for AES
that makes these operations constant-time. Examples include amd64 systems using AES-NI
extensions and s390x systems using Message-Security-Assist extensions.
On such systems, when the result of NewCipher is passed to cipher.NewGCM,
the GHASH operation used by GCM is also constant-time.
In the call graph viewer below, each node
is a function belonging to this package
and its children are the functions it
calls—perhaps dynamically.
The root nodes are the entry points of the
package: functions that may be called from
outside the package.
There may be non-exported or anonymous
functions among them if they are called
dynamically from another package.
Click a node to visit that function's source code.
From there you can visit its callers by
clicking its declaring func
token.
Functions may be omitted if they were
determined to be unreachable in the
particular programs or tests that were
analyzed.
Constants
The AES block size in bytes.
const BlockSize = 16
func NewCipher(key []byte) (cipher.Block, error)
NewCipher creates and returns a new cipher.Block.
The key argument should be the AES key,
either 16, 24, or 32 bytes to select
AES-128, AES-192, or AES-256.
type KeySizeError int
func (KeySizeError) Error
¶
func (k KeySizeError) Error() string