在线文档教程

crypto/aes

aes包

  • import "crypto/aes"

  • 概述

  • 索引

概述

如美国联邦信息处理标准出版物197中所定义的,aes实现 AES 加密(以前称为 Rijndael)。

这个包中的 AES 操作不是使用恒定时间算法实现的。在支持 AES 的硬件支持的系统上运行时会有一个例外,这些操作会使这些操作保持恒定时间。例子包括使用 AES-NI 扩展的 amd64 系统和使用 Message-Security-Assist 扩展的 s390x 系统。在这样的系统中,当 NewCipher 的结果传递给 cipher.NewGCM 时,GCM 使用的 GHASH 操作也是恒定的。

索引

  • Constants

  • func NewCipher(key []byte) (cipher.Block, error)

  • type KeySizeError

  • func (k KeySizeError) Error() string

文件包

aes_gcm.go block.go cipher.go cipher_amd64.go const.go modes.go

常量

AES块大小(以字节为单位)。

const BlockSize = 16

func NewCipher(查看源代码)

func NewCipher(key []byte) (cipher.Block, error)

NewCiphe r创建并返回一个新的 cipher.Block。关键参数应该是AES密钥,16,24或32个字节来选择 AES-128,AES-192 或 AES-256。

type KeySizeError(查看源代码)

type KeySizeError int

func (KeySizeError) Error(查看源代码)

func (k KeySizeError) Error() string