Go参考手册
加密 | crypto
crypto/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
加密 | crypto相关
Go 是一种编译型语言,它结合了解释型语言的游刃有余,动态类型语言的开发效率,以及静态类型的安全性。它也打算成为现代的,支持网络与多核计算的语言。要满足这些目标,需要解决一些语言上的问题:一个富有表达能力但轻量级的类型系统,并发与垃圾回收机制,严格的依赖规范等等。这些无法通过库或工具解决好,因此Go也就应运而生了。
主页 | https://golang.org/ |
源码 | https://go.googlesource.com/go |
发布版本 | 1.9.2 |