func AesCtr(text, key, iv []byte) ([]byte, error) {
	if len(iv) < 16 {
		return nil, errors.New("iv length at least 16")
	}
	// 指定加密,解密算法为AES,返回一个AES的Block接口对象
	block, err := aes.NewCipher(key)
	if err != nil {
		return nil, err
	}
	// 指定分组模式
	blockMode := cipher.NewCTR(block, iv)
	// 执行加密,解密操作
	message := make([]byte, len(text))
	blockMode.XORKeyStream(message, text)
	// 返回明文或密文
	return message, nil
}
// AesCtr aes ctr encrypt and decrypt
AesCtr aes ctr encrypt and decrypt
// AesCtr aes ctr encrypt and decrypt
func AesCtr(text, key, iv []byte) ([]byte, error) {
	if len(iv) < 16 {
		return nil, errors.New("iv length at least 16")
	}
	block, err := aes.NewCipher(key)
	if err != nil {
		return nil, err
	}
	blockMode := cipher.NewCTR(block, iv)
	message := make([]byte, len(text))
	blockMode.XORKeyStream(message, text)
	return message, nil
}
func AesCtr ( text , key , iv [ ] byte ) ( [ ] byte , error ) { if len ( iv ) < 16 { return nil , errors . New ( " " ) } block , err := aes . NewCipher ( key ) if err != nil { return nil , err } blockMode := cipher . NewCTR ( block , iv ) message := make ( [ ] byte , len ( text ) ) blockMode . XORKeyStream ( message , text ) return message , nil }
AesCtr aes ctr encrypt and decrypt
AesCtr aes ctr encrypt and decrypt
// 指定加密,解密算法为AES,返回一个AES的Block接口对象 // 指定分组模式 // 执行加密,解密操作 // 返回明文或密文