Documentation ¶
Index ¶
- Variables
- func AesECBGenerateKey(key []byte) (genKey []byte)
- func BlockDecrypt(block cipher.Block, data []byte, opt IOption) ([]byte, error)
- func BlockEncrypt(block cipher.Block, data []byte, opt IOption) ([]byte, error)
- type Config
- type Cryptobin
- func (this Cryptobin) Aes() Cryptobin
- func (this Cryptobin) AesCFB() Cryptobin
- func (this Cryptobin) AesECB() Cryptobin
- func (this Cryptobin) Anubis() Cryptobin
- func (this Cryptobin) AppendError(err ...error) Cryptobin
- func (this Cryptobin) Aria() Cryptobin
- func (this Cryptobin) BC() Cryptobin
- func (this Cryptobin) Blowfish(salt ...string) Cryptobin
- func (this Cryptobin) CBC() Cryptobin
- func (this Cryptobin) CCM(nonce string, additional ...string) Cryptobin
- func (this Cryptobin) CFB() Cryptobin
- func (this Cryptobin) CFB1() Cryptobin
- func (this Cryptobin) CFB128() Cryptobin
- func (this Cryptobin) CFB16() Cryptobin
- func (this Cryptobin) CFB32() Cryptobin
- func (this Cryptobin) CFB64() Cryptobin
- func (this Cryptobin) CFB8() Cryptobin
- func (this Cryptobin) CTR() Cryptobin
- func (this Cryptobin) Camellia() Cryptobin
- func (this Cryptobin) Cast256() Cryptobin
- func (this Cryptobin) Cast5() Cryptobin
- func (this Cryptobin) Chacha20(nonce string, counter ...uint32) Cryptobin
- func (this Cryptobin) Chacha20poly1305(nonce string, additional string) Cryptobin
- func (this Cryptobin) Chacha20poly1305X(nonce string, additional string) Cryptobin
- func (this Cryptobin) Clefia() Cryptobin
- func (this Cryptobin) Crypton1() Cryptobin
- func (this Cryptobin) Decrypt() Cryptobin
- func (this Cryptobin) Des() Cryptobin
- func (this Cryptobin) E2() Cryptobin
- func (this Cryptobin) EAX(nonce string, additional ...string) Cryptobin
- func (this Cryptobin) ECB() Cryptobin
- func (this Cryptobin) Encrypt() Cryptobin
- func (this Cryptobin) Enigma() Cryptobin
- func (this Cryptobin) Error() error
- func (this Cryptobin) FromBase64String(data string) Cryptobin
- func (this Cryptobin) FromBytes(data []byte) Cryptobin
- func (this Cryptobin) FromHexString(data string) Cryptobin
- func (this Cryptobin) FromString(data string) Cryptobin
- func (this Cryptobin) FuncDecrypt(fn func(Cryptobin) Cryptobin) Cryptobin
- func (this Cryptobin) FuncEncrypt(fn func(Cryptobin) Cryptobin) Cryptobin
- func (this Cryptobin) G3413CBC() Cryptobin
- func (this Cryptobin) G3413CFB(bitBlockSize ...int) Cryptobin
- func (this Cryptobin) G3413CTR(bitBlockSize ...int) Cryptobin
- func (this Cryptobin) G3413OFB() Cryptobin
- func (this Cryptobin) GCM(nonce string, additional ...string) Cryptobin
- func (this Cryptobin) GOFB() Cryptobin
- func (this Cryptobin) GetConfig() *tool.Config
- func (this Cryptobin) GetData() []byte
- func (this Cryptobin) GetErrors() []error
- func (this Cryptobin) GetIv() []byte
- func (this Cryptobin) GetKey() []byte
- func (this Cryptobin) GetMode() Mode
- func (this Cryptobin) GetMultiple() Multiple
- func (this Cryptobin) GetOneConfig(key string) any
- func (this Cryptobin) GetPadding() Padding
- func (this Cryptobin) GetParsedData() []byte
- func (this Cryptobin) Gost(sbox any) Cryptobin
- func (this Cryptobin) HCTR(tweak, hkey []byte) Cryptobin
- func (this Cryptobin) Hight() Cryptobin
- func (this Cryptobin) ISO10126Padding() Cryptobin
- func (this Cryptobin) ISO7816_4Padding() Cryptobin
- func (this Cryptobin) ISO97971Padding() Cryptobin
- func (this Cryptobin) Idea() Cryptobin
- func (this Cryptobin) Kasumi() Cryptobin
- func (this Cryptobin) Khazad() Cryptobin
- func (this Cryptobin) Kseed() Cryptobin
- func (this Cryptobin) Kuznyechik() Cryptobin
- func (this Cryptobin) Lea() Cryptobin
- func (this Cryptobin) Loki97() Cryptobin
- func (this Cryptobin) MGM(nonce string, additional ...string) Cryptobin
- func (this Cryptobin) Magenta() Cryptobin
- func (this Cryptobin) Mars() Cryptobin
- func (this Cryptobin) Mars2() Cryptobin
- func (this Cryptobin) Misty1() Cryptobin
- func (this Cryptobin) ModeBy(mode Mode, cfg ...map[string]any) Cryptobin
- func (this Cryptobin) Multi2(rounds int32) Cryptobin
- func (this Cryptobin) MultipleBy(multiple Multiple, cfg ...map[string]any) Cryptobin
- func (this Cryptobin) NCFB() Cryptobin
- func (this Cryptobin) NOFB() Cryptobin
- func (this Cryptobin) NoPadding() Cryptobin
- func (this Cryptobin) NoParse() Cryptobin
- func (this Cryptobin) Noekeon() Cryptobin
- func (this Cryptobin) OCB(nonce string, additional ...string) Cryptobin
- func (this Cryptobin) OCFB(resync bool) Cryptobin
- func (this Cryptobin) OFB() Cryptobin
- func (this Cryptobin) OFB8() Cryptobin
- func (this Cryptobin) OnError(fn ErrorFunc) Cryptobin
- func (this Cryptobin) PBOC2Padding() Cryptobin
- func (this Cryptobin) PCBC() Cryptobin
- func (this Cryptobin) PKCS1Padding(bt ...string) Cryptobin
- func (this Cryptobin) PKCS5Padding() Cryptobin
- func (this Cryptobin) PKCS7Padding() Cryptobin
- func (this Cryptobin) PaddingBy(padding Padding, cfg ...map[string]any) Cryptobin
- func (this Cryptobin) Panama() Cryptobin
- func (this Cryptobin) Present() Cryptobin
- func (this Cryptobin) PutConfig(key string, value any) Cryptobin
- func (this Cryptobin) RC2() Cryptobin
- func (this Cryptobin) RC4() Cryptobin
- func (this Cryptobin) RC4MD5() Cryptobin
- func (this Cryptobin) RC5(wordSize, rounds uint) Cryptobin
- func (this Cryptobin) RC6() Cryptobin
- func (this Cryptobin) Rijndael(blockSize int) Cryptobin
- func (this Cryptobin) Rijndael128() Cryptobin
- func (this Cryptobin) Rijndael192() Cryptobin
- func (this Cryptobin) Rijndael256() Cryptobin
- func (this Cryptobin) SM4() Cryptobin
- func (this Cryptobin) Safer(typ string, rounds int32) Cryptobin
- func (this Cryptobin) Saferplus() Cryptobin
- func (this Cryptobin) Salsa20(nonce string) Cryptobin
- func (this Cryptobin) Seed() Cryptobin
- func (this Cryptobin) Serpent() Cryptobin
- func (this Cryptobin) SetConfig(data map[string]any) Cryptobin
- func (this Cryptobin) SetData(data string) Cryptobin
- func (this Cryptobin) SetIv(data string) Cryptobin
- func (this Cryptobin) SetKey(data string) Cryptobin
- func (this Cryptobin) SetMode(mode Mode, cfg map[string]any) Cryptobin
- func (this Cryptobin) SetMultiple(multiple Multiple, cfg map[string]any) Cryptobin
- func (this Cryptobin) SetPadding(padding Padding, cfg map[string]any) Cryptobin
- func (this Cryptobin) SetParsedData(data string) Cryptobin
- func (this Cryptobin) Skipjack() Cryptobin
- func (this Cryptobin) Square() Cryptobin
- func (this Cryptobin) String() string
- func (this Cryptobin) TBCPadding() Cryptobin
- func (this Cryptobin) Tea(rounds ...int) Cryptobin
- func (this Cryptobin) ToBase64String() string
- func (this Cryptobin) ToBytes() []byte
- func (this Cryptobin) ToHexString() string
- func (this Cryptobin) ToString() string
- func (this Cryptobin) TripleDes() Cryptobin
- func (this Cryptobin) Trivium() Cryptobin
- func (this Cryptobin) Twine() Cryptobin
- func (this Cryptobin) TwoDes() Cryptobin
- func (this Cryptobin) Twofish() Cryptobin
- func (this Cryptobin) Wake() Cryptobin
- func (this Cryptobin) WithConfig(config *tool.Config) Cryptobin
- func (this Cryptobin) WithData(data []byte) Cryptobin
- func (this Cryptobin) WithErrors(errs []error) Cryptobin
- func (this Cryptobin) WithIv(iv []byte) Cryptobin
- func (this Cryptobin) WithKey(key []byte) Cryptobin
- func (this Cryptobin) WithMode(mode Mode) Cryptobin
- func (this Cryptobin) WithMultiple(multiple Multiple) Cryptobin
- func (this Cryptobin) WithPadding(padding Padding) Cryptobin
- func (this Cryptobin) WithParsedData(data []byte) Cryptobin
- func (this Cryptobin) Wrap() Cryptobin
- func (this Cryptobin) X923Padding() Cryptobin
- func (this Cryptobin) Xtea() Cryptobin
- func (this Cryptobin) Xts(cipher string, sectorNum uint64) Cryptobin
- func (this Cryptobin) ZeroPadding() Cryptobin
- type DataName
- type DataSet
- func (this *DataSet[N, M]) Add(name N, data func() M) *DataSet[N, M]
- func (this *DataSet[N, M]) All() map[N]func() M
- func (this *DataSet[N, M]) Clean()
- func (this *DataSet[N, M]) Get(name N) func() M
- func (this *DataSet[N, M]) Has(name N) bool
- func (this *DataSet[N, M]) Len() int
- func (this *DataSet[N, M]) Names() []N
- func (this *DataSet[N, M]) Remove(name N) *DataSet[N, M]
- type EncryptAes
- type EncryptAesCFB
- type EncryptAesECB
- type EncryptAnubis
- type EncryptAria
- type EncryptBlowfish
- type EncryptCamellia
- type EncryptCast256
- type EncryptCast5
- type EncryptChacha20
- type EncryptChacha20poly1305
- type EncryptChacha20poly1305X
- type EncryptClefia
- type EncryptCrypton1
- type EncryptDes
- type EncryptE2
- type EncryptEnigma
- type EncryptGost
- type EncryptHight
- type EncryptIdea
- type EncryptKasumi
- type EncryptKhazad
- type EncryptKseed
- type EncryptKuznyechik
- type EncryptLea
- type EncryptLoki97
- type EncryptMagenta
- type EncryptMars
- type EncryptMars2
- type EncryptMisty1
- type EncryptMulti2
- type EncryptNoekeon
- type EncryptPanama
- type EncryptPresent
- type EncryptRC2
- type EncryptRC4
- type EncryptRC4MD5
- type EncryptRC5
- type EncryptRC6
- type EncryptRijndael
- type EncryptRijndael128
- type EncryptRijndael192
- type EncryptRijndael256
- type EncryptSM4
- type EncryptSafer
- type EncryptSaferplus
- type EncryptSalsa20
- type EncryptSeed
- type EncryptSerpent
- type EncryptSkipjack
- type EncryptSquare
- type EncryptTea
- type EncryptTripleDes
- type EncryptTrivium
- type EncryptTwine
- type EncryptTwoDes
- type EncryptTwofish
- type EncryptWake
- type EncryptXtea
- type EncryptXts
- type ErrorFunc
- type IEncrypt
- type IMode
- type IOption
- type IPadding
- type ISO10126Paddinger
- type ISO7816_4Paddinger
- type ISO97971Paddinger
- type Mode
- type ModeBC
- type ModeCBC
- type ModeCCM
- type ModeCFB
- type ModeCFB1
- type ModeCFB16
- type ModeCFB32
- type ModeCFB64
- type ModeCFB8
- type ModeCTR
- type ModeEAX
- type ModeECB
- type ModeG3413CBC
- type ModeG3413CFB
- type ModeG3413CTR
- type ModeG3413OFB
- type ModeGCM
- type ModeGOFB
- type ModeHCTR
- type ModeMGM
- type ModeNCFB
- type ModeNOFB
- type ModeOCB
- type ModeOCFB
- type ModeOFB
- type ModeOFB8
- type ModePCBC
- type ModeWrap
- type Multiple
- type NoPaddinger
- type PBOC2Paddinger
- type PKCS1Paddinger
- type PKCS5Paddinger
- type PKCS7Paddinger
- type Padding
- type TBCPaddinger
- type TypeName
- type TypeSet
- type X923Paddinger
- type ZeroPaddinger
Constants ¶
This section is empty.
Variables ¶
var ( AesCFB = TypeMultiple.Generate() AesECB = TypeMultiple.Generate() )
var TypeMode = NewTypeSet[Mode, string](maxMode)
模式 Type Mode
var TypeMultiple = NewTypeSet[Multiple, string](maxMultiple)
类型 Type Multiple
var TypePadding = NewTypeSet[Padding, string](maxPadding)
补码 Type Padding
var UseEncrypt = NewDataSet[Multiple, IEncrypt]()
加密类型 Encrypt Type
var UseMode = NewDataSet[Mode, IMode]()
模式 Encrypt Mode
var UsePadding = NewDataSet[Padding, IPadding]()
补码 Encrypt Padding
Functions ¶
func AesECBGenerateKey ¶ added in v1.0.2025
AesECB key 处理 AesECB Generate Key
func BlockDecrypt ¶ added in v1.0.2001
块解密 Block Decrypt
Types ¶
type Config ¶ added in v1.0.2001
type Config struct {
// contains filtered or unexported fields
}
*
- 配置 / Config *
- @create 2023-3-30
- @author deatil
type Cryptobin ¶
type Cryptobin struct { // 错误 / error list Errors []error // contains filtered or unexported fields }
*
- 对称加密 / Cryptobin *
- @create 2022-3-19
- @author deatil
func (Cryptobin) AesCFB ¶ added in v1.0.2001
特殊的 AesCFB 组合模式 也可以使用: MultipleBy(AesCFB) AesCFB Encrypt type and can use MultipleBy(AesCFB)
func (Cryptobin) AesECB ¶ added in v1.0.2001
特殊的 AesECB 组合模式 也可以使用: MultipleBy(AesECB) AesECB Encrypt type and can use MultipleBy(AesECB)
func (Cryptobin) Anubis ¶ added in v1.0.2038
Anubis The key argument should be 16, 20, 24, 28, 32, 36, and 40 bytes.
func (Cryptobin) AppendError ¶ added in v1.0.1026
添加错误 Append Error
func (Cryptobin) Camellia ¶ added in v1.0.2013
Camellia The key argument should be 16, 24, or 32 bytes.
func (Cryptobin) Chacha20poly1305 ¶
Chacha20poly1305 nonce is 12 bytes
func (Cryptobin) Chacha20poly1305X ¶ added in v1.0.1031
Chacha20poly1305X nonce is 24 bytes
func (Cryptobin) Crypton1 ¶ added in v1.0.2038
Crypton1 The key argument should be 16, 24, 32 bytes.
func (Cryptobin) FromBase64String ¶
设置数据 Base64 set data Base64
func (Cryptobin) FromHexString ¶
设置数据 Hex set data Hex
func (Cryptobin) FromString ¶
设置数据字符 set data string
func (Cryptobin) FuncDecrypt ¶
方法解密 Func Decrypt
func (Cryptobin) FuncEncrypt ¶
方法加密 Func Encrypt
func (Cryptobin) GetMultiple ¶
获取加密类型 Get Multiple type
func (Cryptobin) GetOneConfig ¶
获取获取一个配置 Get One Config
func (Cryptobin) GetParsedData ¶
获取解析后的数据 Get ParsedData
func (Cryptobin) Gost ¶ added in v1.0.2018
Gost The key argument should be 32 bytes. sbox is [SboxDESDerivedParamSet | SboxRFC4357TestParamSet | SboxGostR341194CryptoProParamSet | SboxTC26gost28147paramZ | SboxEACParamSet] or set [][]byte data
func (Cryptobin) ISO10126Padding ¶
ISO10126 补码 ISO10126Padding
func (Cryptobin) ISO7816_4Padding ¶
ISO7816_4 补码 ISO7816_4Padding
func (Cryptobin) ISO97971Padding ¶ added in v1.0.1026
ISO97971 补码 ISO97971Padding
func (Cryptobin) Kuznyechik ¶ added in v1.0.2018
Kuznyechik The key argument should be 32 bytes.
func (Cryptobin) MultipleBy ¶ added in v1.0.2001
使用类型
func (Cryptobin) OCB ¶ added in v1.0.2024
OCB OCB nounce size, should be in [0, cipher.block.BlockSize]
func (Cryptobin) PBOC2Padding ¶ added in v1.0.2027
PBOC2 补码 PBOC2Padding
func (Cryptobin) PKCS1Padding ¶
PKCS1 补码 PKCS1Padding
func (Cryptobin) PKCS5Padding ¶
PKCS5 补码 PKCS5Padding
func (Cryptobin) PKCS7Padding ¶
PKCS7 补码 PKCS7Padding
func (Cryptobin) Rijndael ¶ added in v1.0.2041
Rijndael The blockSize argument should be 16, 20, 24, 28 or 32 bytes. The key argument should be 16, 24 or 32 bytes.
func (Cryptobin) Rijndael128 ¶ added in v1.0.2041
Rijndael128 The key argument should be 16, 24 or 32 bytes.
func (Cryptobin) Rijndael192 ¶ added in v1.0.2041
Rijndael192 The key argument should be 16, 24 or 32 bytes.
func (Cryptobin) Rijndael256 ¶ added in v1.0.2041
Rijndael256 The key argument should be 16, 24 or 32 bytes.
func (Cryptobin) Safer ¶ added in v1.0.2038
Safer The typ should be K, SK string. The key argument should be 16, 24, 32 bytes.
func (Cryptobin) SetMultiple ¶ added in v1.0.2001
设置加密类型带参数 set Encrypt multiple with config
func (Cryptobin) SetPadding ¶ added in v1.0.2001
设置补码方式带参数 set padding type with config
func (Cryptobin) SetParsedData ¶ added in v1.0.2001
设置解析后的数据 set parsedData string
func (Cryptobin) ToBase64String ¶
输出 Base64 output Base64 String
func (Cryptobin) WithConfig ¶
设置配置 set config
func (Cryptobin) WithErrors ¶ added in v1.0.1026
设置错误 set error list
func (Cryptobin) WithMultiple ¶
设置加密类型 set Encrypt multiple
func (Cryptobin) WithPadding ¶
设置补码方式 set padding type
func (Cryptobin) WithParsedData ¶
设置解析后的数据 set parsedData bytes
type DataSet ¶ added in v1.0.2001
*
- 数据设置 / Data Set *
- @create 2023-3-31
- @author deatil
func NewDataSet ¶ added in v1.0.2001
构造函数 New DataSet
func (*DataSet[N, M]) All ¶ added in v1.0.2001
func (this *DataSet[N, M]) All() map[N]func() M
获取所有数据 get all data
func (*DataSet[N, M]) Get ¶ added in v1.0.2001
func (this *DataSet[N, M]) Get(name N) func() M
获取数据 get data by name
type EncryptAes ¶ added in v1.0.2001
type EncryptAes struct{}
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 EncryptAesCFB ¶ added in v1.0.2001
type EncryptAesCFB struct{}
type EncryptAesECB ¶ added in v1.0.2001
type EncryptAesECB struct{}
type EncryptAnubis ¶ added in v1.0.2038
type EncryptAnubis struct{}
The key argument should be 16, 20, 24, 28, 32, 36, and 40 bytes.
type EncryptAria ¶ added in v1.0.2013
type EncryptAria struct{}
Aria key is 16, 24, or 32 bytes.
type EncryptBlowfish ¶ added in v1.0.2001
type EncryptBlowfish struct{}
type EncryptCamellia ¶ added in v1.0.2013
type EncryptCamellia struct{}
Camellia key is 16, 24, or 32 bytes.
type EncryptCast256 ¶ added in v1.0.2036
type EncryptCast256 struct{}
Cast256 key is 32 bytes.
type EncryptCast5 ¶ added in v1.0.2001
type EncryptCast5 struct{}
type EncryptChacha20 ¶ added in v1.0.2001
type EncryptChacha20 struct{}
32 bytes key and a 12 or 24 bytes nonce
type EncryptChacha20poly1305 ¶ added in v1.0.2001
type EncryptChacha20poly1305 struct{}
32 bytes key
type EncryptChacha20poly1305X ¶ added in v1.0.2001
type EncryptChacha20poly1305X struct{}
32 bytes key
type EncryptClefia ¶ added in v1.0.2038
type EncryptClefia struct{}
The key argument should be 16, 24, 32 bytes.
type EncryptCrypton1 ¶ added in v1.0.2038
type EncryptCrypton1 struct{}
The key argument should be 16, 24, 32 bytes.
type EncryptDes ¶ added in v1.0.2001
type EncryptDes struct{}
type EncryptE2 ¶ added in v1.0.2038
type EncryptE2 struct{}
The key argument should be 16, 24, 32 bytes.
type EncryptEnigma ¶ added in v1.0.2036
type EncryptEnigma struct{}
Enigma key is 13 bytes.
type EncryptGost ¶ added in v1.0.2018
type EncryptGost struct{}
Gost key is 32 bytes.
type EncryptHight ¶ added in v1.0.2036
type EncryptHight struct{}
The key argument should be 16 bytes.
type EncryptIdea ¶ added in v1.0.2013
type EncryptIdea struct{}
type EncryptKasumi ¶ added in v1.0.2038
type EncryptKasumi struct{}
The key argument should be 16 bytes.
type EncryptKhazad ¶ added in v1.0.2038
type EncryptKhazad struct{}
The key argument should be 16 bytes.
type EncryptKseed ¶ added in v1.0.2038
type EncryptKseed struct{}
The key argument should be 16 bytes.
type EncryptKuznyechik ¶ added in v1.0.2018
type EncryptKuznyechik struct{}
Kuznyechik key is 32 bytes.
type EncryptLea ¶ added in v1.0.2036
type EncryptLea struct{}
The key argument should be 16, 24, 32 bytes.
type EncryptLoki97 ¶ added in v1.0.2035
type EncryptLoki97 struct{}
Loki97 key is 16, 24, 32 bytes.
type EncryptMagenta ¶ added in v1.0.2038
type EncryptMagenta struct{}
The key argument should be 16, 24, 32 bytes.
type EncryptMars ¶ added in v1.0.2036
type EncryptMars struct{}
Mars key is 16, 24, 32 bytes.
type EncryptMars2 ¶ added in v1.0.2039
type EncryptMars2 struct{}
Mars key is 16, 24, 32 bytes.
type EncryptMisty1 ¶ added in v1.0.2054
type EncryptMisty1 struct{}
The key argument should be 16 bytes.
type EncryptMulti2 ¶ added in v1.0.2038
type EncryptMulti2 struct{}
The key argument should be 40 bytes.
type EncryptNoekeon ¶ added in v1.0.2038
type EncryptNoekeon struct{}
The key argument should be 16 bytes.
type EncryptPanama ¶ added in v1.0.2036
type EncryptPanama struct{}
The key argument should be 32 bytes.
type EncryptPresent ¶ added in v1.0.2039
type EncryptPresent struct{}
The key argument should be 16, 20, 24, 28, 32, 36, and 40 bytes.
type EncryptRC2 ¶ added in v1.0.2001
type EncryptRC2 struct{}
type EncryptRC4 ¶ added in v1.0.2001
type EncryptRC4 struct{}
RC4 key, at least 1 byte and at most 256 bytes.
type EncryptRC4MD5 ¶ added in v1.0.2013
type EncryptRC4MD5 struct{}
RC4 key, at least 1 byte and at most 256 bytes.
type EncryptRC5 ¶ added in v1.0.2001
type EncryptRC5 struct{}
type EncryptRC6 ¶ added in v1.0.2033
type EncryptRC6 struct{}
type EncryptRijndael ¶ added in v1.0.2041
type EncryptRijndael struct{}
The key argument should be 16, 24 or 32 bytes.
type EncryptRijndael128 ¶ added in v1.0.2041
type EncryptRijndael128 struct{}
The key argument should be 16, 24 or 32 bytes.
type EncryptRijndael192 ¶ added in v1.0.2041
type EncryptRijndael192 struct{}
The key argument should be 16, 24 or 32 bytes.
type EncryptRijndael256 ¶ added in v1.0.2041
type EncryptRijndael256 struct{}
The key argument should be 16, 24 or 32 bytes.
type EncryptSM4 ¶ added in v1.0.2001
type EncryptSM4 struct{}
type EncryptSafer ¶ added in v1.0.2038
type EncryptSafer struct{}
The key argument should be 16, 24, 32 bytes.
type EncryptSaferplus ¶ added in v1.0.2035
type EncryptSaferplus struct{}
Saferplus key is 8, 16 bytes.
type EncryptSalsa20 ¶ added in v1.0.2013
type EncryptSalsa20 struct{}
Salsa20 key is 32 bytes. nonce is 16 bytes.
type EncryptSeed ¶ added in v1.0.2013
type EncryptSeed struct{}
Seed key is 16 bytes.
type EncryptSerpent ¶ added in v1.0.2018
type EncryptSerpent struct{}
Serpent key is 16, 24, 32 bytes.
type EncryptSkipjack ¶ added in v1.0.2018
type EncryptSkipjack struct{}
Skipjack key is 10 bytes.
type EncryptSquare ¶ added in v1.0.2038
type EncryptSquare struct{}
The key argument should be 32 bytes.
type EncryptTea ¶ added in v1.0.2001
type EncryptTea struct{}
type EncryptTripleDes ¶ added in v1.0.2001
type EncryptTripleDes struct{}
type EncryptTrivium ¶ added in v1.0.2039
type EncryptTrivium struct{}
The key argument should be 10 bytes.
type EncryptTwine ¶ added in v1.0.2054
type EncryptTwine struct{}
The key argument should be 10 or 16 bytes.
type EncryptTwoDes ¶ added in v1.0.2010
type EncryptTwoDes struct{}
type EncryptTwofish ¶ added in v1.0.2001
type EncryptTwofish struct{}
The key argument should be the Twofish key, 16, 24 or 32 bytes.
type EncryptWake ¶ added in v1.0.2036
type EncryptWake struct{}
Wake key is 16 bytes.
type EncryptXtea ¶ added in v1.0.2001
type EncryptXtea struct{}
type EncryptXts ¶ added in v1.0.2001
type EncryptXts struct{}
Sectors must be a multiple of 16 bytes and less than 2²⁴ bytes.
type IEncrypt ¶ added in v1.0.2001
type IEncrypt interface { // 加密 // Encrypt Encrypt([]byte, IOption) ([]byte, error) // 解密 // Decrypt Decrypt([]byte, IOption) ([]byte, error) }
加密接口 Encrypt interface
type IMode ¶ added in v1.0.2001
type IMode interface { // 加密 // Encrypt Encrypt([]byte, cipher.Block, IOption) ([]byte, error) // 解密 // Decrypt Decrypt([]byte, cipher.Block, IOption) ([]byte, error) }
模式接口 Mode interface
type IOption ¶ added in v1.0.2001
type IOption interface { // 密钥 // get Key Key() []byte // 向量 // get Iv Iv() []byte // 加密类型 // get Multiple Multiple() Multiple // 加密模式 // get Mode Mode() Mode // 填充模式 // get Padding Padding() Padding // 额外配置 // get extra Config Config() *tool.Config }
配置接口 config interface
type IPadding ¶ added in v1.0.2001
type IPadding interface { // 补码 // Padding Padding([]byte, int, IOption) []byte // 解密 // UnPadding UnPadding([]byte, IOption) ([]byte, error) }
填充接口 Padding interface
type ISO10126Paddinger ¶ added in v1.0.2001
type ISO10126Paddinger struct{}
type ISO7816_4Paddinger ¶ added in v1.0.2001
type ISO7816_4Paddinger struct{}
type ISO97971Paddinger ¶ added in v1.0.2001
type ISO97971Paddinger struct{}
type ModeBC ¶ added in v1.0.2038
type ModeBC struct{}
type ModeCBC ¶ added in v1.0.2001
type ModeCBC struct{}
type ModeCCM ¶ added in v1.0.2001
type ModeCCM struct{}
type ModeCFB ¶ added in v1.0.2001
type ModeCFB struct{}
type ModeCFB1 ¶ added in v1.0.2006
type ModeCFB1 struct{}
type ModeCFB16 ¶ added in v1.0.2006
type ModeCFB16 struct{}
type ModeCFB32 ¶ added in v1.0.2006
type ModeCFB32 struct{}
type ModeCFB64 ¶ added in v1.0.2006
type ModeCFB64 struct{}
type ModeCFB8 ¶ added in v1.0.2001
type ModeCFB8 struct{}
type ModeCTR ¶ added in v1.0.2001
type ModeCTR struct{}
type ModeEAX ¶ added in v1.0.2024
type ModeEAX struct{}
type ModeECB ¶ added in v1.0.2001
type ModeECB struct{}
type ModeG3413CBC ¶ added in v1.0.2051
type ModeG3413CBC struct{}
type ModeG3413CFB ¶ added in v1.0.2051
type ModeG3413CFB struct{}
type ModeG3413CTR ¶ added in v1.0.2051
type ModeG3413CTR struct{}
type ModeG3413OFB ¶ added in v1.0.2051
type ModeG3413OFB struct{}
type ModeGCM ¶ added in v1.0.2001
type ModeGCM struct{}
type ModeGOFB ¶ added in v1.0.2051
type ModeGOFB struct{}
type ModeHCTR ¶ added in v1.0.2038
type ModeHCTR struct{}
type ModeMGM ¶ added in v1.0.2050
type ModeMGM struct{}
type ModeNCFB ¶ added in v1.0.2035
type ModeNCFB struct{}
type ModeNOFB ¶ added in v1.0.2035
type ModeNOFB struct{}
type ModeOCB ¶ added in v1.0.2024
type ModeOCB struct{}
type ModeOCFB ¶ added in v1.0.2025
type ModeOCFB struct{}
OCFB 模式不需要补码 默认 prefix 放置在结果数据之前 OCFB not need padding and return [prefix + encrypted]
type ModeOFB ¶ added in v1.0.2001
type ModeOFB struct{}
type ModeOFB8 ¶ added in v1.0.2001
type ModeOFB8 struct{}
type ModePCBC ¶ added in v1.0.2007
type ModePCBC struct{}
type ModeWrap ¶ added in v1.0.2054
type ModeWrap struct{}
type Multiple ¶ added in v1.0.1045
type Multiple uint
加密类型 Multiple enum
const ( Aes Multiple = 1 + iota Des TwoDes TripleDes Twofish Blowfish Tea Xtea Cast5 Cast256 RC2 RC4 RC4MD5 RC5 RC6 Idea SM4 Chacha20 Chacha20poly1305 Chacha20poly1305X Xts Salsa20 Seed Aria Camellia Gost Kuznyechik Skipjack Serpent Loki97 Saferplus Mars Mars2 Wake Enigma Hight Lea Panama Square Magenta Kasumi E2 Crypton1 Clefia Safer Noekeon Multi2 Kseed Khazad Anubis Present Trivium Rijndael Rijndael128 Rijndael192 Rijndael256 Twine Misty1 )
type NoPaddinger ¶ added in v1.0.2001
type NoPaddinger struct{}
type PBOC2Paddinger ¶ added in v1.0.2027
type PBOC2Paddinger struct{}
type PKCS1Paddinger ¶ added in v1.0.2001
type PKCS1Paddinger struct{}
type PKCS5Paddinger ¶ added in v1.0.2001
type PKCS5Paddinger struct{}
type PKCS7Paddinger ¶ added in v1.0.2001
type PKCS7Paddinger struct{}
type TBCPaddinger ¶ added in v1.0.2001
type TBCPaddinger struct{}
type TypeSet ¶ added in v1.0.2001
类型数据 Type Set
func NewTypeSet ¶ added in v1.0.2001
构造函数 New TypeSet
type X923Paddinger ¶ added in v1.0.2001
type X923Paddinger struct{}
type ZeroPaddinger ¶ added in v1.0.2001
type ZeroPaddinger struct{}