import "crypto/aes"
このパッケージは米国連邦情報処理標準(FIPS)刊行物197で定義されたAES暗号(以前はRijndael)を実装しています。
パッケージファイル
block.go cipher.go const.go
定数
AESのブロックのバイトサイズ。
const BlockSize = 16
Cipher型
Cipherは、特定のキーを使用するAES暗号のインスタンスです。
type Cipher struct {
// contains unexported fields
}
NewCipher関数
func NewCipher(key []byte) (*Cipher, os.Error)
NewCipherは、新しいCipherを作成して返します。 パラメータkeyにはAESキー(AES-128、AES-192、AES-256のいずれか)を指定する必要があります。
(*Cipher) BlockSize関数
func (c *Cipher) BlockSize() int
BlockSizeは、AESのブロックサイズである16を返します。この値は、パッケージ”crypto/block”のCipherインタフェースを満たしている必要があります。
(*Cipher) Decrypt関数
func (c *Cipher) Decrypt(src, dst []byte)
Decryptは、16バイトのsrcバッファを鍵kで復号化し、結果をdstに格納します。
(*Cipher) Encrypt関数
func (c *Cipher) Encrypt(src, dst []byte)
Encryptは、16バイトのsrcバッファを鍵kで暗号化し、結果をdstに格納します。注意すべき点は、データ量がブロックサイズより大きいときに、連続したブロックでEncryptを呼び出すのは安全ではありません。代わりにCBCのような暗号化モードを使用してください。(crypto/block/cbc.goを参照)
(*Cipher) Reset関数
func (c *Cipher) Reset()
Resetは、プロセスのメモリ上から消去するために鍵データをゼロ埋めします。
KeySizeError型
type KeySizeError int
(KeySizeError) String関数
func (k KeySizeError) String() string
Trackback URL
Comments